A. java web
1:B 2:C 3:D 4:C 5:B(<%@ page import="com.rl."%>)
6:C 7:A 8:B 9:D 10:C
11:A 12:A 13:B 14:D 15:B
B. java web工程中,我需要做一个暂时性授权功能,
做这么个设想,在不改变权限模块的情况下,增加一组特殊权限,就是作为执行人的代理处理某些功能的权限和将自身某些功能转交他人代理的功能。
转交功能实现将功能条件写死并生成条件可以存库或者拼url的方式,然后发给代理人。
代理人收到代理请求后,直接通过存库的条件或url进入对应的功能,但是该功能不再提供调整条件的操作,也就是说,用户只能对默认提供的条件产生的结果进行处理,处理完成后,该条件即为失效,或者加上时间戳。
可以参考各种发邮件改密码的功能……
C. java生成webservice 中的message 是什么意思
在调用webService时,有时候需要在SOAP头中插入信息,比如鉴权信息。
下面的例子演示如何设置给WebService设置授权信息。
首先我们需要实现SOAPHandler接口的类,这个类决定了要调用那些Handler,以什么顺序调用。
最后我们需要给WebService的客户端添加HandlerResolver类实例.
默认情况下SOAP头是空的:
<S:Header>
<wsse:Security xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">
<wsse:UsernameToken xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
<wsse:Username>TestUser</wsse:Username>
<wsse:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText">TestPassword</wsse:Password>
</wsse:UsernameToken>
</wsse:Security></S:Header>
如下是SOAPHandler<SOAPMessageContext>的实现,这里有好多方法可以实现,但在这里我们仅需要实现handleMessage()方法。
package cn.outofmemory.ws.example;import java.util.Set;import javax.xml.namespace.QName;import javax.xml.soap.SOAPElement;import javax.xml.soap.SOAPEnvelope;import javax.xml.soap.SOAPHeader;import javax.xml.soap.SOAPMessage;import javax.xml.ws.handler.MessageContext;import javax.xml.ws.handler.soap.SOAPHandler;import javax.xml.ws.handler.soap.SOAPMessageContext;/**
*
* @author outofmemory.cn
*/public class HeaderHandler implements SOAPHandler<SOAPMessageContext> {
public boolean handleMessage(SOAPMessageContext smc) {
Boolean outboundProperty = (Boolean) smc.get(MessageContext.MESSAGE_OUTBOUND_PROPERTY);
if (outboundProperty.booleanValue()) {
SOAPMessage message = smc.getMessage();
try {
SOAPEnvelope envelope = smc.getMessage().getSOAPPart().getEnvelope();
SOAPHeader header = envelope.addHeader();
SOAPElement security =
header.addChildElement("Security", "wsse", "http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd");
SOAPElement usernameToken =
security.addChildElement("UsernameToken", "wsse");
usernameToken.addAttribute(new QName("xmlns:wsu"), "http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd");
SOAPElement username =
usernameToken.addChildElement("Username", "wsse");
username.addTextNode("TestUser");
SOAPElement password =
usernameToken.addChildElement("Password", "wsse");
password.setAttribute("Type", "http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText");
password.addTextNode("TestPassword");
//Print out the outbound SOAP message to System.out
message.writeTo(System.out);
System.out.println("");
} catch (Exception e) {
e.printStackTrace();
}
} else {
try {
//This handler does nothing with the response from the Web Service so
//we just print out the SOAP message.
SOAPMessage message = smc.getMessage();
message.writeTo(System.out);
System.out.println("");
} catch (Exception ex) {
ex.printStackTrace();
}
}
return outboundProperty;
}
public Set getHeaders() {
//throw new UnsupportedOperationException("Not supported yet.");
return null;
}
public boolean handleFault(SOAPMessageContext context) {
//throw new UnsupportedOperationException("Not supported yet.");
return true;
}
public void close(MessageContext context) {
//throw new UnsupportedOperationException("Not supported yet.");
}}
如下是HandlerResolver的实现类定义:
package cn.outofmemory.ws.example;import java.util.ArrayList;import java.util.List;import javax.xml.ws.handler.Handler;import javax.xml.ws.handler.HandlerResolver;import javax.xml.ws.handler.PortInfo;/**
*
* @author outofmemory.cn
*/public class HeaderHandlerResolver implements HandlerResolver {public List<Handler> getHandlerChain(PortInfo portInfo) {
List<Handler> handlerChain = new ArrayList<Handler>();
HeaderHandler hh = new HeaderHandler();
handlerChain.add(hh);
return handlerChain;
}}
下面是调用webService的代码:
JavadbWebServiceService service = new JavadbWebServiceService();
HeaderHandlerResolver handlerResolver = new HeaderHandlerResolver();
service.setHandlerResolver(handlerResolver);
JavadbWebService port = service.getJavadbWebServicePort();
//调用web service
String currentTime = port.getTime();
System.out.println("Current time is: " + currentTime);
D. java web 开发如何控制使用期限及绑定服务器mac
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.InetAddress;
import java.net.NetworkInterface;
/**
* 与系统相关的一些常用工具方法.
*
* @author lvbogun
* @version 1.0.0
*/
public class SystemTool {
/**
* 获取当前操作系统名称. return 操作系统名称 例如:windows xp,linux 等.
*/
public static String getOSName() {
return System.getProperty("os.name").toLowerCase();
}
/**
* 获取unix网卡的mac地址. 非windows的系统默认调用本方法获取.
* 如果有特殊系统请继续扩充新的取mac地址方法.
*
* @return mac地址
*/
public static String getUnixMACAddress() {
String mac = null;
BufferedReader bufferedReader = null;
Process process = null;
try {
// linux下的命令,一般取eth0作为本地主网卡
process = Runtime.getRuntime().exec("ifconfig eth0");
// 显示信息中包含有mac地址信息
bufferedReader = new BufferedReader(new InputStreamReader(
process.getInputStream()));
String line = null;
int index = -1;
while ((line = bufferedReader.readLine()) != null) {
// 寻找标示字符串[hwaddr]
index = line.toLowerCase().indexOf("hwaddr");
if (index >= 0) {// 找到了
// 取出mac地址并去除2边空格
mac = line.substring(index + "hwaddr".length() + 1).trim();
break;
}
}
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
if (bufferedReader != null) {
bufferedReader.close();
}
} catch (IOException e1) {
e1.printStackTrace();
}
bufferedReader = null;
process = null;
}
return mac;
}
/**
* 获取widnows网卡的mac地址.
*
* @return mac地址
*/
public static String getWindowsMACAddress() {
String mac = null;
BufferedReader bufferedReader = null;
Process process = null;
try {
// windows下的命令,显示信息中包含有mac地址信息
process = Runtime.getRuntime().exec("ipconfig /all");
bufferedReader = new BufferedReader(new InputStreamReader(
process.getInputStream()));
String line = null;
int index = -1;
while ((line = bufferedReader.readLine()) != null) {
System.out.println(line);
// 寻找标示字符串[physical
index = line.toLowerCase().indexOf("physical address");
if (index >= 0) {// 找到了
index = line.indexOf(":");// 寻找":"的位置
if (index >= 0) {
System.out.println(mac);
// 取出mac地址并去除2边空格
mac = line.substring(index + 1).trim();
}
break;
}
}
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
if (bufferedReader != null) {
bufferedReader.close();
}
} catch (IOException e1) {
e1.printStackTrace();
}
bufferedReader = null;
process = null;
}
return mac;
}
/**
* windows 7 专用 获取MAC地址
*
* @return
* @throws Exception
*/
public static String getMACAddress() throws Exception {
// 获取本地IP对象
InetAddress ia = InetAddress.getLocalHost();
// 获得网络接口对象(即网卡),并得到mac地址,mac地址存在于一个byte数组中。
byte[] mac = NetworkInterface.getByInetAddress(ia).getHardwareAddress();
// 下面代码是把mac地址拼装成String
StringBuffer sb = new StringBuffer();
for (int i = 0; i < mac.length; i++) {
if (i != 0) {
sb.append("-");
}
// mac[i] & 0xFF 是为了把byte转化为正整数
String s = Integer.toHexString(mac[i] & 0xFF);
sb.append(s.length() == 1 ? 0 + s : s);
}
// 把字符串所有小写字母改为大写成为正规的mac地址并返回
return sb.toString().toUpperCase();
}
}
写一个全局拦截的servlet,只要有请求的时候就调用这个类里面的获取mac地址的方法
String os = getOSName();
System.out.println(os);
if (os.equals("windows 7")) {
String mac = getMACAddress();
System.out.println(mac);
} else if (os.startsWith("windows")) {
// 本地是windows
String mac = getWindowsMACAddress();
System.out.println(mac);
} else {
// 本地是非windows系统 一般就是unix
String mac = getUnixMACAddress();
System.out.println(mac);
}
记得判断一下是什么系统
E. javaweb权限管理,用户的权限数据该存放在哪里
配置一个servlet,在容器启动时自加载权限,并且通过资源表的数据信息,将每一条资源中的resourceURL与AuthorityName(权限名)进行配对。这里的resourceURL可能对应多个权限,所以Map集合内的Collection集合就是用来配置多个权限的,验证时需匹配该集合内所有的权限。所以URL可以重复录入数据库,但权限不能重复。
AuthorityDataMap,建立这个类用来存放经过权限匹配后的权限信息,是项目所有的权限集合。缓存在servlet上下文中。
F. JAVA WEB 中登录的session的判断 如何控制用户权限可以访问那些东西
控制访问权限不是通过session的
是数据库中的字段
数据库中要定义几个 权限内
比如: 游客、普通用容户、会员、管理员、版主、超级版主 等
上面是举例
然后大的方面可以控制为 登录用户 和 游客
即没有登录的全是游客,通过这个可以进行页面显示的控制
然后针对于登录用户
在登录的时候,将用户权限同时查询出来,存入session中
然后在jsp中就可以通过session中存入的权限来控制页面的显示
G. 怎样实现java web应用系统授权license功能
做个servlet,配置在web.xml里自动load
在servlet里加入对license的判断函数
函数 功能 大致可以为
1检查license文件是否专存在,是属否过期,是否合法
2确定服务器是否合法,比如获取硬件信息(ip,mac地址)
2判断该服务器和license是否匹配
4根据license授权的模块加载系统模块功能
大致步骤如此
具体的要看你们的业务要求了
H. 粤嵌的Java培训环境还可以啊有人去过么
还可以,但更推荐选择千锋教育,该机构利用技术优势精心打造了AI教辅系统,依托技术领域热门的人工智能技术,科技辅学,有力护航学员成长。
Java培训出来如何找高薪工作:
1.获得程序员式思维方式的快速建立知识体系。
2.找到一个合适的方法来实现技术进入,比如注册一个声誉良好的培训机构。
3.阅读一本书仍然是系统地学习知识的最佳方式,尽管在技术博客或社区论坛上有很多大神。
4.初学者应该积极地提问,依靠别人的经验并不可耻,关键是要用最少的时间来获得最多的收入。
5.根据大多数受访者的经验,阅读源代码是最快的增长途径。
6.HTML5.Python.Java.C.Golang等都是强大而普遍的入门语言,在精通之后再学其他。
想要了解更多有关Java培训的相关信息,推荐咨询千锋教育。采用全程面授高品质、高体验培养模式,学科大纲紧跟企业需求,拥有国内一体化教学管理及学员服务,在职业教育发展道路上不断探索前行,公司总部位于北京,目前已在20个城市成立分公司,现有教研讲师团队300余人。
I. java web程序 用新浪微博第三方登录,直接跳转到回调页面了,没有看到授权页面
这种情况应该是用户已经授过权了吧,如果用户对你应用未授权,在登录后会自动进入授权页面,是否对应用授权,可以在应用->我的应用里看到是否有你的应用,如果有删除后,再登录你的应用就会进授权页
J. javaweb,图片上传至阿里云Linux服务器,默认权限是rw-r----,外界访问不到,怎么修改默认权限
使用umask命令可以设置创建新文件时的默认权限。
语法:umask [选项] [权限掩码]
参数说明:-S 以字符的方式来表示权限掩码
示例:设置文件的权限掩码,使新建文件自动生成默认权限为rw-rw----
说明:rw-rw----对应的数字就是660 ,在Linux系统中,读权限(read,r)的值是4,写权限(write,w)的值是2,执行权限(execute,x)的值是1,没有授权的值是0 ,所以rw-rw----的数字权限值就是660。因为是建立新的文件,Linux默认不允许用户建立的文件具备可执行权限,所以文件的最大值权限值是666,umask值实际上是计算的最大权限值的补码,所以此时umask值是666-660=006
所以,要依次执行如下命令:
linux@server:~$ umask 006
linux@server:~$ touch abc
linux@server:~$ ll abc
-rw-rw---- 1 linux linux 0 2010-12-11 21:44 abc
扩展:两个比较特殊的权限掩码
umask 777 #创建文件会没有任何权限,他和chmod是相反的。
umask 000 #具有所有权限。但文件没有x权限。
复制粘贴,原网址:http://..com/link?url=NaYFAsL_M2L3kGdk6egtg--_77i73u-OsfDaScCI2zTqGe9_