Struts2 登入验证成功后怎么用Session对象保存User,可以在各个页面使用User对象里
Mapsession=ActionContex.getContext().getSession();session.setAttributes("user",user);...
Map session=ActionContex.getContext().getSession();
session.setAttributes("user",user);
Jsp页面调用
<%User user=session.getAttributes("user")%>
<s:property value="user.username">
好像这样写没用甚至报错,求大虾解惑。。。。 展开
session.setAttributes("user",user);
Jsp页面调用
<%User user=session.getAttributes("user")%>
<s:property value="user.username">
好像这样写没用甚至报错,求大虾解惑。。。。 展开
3个回答
展开全部
几种方法:
一:实现SessionAware接口:
import java.util.Map;
import org.apache.struts2.interceptor.SessionAware;
import com.opensymphony.xwork2.ActionSupport;
public class LoginAction extends ActionSupport implements SessionAware {
private Map<String, Object> session;
public void setSession(Map<String, Object> session) {
this.session = session;
}
public String execute() throws Exception {
session.put("user", "jack");
return SUCCESS;
}
}
二:从ActionContext获取:
import java.util.Map;
import com.opensymphony.xwork2.ActionContext;
import com.opensymphony.xwork2.ActionSupport;
public class LoginAction extends ActionSupport {
public String execute() throws Exception {
Map<String, Object> session = ActionContext.getContext().getSession();
session.put("user", "jack");
return SUCCESS;
}
}
注意一和二获取的都不是Session的原始类型,而是一个Map,没有setAttributes方法,只有put,get等map该有的方法。
展开全部
<s:property value="#session.user.username"/>
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
先在jsp页面导入User
<%User user=session.getAttributes("user")%>
<%String username=user.getUsername()%>
<%User user=session.getAttributes("user")%>
<%String username=user.getUsername()%>
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询