❶ java web的怎么通过sessionid得到session
在回答问题之前,跟你简单介绍Session的工作原理:
不需要写手动写SessionID:
代码如下:
HttpSessionsesion=Request.getSesion();
if(session!=null){
//如果sessionID不等于空版,则说明是权第二次访问
//写第二次访问时的代码
}else{
//写第一次访问的代码
}
javaweb怎么通过sessionid得到session这个我们不需要了解,就是第二次客户端发出请求时,将sessionid也发给了服务器,服务器根据这个唯一的ID找到相应的session(session都是保存在服务器的数据库中,每个session用唯一一个ID所标识),就像是数据库中根据关键字查找数据一样,找到之后就可以直接用这个session里面的数据了。
❷ ssh2 Java web 我是用姓名和密码登陆的,想在登陆的LoginAction同时用session获取该姓名的ID
第一步:登录,将用户对象或者id存放在session,你那个放的是loginid,那就loginid咯。
第二步:点击<a href="FindExamineeByIDAction?examineeid=${session.loginid }">,跳转到一个action,这个action不干什么,就取得loginid,然后获取loginid所属对象,然后放在值栈,假设用户对象为User,那么就ActionContext.getContext().getValueStack().push(User);然后return到修改页面
举个例子,我现在已经点击了带有loginid参数的<a>标签,然后到一个UserAction中的GoToUpdatePage()方法中去,方法里面的代码为
User user = this.userService.getEntryById(loginid);//此处表示根据loginid获取对象,loginid怎么从前台传过来的你应该知道吧,如果不知道那建议你重新看一下struts2的教程。
ActionContext.getContext().getValueStack().push(user);
return updateUI;//updateUI的结果集值是跳转到修改页面的jsp。
在修改页面的jsp中,你应该知道怎么取值把,直接去$(name),$(age),等等,都是Use的属性,直接写就行了。
❸ java如何获取sessionid
这个功能老版本servlet规范中有,新版本中好像被屏蔽了。可以换一种做法,写一个session监听。创建时将session
id与session对象构造一个hashMap放到
application中去,销毁时从application中移除。然后你就可以获取了。