⑴ java-web怎麼獲取在線用戶列表
如果要在頁面中看到所有登陸用戶的信息的話,必須在每個用戶登陸成功以後,把該用戶信息存入application中。然後在jsp頁面上把application中存放的所有用戶列表取出來,顯示在畫面上,這樣返回給客戶端的頁面上就能看到所有的登陸用戶列表。示例如下:
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
String userName = request.getParameter("username");
ServletContext application = req.getServletContext();
ArrayList loginList = (ArrayList)application.getAttribute("loginlist");
if(loginList == null){
loginList = new ArrayList();
application.setAttribute("loginlist",loginList);
}
loginList.add(userName);
req.getRequestDispatcher("/WEB-INF/jsp/main.jsp").forward(req,resp);
}
⑵ Java怎樣獲取當前登錄用戶的用戶名,密碼
深圳遠標為你解答
//在用戶名已經存入session的情況下,
HttpSession
session
=
ServletActionContext.getRequest().getSession();
String
userId
=
session.getAttribute("userId");
//然後利用這個userId去查找資料庫
//加入session的方法
getHttpServletRequest().setAttribute(key,
value);
⑶ java中 在更改密碼界面中,需要獲取當前登錄的用戶信息,請問在程序中是如何獲
這個過程涉及到2個對象
瀏覽器
java後台
還涉及兩個數據
cookie
session
(可以想像一個map,key是cookie,value是session)
java後台將cookie信息傳給瀏覽器,
瀏覽器在訪問域名時,會帶上和該域名相關的cookie信息(這個瀏覽器會自己存在本地)
java後台在瀏覽器訪問時,會獲取cookie信息,沒有cookie信息則默認創建新cookie給瀏覽器
瀏覽器登陸時,java後台會創建session對象,跟這個cookie綁定起來。
每次瀏覽器訪問java後台,java後台都根據cookie取出session對象,session對象往往會存該登陸用戶的唯一id,然後java可以根據唯一id到資料庫中取出用戶的詳細信息,其中就可以拿到密碼信息。
⑷ Java怎樣獲取當前登錄用戶的用戶名,密碼。。
當你使用用戶名跟密碼登錄成功的時候,把用戶名跟密碼放在范圍內.可以是request.setAttribute("username",username);也可以是session.setAttribute("username",username);然後在jsp頁面可以用EL表達式拿也可以直接用java代碼拿.${sessionScope.username},<%=session.getAttribute("username")%>
⑸ java怎麼獲取本機的用戶名或域
java怎麼獲取本機的用戶名或域可通過System.getEnv()得到。
System.getenv("USERNAME");System.getenv("USERDOMAIN");
它常和System.getProperties()配合使用,它們的區別是:
從概念上講,系統屬性 和環境變數 都是名稱與值之間的映射。兩種機制都能用來將用戶定義的信息傳遞給 Java 進程。環境變數產生更多的全局效應,因為它們不僅對Java 子進程可見,而且對於定義它們的進程的所有子進程都是可見的。在不同的操作系統上,它們的語義有細微的差別,比如,不區分大小寫。因為這些原因,環境變數更可能有意料不到的副作用。最好在可能的地方使用系統屬性。環境變數應該在需要全局效應的時候使用,或者在外部系統介面要求使用環境變數時使用(比如 PATH)。
Map<String, String> map = System.getenv();
String userName = map.get("USERNAME");// 獲取用戶名
String computerName = map.get("COMPUTERNAME");// 獲取計算機名
String userDomain = map.get("USERDOMAIN");// 獲取計算機域名
System.out.println("自定義變數getenv CONF_LOCATION:" +System.getenv("conf.location"));
System.out.println("操作系統的名稱:"+System.getProperty("os.name"));
其它常用的屬性參數如下:
java.version Java 運行時環境版本 java.vendor Java 運行時環境供應商 java.vendor.url Java 供應商的 URL java.home Java 安裝目錄 java.vm.specification.version Java 虛擬機規范版本 java.vm.specification.vendor Java 虛擬機規范供應商 java.vm.specification.name Java 虛擬機規范名稱 java.vm.version Java 虛擬機實現版本 java.vm.vendor Java 虛擬機實現供應商 java.vm.name Java 虛擬機實現名稱 java.specification.version Java 運行時環境規范版本 java.specification.vendor Java 運行時環境規范供應商 java.specification.name Java 運行時環境規范名稱 java.class.version Java 類格式版本號 java.class.path Java 類路徑 java.library.path 載入庫時搜索的路徑列表 java.io.tmpdir 默認的臨時文件路徑 java.compiler 要使用的 JIT 編譯器的名稱 java.ext.dirs 一個或多個擴展目錄的路徑 os.name 操作系統的名稱 os.arch 操作系統的架構 os.version 操作系統的版本 file.separator 文件分隔符(在 UNIX 系統中是「/」 ) path.separator 路徑分隔符(在 UNIX 系統中是「:」 ) line.separator 行分隔符(在 UNIX 系統中是「/n」 ) user.name 用戶的賬戶名稱 user.home 用戶的主目錄 user.dir 用戶的當前工作目錄