`
firedragon
  • 浏览: 71543 次
  • 性别: Icon_minigender_1
  • 来自: 广西
文章分类
社区版块
存档分类
最新评论

struts+hibernate+spring+dwr的一个小小的DEMO

阅读更多

最近无聊,做了一个DWR的验证和eXtremeTable的应用的例子

前期的系统创建、struts、hibernate、spring的集成工作就不用说了,一路下来…………

主要看DWR的应用,它用于表单验证:

1、先看它的配置:

(1)在web.xml里加上:

xml 代码
  1.   <servlet>  
  2.    <servlet-name>dwr-invokerservlet-name>     
  3.    <servlet-class>uk.ltd.getahead.dwr.DWRServletservlet-class>  
  4.      <init-param>  
  5.      <param-name>debugparam-name>  
  6.      <param-value>trueparam-value>  
  7.    init-param>  
  8.     <load-on-startup>1load-on-startup>    
  9.  servlet>     
  10.     
  11.    <servlet-mapping>  
  12.   <servlet-name>dwr-invokerservlet-name>  
  13.   <url-pattern>/dwr/*url-pattern>  
  14. servlet-mapping>  
  15.    

 

(2)再建一个类,用于获取验证输出信息的属性文件,这个文件是参考了良葛格 的DWR 入門與應用(一)

里的Book代码

java 代码

  1. package test.common;   
  2.   
  3. import java.util.ResourceBundle;   
  4.   
  5. public class GetProperties{   
  6.     private ResourceBundle resource;   
  7.        
  8.     public GetProperties()   
  9.     {   
  10.            
  11.                               resource = ResourceBundle.getBundle("dwrPro");   
  12.      }   
  13.                
  14.     public String getDescription(String key)    
  15.     {   
  16.        return resource.getString(key);   
  17.     }   
  18.   
  19. }  

(3)编写属性文件dwrPro_zh_CN.propertie(中文)和dwr_en.properties(英文)

java 代码
  1. username_hasUsed = 用户名已用,请选择别的用户名   
  2. username_canUse  = 恭喜!用户名可以使用   
  3.   
  4. username_hasUsed =username has used!   
  5. username_canUse  = username can use!  

 

(4)配置dwr.xml,里面用了spring的bean 和java类

xml 代码
  1. <dwr>  
  2.   
  3.   <allow>  
  4.      <create creator="spring" javascript="userManager">  
  5.         <param name="beanName" value="userManager"/>  
  6.        <include method="findUserIsExist"/>  
  7.     create>  
  8.        
  9.   <create creator="new" javascript="User" scope="application">  
  10.             <param name="class" value="test.common.GetProperties"/>  
  11.         create>         
  12.   allow>  
  13. dwr>  

spring beanName  的value =“userManager”从applicationContext.xml里取得

xml 代码
  1. <bean id="userManagerTarget" class="test.spring.serviceImpl.UserServiceImpl">  
  2. <property name="userDao">  
  3.   <ref bean="userDao"/>  
  4. property>  
  5. bean>  
  6.        
  7.        
  8.  <bean id="userManager" class="org.springframework.aop.framework.ProxyFactoryBean">  
  9.     <property name="proxyInterfaces">  
  10.     <value>test.spring.service.IUserServicevalue>  
  11.     property>  
  12.     <property name="interceptorNames">  
  13.        <list>    
  14.         <idref bean="transactionInterceptor"/>    
  15.           <idref bean="userManagerTarget"/>  
  16.        list>  
  17.     property>       
  18.  bean>   

这里应该大家都懂,就不罗嗦了

 

(5)配好了这些,就可以在页面里用了

java 代码
  1. <!---->  
  2.   
  3.   
  4. <!---->"-//W3C//DTD HTML 4.01 Transitional//EN">   
  5.   
  6.      
  7.        
  8.        
  9.        
  10.        
  11.          
  12.     <script type='text javascript' src="dwr/&lt;/span&gt;&lt;span class=&quot;keyword&quot;&gt;interface&lt;/span&gt;&lt;span&gt;/userManager.js"></script>   
  13.     <script type='text javascript' src="dwr/engine.js"></script>   
  14.     <script type='text javascript' src="dwr/util.js"></script>   
  15.     <script type='text javascript' src="dwr/&lt;/span&gt;&lt;span class=&quot;keyword&quot;&gt;interface&lt;/span&gt;&lt;span&gt;/GetProperties.js"></script>   
  16.        
  17.     <script type='text javascript'="">   
  18.     function checkName()   
  19.     {   
  20.         var username = document.userForm.username.value;   
  21.         userManager.findUserIsExist(username,callback);   
  22.     }   
  23.        
  24.     function callback(data)   
  25.     {   
  26.       if(data == true)   
  27.       {   
  28.         
  29.         GetProperties.getDescription("username_hasUsed",prosess);   
  30.            
  31.       }   
  32.       else  
  33.       {   
  34.        GetProperties.getDescription("username_canUse",prosess);   
  35.       }   
  36.     }   
  37.   
  38.     function prosess(date)   
  39.     {   
  40.         DWRUtil.setValue('check_username',date);   
  41.     }   
  42.        
  43.        
  44.        
  45.     </script>   
  46.      
  47.      
  48.      
  49.        
  50.       "0">   
  51.            
  52.              Login:   
  53.              "text" name="user.name" id="username" onblur="checkName()"/>"check_username">   
  54.            
  55.            
  56.              Password:   
  57.              "password" name="user.password" id="username" onblur="checkpassword()"/>"check_password">   
  58.            
  59.            
  60.           "2" align="center">   
  61.            
  62.          
  63.     
  64.      

 

这里当填了Login框,当光标从输入框移开时就实行了

js 代码
  1. function checkName()   
  2.     {   
  3.         var username = document.userForm.username.value;   
  4.         userManager.findUserIsExist(username,callback);   
  5.     }  

 

userManager.findUserIsExist(username,callback)时关键,这里就用了

 <script type="text/javascript" src="dwr/interface/userManager.js"></script>

读取dwr.xml的userManager,然后读取applicationContext.xml里userManager  bean ,进而实行findUserIsExist方法。

 

 

 

分享到:
评论
4 楼 ap0406708 2010-03-15  
tody0080 写道
请问下 一般 spring 的配置文件放在哪个下面 是包里面还是 WEB-INF 里面

 
3 楼 bzhjian 2008-10-28  
能不能发个完整的WEB.XML啊,谢谢
2 楼 tody0080 2008-02-20  
请问下 一般 spring 的配置文件放在哪个下面 是包里面还是 WEB-INF 里面
1 楼 zhhu3118 2007-09-15  
haoya

相关推荐

    EXT + DWR + Struts + Hibernate + Spring Demo

    EXT + DWR + Struts + Hibernate + Spring Demo

    Spring 2.0 + Struts 1.2 + Hibernate 3.2 + DWR 2.0 的JavaEE应用示例

    该示例使用MyEclipse 5.5 IDE用来整合四个技术(Struts 1.2, Spring 2.0, Hibernate 3.2和Ajax技术)的轻量级的JavaEE。 操作步骤如下: 1. 下载并解压之后,使用MyEclipse导入工程 2. 找到demo目录中的.sql数据库...

    Struts+Spring+Hibernate+Ajax的Demo

    这是一个Struts+Spring+Hibernate+Ajax的Demo,ajax主要用的是dwr框架再加上dojo

    Spring2.5+Struts2.0+hibernate3.0+Dwr+jquery+displayTag

    自已写的一个demo 1 基于SSH,service采用 annotation注入减少配置 2 利用struts2 的LoginAction-validation.xml 3 在bean里把service包;暴露DWR,写了一个验证用户名的流程 4 采用jpa作为POJO,还是减少配置 5 加入...

    ext+Json+dwr+spring+hibernate整合项目实例与资源

    而今天我们要做的一个demo是一个简化的HRMS(人力资源管理系统),在SSH上因为Spring本身有自己的MVC框架实现,所以我们用它来代替struts,在Ajax上我们采用两大框架组件extjs和dwr,前者可以做出非常炫目的页面效果,...

    SSH2增删改查带分页上传图片(带预览),struts2

    SSH2项目,内含增删改查,带上传图片(带预览),有分页。... 基于MyEclipse8.5+MySQL+Tomcat6.0 struts2+spring2.5+...如果你想搭建一个这样的demo,请参考我另一个上传的文档SSH2搭建。 点我用户名就可以查看所有上传。

    DWR_Strut2_Hibernate3_Spring2.5 Demo

    DWR 结合Struts2 Hibernate Spring开发 这是一个开发Ajax的好框架

    dwr配置文件和注解两种方式的两个demo,ssh项目使用dwr

    dwr配置文件和注解两种方式的两个demo, dwr框架在项目中的使用, 一个sprig3+dwr3+jpa+...一个sprig2+dwr2+hibernate3+struts1,基于配置文件的完整demo http://blog.csdn.net/zuxianghuang/article/details/7376247

    机票系统小demo

    struts2+spring+hibernate+dwr+jsp+oracle做的机票系统小demo,学习过程中的练手之作,供学习参考之用,内有完整web项目文件夹以及oracle数据库的建表语句

    信息管理系统小demo

    Struts2+Spring+Hibernate+dwr+oracle做的信息管理系统小demo,实现了增删改查功能,学习过程中的练手之作,供大家学习参考

    流程管理系统,rbac,dwr

    配合项目经理与客户交流完成需求确认采用快速原型制作工具Axure完成DEMO制作、并参与前期的需求用例的编写,该项目使用了JBPM4,并对JBPM4进行预研,掌握JBPM4的使用,主要是JPDL和JBPM4常用API,并完成Extjs3+...

    ExtJs人力资源管理系统(HRMS)

    而今天我们要做的一个demo是一个简化的HRMS(人力资源管理系统),在SSH上因为Spring本身有自己的MVC框架实现,所以我们用它来代替struts,在Ajax上我们采用两大框架组件extjs和dwr,前者可以做出非常炫目的页面效果,...

    271个java需要用的jar包

    spring-hibernate3-2.0.8.jar spring-jdbc-3.1.1.RELEASE.jar spring-jdbc-4.1.4.RELEASE.jar spring-mock.jar spring-test-3.0.5.RELEASE.jar spring-tx-3.1.1.RELEASE.jar spring-web-3.0.5.RELEASE.jar spring-...

    iuhyiuhkjh908u0980

    仿照Appfuse 提供一个完全自动化的ant构建脚本.在线SHOP的数据库建模图例已经 在博客中贴出.感兴趣的和我一起搭建,嘻嘻 文档博客地址: http://forum.sinomagazine.com 开发环境: Jcreator-4.5 JDK-1.5 Ant-1.6.1 ...

Global site tag (gtag.js) - Google Analytics