日期:2014-05-20  浏览次数:20702 次

问一下struts1和struts2的问题。。。。。。。。。。。
struts1的话,一般服务器端验证都是放在actionform里面么?但是有些验证需要调service层查数据库,在actionform里调用service层不好吧。。
还有就是错误的提示信息,是存到request里返回给jsp,还是存到ActionErrorsActionMessages

struts2的话,服务器端验证是在validation.xml里验证,还是在action里?毕竟validation.xml不能调service。。
错误信息也是存放在request么?


------解决方案--------------------
struts1好久不用了忘了。在actionform里调用业务检查。

strtus2在action中的validate()方法里进行业务检查。xml不能针对业务逻辑检查的。

错误信息都放到ActionErrors里
------解决方案--------------------
struts2验证,可考虑放到service中做,再近一层,推迟到domain一层。service中调用domain层验证,然后再验证业务逻辑,将验证验证返回给action

public void add(Domain d) {
d.validateGeneral();
d.validateBusiness(this);
}