我刚学struts2不久,现在有点疑问我希望大家能多多指教,在struts2中每个请求一般都对应一个action
比如 我在User.acton 类是这样定义的
User extends ActionSupport
{
private int id;
private String name;
Private String password; getter{
.......
}
setter{
........
}
}
然后在提单表单的页面中
<input type="text" name="id">
<input type="text" name="name">
<input type="text" name="password">
这个时候上面三个都输入值不会抛异常而有些时候我想查询的时候还能用这个acton 么? 因为查询一般就传一个id这个值就行了啊,而如果上面的acton会抛异常
而且如果用了validate()方法 就不能通过验证了,那我是不是可以这样理解就是针对user的增、删、改、查 每个都要建立新的action 类 进行处理? 我感觉不应该是这样的,但因为我是刚学的菜鸟不知道应该是什么样子请各位能多多指教 谢谢!!
比如 我在User.acton 类是这样定义的
User extends ActionSupport
{
private int id;
private String name;
Private String password; getter{
.......
}
setter{
........
}
}
然后在提单表单的页面中
<input type="text" name="id">
<input type="text" name="name">
<input type="text" name="password">
这个时候上面三个都输入值不会抛异常而有些时候我想查询的时候还能用这个acton 么? 因为查询一般就传一个id这个值就行了啊,而如果上面的acton会抛异常
而且如果用了validate()方法 就不能通过验证了,那我是不是可以这样理解就是针对user的增、删、改、查 每个都要建立新的action 类 进行处理? 我感觉不应该是这样的,但因为我是刚学的菜鸟不知道应该是什么样子请各位能多多指教 谢谢!!
---------------------
可以用这个action,只不过你方法应该重写吧?如果你一个action里面只有一个业务的话,用默认的execute()方法就可以了,但是如果有多个业务的话,每个业务都要对应一个方法来处理
只传一个ID 一般逻辑正确的话 是不会抛异常的。
一个action可以只很多事情 只需在前台指定对应的方法就行了 比如 test/index!validateUser.action
public Menu{
int id;
int pid;
String name;
setter..
getter...}
然后我在action 类中
pulic MenuAction extends ActionSupport{
Menu menu = new Menu();
setter..
getter...
}表单中的
<s:textfield name="menu.name">
<s:textfield name="menu.pid">这个表单在提交的时候如果menu.id这里不输入值会抛pid赋值异常,但最终值会赋成0 我也想要0这个状态 我想表达的意思是我能不能有办法不让它抛这个赋值异常啊,有的时候这个pid就是0不需要赋值的。