A. java获取session的值怎么使用
一、页面传值
发送方:
触发requestCommand.execute()事件,setPath(path)来跳转页面,requestCommand.parameters().setValue("field1",value)来
传递参数,也可以setDataSet(dataset)来传递该dataset的当前记录。
还有一种方式:通过requestCommand的parameterFields实现传值
接受方:
任意一dataset中设置和requestConmmand传递的参数相同名称的fields,就可以获取相应的参数了。或者用session来获取参数。
该处可能是描述上的问题,相信作者理解上不存在问题
接受requestCommand传过来的参数都是通过Request实现,由于生命周期的不同,而会是用不同的方式处理:
Java代码:一般我们是通过DoradoContext处理
视图模型xml文件中的属性以及js事件:我们通过dorado提供的EL表达式处理,例如:${Request.parameterName1}或则${request.getParameter("parameterName1")},具体参考EL表达式的使用文档。
同样我们在以上的两个地方要操作session也是一样通过DoradoContext或者EL表达式实现
二、设置session
第一步:页面传值(略)
第二步:设置session
方法一,在jsp中设session: <%session.setAttribute("roles",request.getParameters("roles"));%>
方法二,在servlet中设session:
String roles = request.getParameter("roles");
HttpSession session = request.getSession();
session.setAttribute("roles", roles);
----------------------------------------------------------
第三步:获取session值
方法一:在jsp中获取:String roles = (String)session.getAttribute("roles");
方法二:在scrīpt中获取:
var roles = new Array();
roles = "${Session.roles}";
这儿指的script是指View(视图模型的事件代码),而对于jsp中的js就不必拘泥于形式,当然一个dorado页面我们认为不太可能在jsp上出现非布局与css的其他代码(如果你的dorado经验比较丰富的话)
--------------------------------------------------------
注意事项:
session的设置顺序要和页面传值的顺序一致
B. java怎么获取session
在Servlet或者是在Struts1中获取当前用户的Session方法是内:容
HttpSession session = request.getSession(true);
注意:request的类型是:HttpServletRequest.
如果是在Struts2中的Action中获取Session.方法是:
Map session = ActionContext.getContext().getSession();
C. java web的怎么通过sessionid得到session
在回答问题之前,跟你简单介绍Session的工作原理:
不需要写手动写SessionID:
代码如下:
HttpSessionsesion=Request.getSesion();
if(session!=null){
//如果sessionID不等于空版,则说明是权第二次访问
//写第二次访问时的代码
}else{
//写第一次访问的代码
}
javaweb怎么通过sessionid得到session这个我们不需要了解,就是第二次客户端发出请求时,将sessionid也发给了服务器,服务器根据这个唯一的ID找到相应的session(session都是保存在服务器的数据库中,每个session用唯一一个ID所标识),就像是数据库中根据关键字查找数据一样,找到之后就可以直接用这个session里面的数据了。
D. Java,在服务器中怎么获取所有sessionstruts中呢谢谢
你直接根据id取值就行了,不过你要知道存session的时候是不是把用户id所谓索引的。
String user = (String)session.getAttribute("1");
if(user == null){
out.print("该用户不存在");
}
struts中用
ServletActionContext.getContext().getSession().get(key)就行了
E. 大神们,请教下,java如何获取session的东西
一般情况下
用Session.getAttibute(String
key)来获得
Session对象
中含有的关键字是key的对象。key
是通过Session.setAttibute(String
key
,Object
obj)自己设定的一个索引关键字!Session对象怎么来的的呢
可以通过request.getSession()来获得!
所以现在就明白了:通过request.getsession()获得session
对象
再调用它的getAttibute(String
key)方法来获得含有关键字“PASSPORT_NICKNAME”的对象
例子:
UserID = (String) request.getSession().getAttribute("UserID");
F. java中如何取项目的所有session
java.util.Enumeration e = request.getSession().getAttributeNames();
while( e.hasMoreElements()) {
String sessionName=(String)e.nextElement();
out.println("\nsession item name="+sessionName);
out.println("\nsession item value="+request.getSession().getAttribute(sessionName));
}
String value=String.valueOf(request.getSession().getAttribute(sessionName));
G. java怎么获取session中所有的值
session是后台服务器端的变量,而js是前段脚本,在js中是没有现成的方法获取session的值的,需要通过服务器语言来获取。
H. java session如何存取数据
java session存取数据的方法:
session存数据方法:publicvoidsetAttribute(Stringname,Stringvalue)方法,设定指定名字的属性的值,并将它添加到session会话范围内,如果这个属性在会话范围内已经存在,则更改该属性的值。
session取数据方法:publicObjectgetAttribute(Stringname)在会话范围内获取指定名字的属性的值,返回值类型为object,如果该属性不存在,则返回null。
举例如下:
{
publicvoiddoGet(HttpServletRequestrequest,HttpServletResponseresponse)
throwsServletException,IOException{
response.setCharacterEncoding("UTF=8");
response.setContentType("text/html;charset=UTF-8");
//使用request对象的getSession()获取session,如果session不存在则创建一个
HttpSessionsession=request.getSession();
//将数据存储到session中
session.setAttribute("attr","会话测试");
}
}
可以在jsp页面获取session数据<%=request.getSession().getAttribute("attr")%>