如何在jsp页面中获得action的数据

longer552 2011-05-09 09:45:59

package cn.edu.ujn.kygl.action;

import java.util.Map;

import javax.servlet.ServletRequest;
import javax.servlet.http.HttpServletRequest;

import org.apache.struts2.ServletActionContext;

import cn.edu.ujn.kygl.model.Login;
import cn.edu.ujn.kygl.services.ILoginService;

import com.opensymphony.xwork2.ActionContext;
import com.opensymphony.xwork2.ActionSupport;

public class LoginAction extends ActionSupport {

private Login login;
private ILoginService loginservice;

public void setLoginservice(ILoginService loginservice) {
this.loginservice = loginservice;
}

public Login getLogin() {
return login;
}

public void setLogin(Login login) {
this.login = login;
}

@Override
public String execute() throws Exception {
// TODO Auto-generated method stub
Login user=loginservice.find(login);
if(user!=null){
Map request=(Map)ActionContext.getContext().get("request");
request.put("user", user);
return "success";
}else{
return "error";
}
}
}



我想在所有的页面中都可以取到user,该怎么写?
...全文
144 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
longer552 2011-05-09
  • 打赏
  • 举报
回复
解决了,谢谢
LoongMint 2011-05-09
  • 打赏
  • 举报
回复
ActionContext.getContext().getSession().put("user", user);
或者
ServletActionContext.getRequest().getSession().setAttribute("user", user);
Spring89 2011-05-09
  • 打赏
  • 举报
回复
尽量少往session里放东西,因为它是存放在服务器上的。
放到session中
request.getSession().setAttribute("key","value");
longer552 2011-05-09
  • 打赏
  • 举报
回复
怎么放到session中?
LoongMint 2011-05-09
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 longer552 的回复:]
用<s:property value="#request.user.name" />只能在当前页面调用到,到了别的页面就取不到了
[/Quote]
你跳转到别的页面,可以带着这个user。一般的user都是放入session或者cookies中。这样别的页面就可以取得了。
longer552 2011-05-09
  • 打赏
  • 举报
回复
用<s:property value="#request.user.name" />只能在当前页面调用到,到了别的页面就取不到了
longer552 2011-05-09
  • 打赏
  • 举报
回复
有人帮忙没

67,512

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧