dwr+spring+hibernate验证问题

cwmwss 2009-06-10 01:41:23
在js里定义一个对像
person = {empNo:null, empName:null};
取得页面的值
dwr.util.getValues(person);
调用后台方法
personManager.Update(person);

请问一下如何快捷的进行字段的验证呢?hibernate-mapping里已经配置了字段的约束。
<hibernate-mapping>
<class name="cn.shinkong.ao.model.Person" table="person"
schema="dbo" catalog="AO">
<id name="empNo" type="java.lang.String">
<column name="emp_no" length="5" />
<generator class="assigned" />
</id>
<property name="empName" type="java.lang.String">
<column name="emp_name" length="50" not-null="true" />
</property>
</class>
</hibernate-mapping>
有没有办法利用这个配置来验证呢?
难道要在personManager.Update(person);前,在JS里写验证person的方法?






...全文
54 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
lishouxing 2011-06-17
  • 打赏
  • 举报
回复
飘过 求解
cwmwss 2009-06-15
  • 打赏
  • 举报
回复
谢谢各位
yyandlh 2009-06-10
  • 打赏
  • 举报
回复
用js验证简单很多
yooooyiiiiiiiiii 2009-06-10
  • 打赏
  • 举报
回复
难道要在personManager.Update(person);前,在JS里写验证person的方法?
-----当然是在js或者form活action中验证了。map没有通过会直接报错!
Landor2004 2009-06-10
  • 打赏
  • 举报
回复
hibernate那里的配置只能是作为异常抛出,最简单的方法就是用现在比较流行的jquery的validate plugin,简单校验配置一下即可
cwmwss 2009-06-10
  • 打赏
  • 举报
回复
struts2和dwr配合可以实现表单验证,可以将验证信息写在xml文件里。
可是dwr可以直接调spring里的service,没必要再用struts2的action了。

不知道我现在的想法对不对。
框架用了dwr+spring+hibernate,
struts2也用了,但是没有写Action类。因为js里用dwr调spring里的service。
加入struts2是为了使用它的标签库,如日历标签。
不用action就无法利用struts2的验证框架了。。所以问下现在如何解决验证问题



cwmwss 2009-06-10
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 shuai45 的回复:]
引用 5 楼 cwmwss 的回复:
引用 4 楼 yangkangoo12 的回复:
我觉得用js前台判断是最好的 你用spring或struts的validate验证数据都要提交到后台影响速度


JS验证是可以,那得在personManager.Update(person); 前写验证方法。
因为这样会增加工作量和JS代码,想问有其它方法不?


... ...你不觉得减少服务器端压力会更好吗?
[/Quote]
貌似,那问下大家是怎么验证的呢?特别是使用dwr的
cwmwss 2009-06-10
  • 打赏
  • 举报
回复
如何最简单的对得到的
dwr.util.getValues(person);进行验证?
shuai45 2009-06-10
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 cwmwss 的回复:]
引用 4 楼 yangkangoo12 的回复:
我觉得用js前台判断是最好的 你用spring或struts的validate验证数据都要提交到后台影响速度


JS验证是可以,那得在personManager.Update(person); 前写验证方法。
因为这样会增加工作量和JS代码,想问有其它方法不?
[/Quote]
... ...你不觉得减少服务器端压力会更好吗?
cwmwss 2009-06-10
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 yangkangoo12 的回复:]
我觉得用js前台判断是最好的 你用spring或struts的validate验证数据都要提交到后台影响速度
[/Quote]
JS验证是可以,那得在personManager.Update(person); 前写验证方法。
因为这样会增加工作量和JS代码,想问有其它方法不?
yangkangoo12 2009-06-10
  • 打赏
  • 举报
回复
我觉得用js前台判断是最好的 你用spring或struts的validate验证数据都要提交到后台影响速度
shuai45 2009-06-10
  • 打赏
  • 举报
回复
spring 自带了一个验证方法,类似于struts的validate。
而hibernate-mapping中是基于dao层的,只有当事务进行时才能得到控制。
用js前台判断不行吗
cwmwss 2009-06-10
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 shuai45 的回复:]
dwr 读hibernate-mapping 然后 通过参数和其比对?
个人认为这没多大意义。
再说 spring有自己的验证方法
[/Quote]我也觉得不对,spring里验证要用注解?
shuai45 2009-06-10
  • 打赏
  • 举报
回复
dwr 读hibernate-mapping 然后 通过参数和其比对?
个人认为这没多大意义。
再说 spring有自己的验证方法
用户注册和登录是每个系统的必须存在的一部分,基于Dwr+Struts2+Spring+Hibernate写了一个用户登录注册系统。   其中用Dwr去进行用户注册的用户是否存在的验证。   全部业务控制交由Spring去进行处理。事务处理也交由Spring去管理。   压缩文件中不包含Jar文件(由于全部的Jar将近12M,不能全部上传),所用到的Jar目录为,工程中再也不会出现由于MyEclipse自动整合而出现的大量Jar文件 : Java代码 1. //如果不用,启动时不会出错,但使用Dwr时,会抛出异常:java.lang.NoClassDefFoundError: antlr/ANTLRException 2. antlr-2.7.2.jar  3. 4. //如果不用此包,在启动时会抛出: nested exception is java.lang.NoClassDefFoundError: org/objectweb/asm/Type 5. asm.jar 6. 7. // 如果不用此包,在启动时抛 出:nested exception is java.lang.NoClassDefFoundError: org/aspectj /weaver /reflect/ReflectionWorld$ReflectionWorldException 8. aspectjweaver.jar 9. 10. //如果不用此包,在启动时抛出:nested exception is java.lang.NoClassDefFoundError: net/sf/cglib/proxy/CallbackFilter 11. cglib-2.1.3.jar 12. 13. //如果不用此包,在启动时抛出:nested exception is java.lang.NoClassDefFoundError: org/apache/commons/collections/SequencedHashMap 14. commons-collections-3.1.jar 15. 16. //这个似乎可以不用的 17. commons-fileupload-1.2.1.jar 18. 19. //这个就不用说啦,几乎所有框架都要使用的 20. commons-logging-1.0.4.jar 21. 22. //如果不用此包会抛出:java.lang.NoClassDefFoundError: org/dom4j/DocumentException 23. dom4j-1.6.1.jar 24. 25. //dwr必须 26. dwr.jar 27. 28. 29. //不用此包,在启动时招聘:java.lang.NoClassDefFoundError: javax/transaction/TransactionManager 30. jta.jar 31. 32. //Mysql JDBC驱动 33. mysql-connector.jar 34. 35. //Hibernate必须使用,注意此包是包含全部的。 36. hibernate3.jar 37. 38. //Spring整体包 39. spring.jar 40. 41. //struts2必须 42. freemarker-2.3.8.jar 43. //struts2必须 44. ognl-2.6.11.jar 45. //struts2核心包 46. struts2-core-2.0.11.2.jar 47. //struts2整合Spring插件 48. struts2-spring-plugin-2.0.11.2.jar 49. //struts2必须 50. xwork-2.0.5.jar   数据库设计(使用MySql数据库): Java代码 1. create table user 2. ( 3. id varchar(32) not null, 4. userName varchar(20), 5. password varchar(20), 6. primary key(id) 7. ); 8. create table user_infor 9. ( 10. id varchar(32) not null, 11. user_id varchar(32), 12. name varchar(20), 13. email varchar(30), 14. sex char, 15. age int, 16. address varchar(300), 17. primary key(id) 18. ); 19. ALTER TABLE user_infor 20. ADD FOREIGN KEY(user_id) 21. REFERENCES user(id) 22. ON DELETE CASCADE; 由于没有包含全部的Jar文件,所以朋友需要把上面所述的Jar加载。

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧