Struts2 Action中的数据填充

开门见山
直接上代码

Struts 2 中的数据填充有3中方式:
1、字段填充:

public class TestActionSupport extends ActionSupport {
	此处若为Private motifi
/*
	private String userId;
	
	public String getUserId() {
		return userId;
	}

	public void setUserId(String userId) {
		this.userId = userId;
	}
	*/
        public String userId;
	
	@Override
	public String execute() throws Exception {
		System.out.println(userId);
				return super.execute();
	}
}



JSP页面

<!--JSP页面写法-->
<form action="/struts2-class/user/testActionSupport">

	userId:<input type="text" name="userId"/><br/>
<input type="submit" />
</form>


2、域对象(
推荐使用,也是最长使用的
UserBean很简单 ,此处略去,但有一点不得不说,在写好UserBean的时候最好从写一下
public int hashCode()  方法。
具体为什么还是没有搞懂,但应该要用到sort

public class TestActionSupport extends ActionSupport {
	//此处user为一UserBean
public User user = new User();
	
	@Override
	public String execute() throws Exception {
		System.out.println(user);
		return super.execute();
	}
}

 

<!--JSP 页面写法-->
<form action="/struts2-class/user/testActionSupport">
	userId:<input type="text" name="user.userId"/><br/>
	name:<input type="text" name="user.name" /><br/>
	<input type="submit" />
</form>




3、模型驱动 implements ModelDriven(
优先被赋值:

当字段填充和模型驱动同时出现的时候模型驱动优先被执行。

//最好玩的就是这个ModelDriven ,被叫做模型驱动,他先需要被实现,最后执行一个
//getModel()的方法,返回这个UserBean的引用。并且一个Action只能对应一个ModelDriven
//神奇之处发生了,在JSP页面不需要写对象的引用了,直接写属性名就可以产生映射。
//原来不是很清楚,但能确定的是return的这个对象一定是到前台JSP页面去收集过一趟值//去了
public class TestActionSupport extends ActionSupport implements ModelDriven {
	//此处user为一UserBean
	public User user = new User();
	//public String userId;

	@Override
	public String execute() throws Exception {
		//System.out.println(userId);
		System.out.println(user);
		return super.execute();
	}
	//实现域模型   ModelDriven 要重写该方法
	@Override
	public Object getModel() {
		// TODO Auto-generated method stub
		
		//return 的值 传给了页面
		return user;
	}
}


 

<!--JSP页面-->
<form action="/struts2-class/user/testActionSupport">
	userId:<input type="text" name="userId"/><br/>
	name:<input type="text" name="name" /><br/>
	age:<input type="text" name="age" /><br/>	
<input type="submit" />

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值