Action处理请求参数
Posted yz-bky
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Action处理请求参数相关的知识,希望对你有一定的参考价值。
在Struts2中,页面请求分为两种方式,分别是字段驱动和模型驱动,字段驱动也属于属性驱动
属性驱动是指通过字段进行数据传递,两种情况:
1,与基本数据类型的属性对应
【1】编写Action类
public class login {
private String username;
private String password;
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public String execute()
{
ActionContext context = ActionContext.getContext();
if("yz".equals(username) && "123".equals(password))
{
//把username存在context里然后在jsp页面使用${}接收
context.put("qwe", username);
return "success";
};
return "success";
};
}
【2】编写配置文件
【3】编写jsp页面
在success.jsp加入${qwe}用于接收用户名字
2,直接使用域对象
【1】编写User实体类 并且加入get,set方法
【2】编写Action类
public class UserAction extends ActionSupport implements ServletRequestAware{
private User user;
public User getUser() {
return user;
}
public void setUser(User user) {
this.user = user;
}
HttpServletRequest request;
@Override
public void setServletRequest(HttpServletRequest request) {
this.request=request;
}
public String execute()
{
System.out.println(user.getUsername());
System.out.println(user.getPassword());
if("sss".equals(user.getUsername()) && "123".equals(user.getPassword()))
{
request.setAttribute("username",user.getUsername());
return "success";
};
return "success";
};
}
【3】编写配置文件
【4】编写jsp页面
在success.jsp页面加入${username}
模型驱动
模型驱动通过实现ModelDriven接口来接受请求参数,Action必须实现ModelDriven接口
并且要从写getModel()方法,这个方法返回的就是Action所使用的数据模型对象
【1】编写User实体类 并且加入get,set方法
【2】编写Action类
public class UserAction2 extends ActionSupport implements ServletRequestAware,ModelDriven<User>{
HttpServletRequest request;
private User user=new User();
@Override
public User getModel() {
return user;
}
@Override
public void setServletRequest(HttpServletRequest request) {
this.request=request;
}
public String execute()
{
if("sss".equals(user.getUsername()) && "123".equals(user.getPassword()))
{
request.setAttribute("user", user);
return "success";
};
return "success";
};
}
【3】编写配置文件
【4】编写jsp页面
在success.jsp页面加入${user.username}
以上是关于Action处理请求参数的主要内容,如果未能解决你的问题,请参考以下文章