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_