首页 > 代码库 > struts2笔记(2)
struts2笔记(2)
Struts2 中, HTML 表单将被直接映射到一个 POJO,通过params拦截器,类中定义对应属性,及对应set方法即可。
params拦截器会把请求参数的值赋给栈顶对象对应的各个属性,如果栈顶对象没有对应属性,则往下找下一个对象对应的属性。
如果已经有了一个javabean,表单传过来了bean的属性,就不需要再action中再写一遍bean的每个属性来赋值了,可以直接写一个bean的变量,通过ModelDriven拦截器,如果 Action 类实现了 ModelDriven 接口,该拦截器将把 ModelDriven 接口的 getModel() 方法返回的对象置于栈顶,然后params拦截器就会将表单属性赋给栈顶的空的bean对象了。继承接口后这样写(可以没有setEmployee方法)
1 private Employee employee; 2 @Override 3 public Employee getModel() { 4 employee = new Employee(); 5 return employee; 6 }
代码里不能直接return new Employee();因为和成员变量employee没关系,所以其他用到employee对象的时候,它是空。
每次求情,只要有ModelDriven的getModel()方法,一般栈顶对象都会是该方法返回的对象!
用class.hashcode()方法,可以看对象是不是同一个。
关于回显:
从值栈站顶开始查找匹配的属性,若找到,就添加到value属性中,就会自动给赋上。
下图29。18
struts2笔记(2)
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。