`
gdzhljw
  • 浏览: 98007 次
  • 性别: Icon_minigender_1
  • 来自: 珠海
文章分类
社区版块
存档分类
最新评论
阅读更多

 

dwr使用实例 

http://www.kpwang.com/jsp_java/3611068211012591.htm

开发环境:eclipse3.1.2  myeclipse4.1.1   Tomcat5.0.28   Mysql5.0

dwr类包版本是1.1
步骤一:配置web.xml
 <?xml version="1.0" encoding="UTF-8"?>
<web-app>
    <servlet>
        <servlet-name>action</servlet-name>
        <servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
        <init-param>
            <param-name>config</param-name>
            <param-value>/WEB-INF/struts-config.xml</param-value>
        </init-param>
        <init-param>
            <param-name>debug</param-name>
            <param-value>3</param-value>
        </init-param>
        <init-param>
            <param-name>detail</param-name>
            <param-value>3</param-value>
        </init-param>
        <load-on-startup>0</load-on-startup>
    </servlet>




















    <servlet-mapping>
        <servlet-name>action</servlet-name>
        <url-pattern>*.do</url-pattern>


</servlet-mapping>
    <servlet>
        <servlet-name>dwr-invoker</servlet-name>
        <servlet-class>uk.ltd.getahead.dwr.DWRServlet</servlet-class>
        <init-param>
            <param-name>debug</param-name>
            <param-value>true</param-value>
        </init-param>
    </servlet>







    <servlet-mapping>
        <servlet-name>dwr-invoker</servlet-name>
        <url-pattern>/dwr/*</url-pattern>
    </servlet-mapping>
    
    <context-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>/WEB-INF/applicationContext.xml
        </param-value>
    </context-param>
    <listener>
        <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
    </listener> 
     
    <filter>
        <filter-name>EncodingFilter</filter-name>
        <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
        <init-param>
            <param-name>encoding</param-name>


















<param-value>UTF-8</param-value>
        </init-param>

    </filter>
    <filter-mapping>
        <filter-name>EncodingFilter</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>



      <error-page>
        <error-code>404</error-code>
        <location>/404.jsp</location>
    </error-page>


    <error-page>
        <error-code>500</error-code>
        <location>/500.jsp</location>
    </error-page>


    <taglib>
        <taglib-uri>/WEB-INF/struts-bean</taglib-uri>
        <taglib-location>/WEB-INF/tld/struts-bean.tld</taglib-location>
    </taglib>
    <taglib>
        <taglib-uri>/WEB-INF/struts-logic</taglib-uri>
        <taglib-location>/WEB-INF/tld/struts-logic.tld</taglib-location>
    </taglib>
    <taglib>
        <taglib-uri>/WEB-INF/struts-html</taglib-uri>
        <taglib-location>/WEB-INF/tld/struts-html.tld</taglib-location>
    </taglib>











 <taglib>
        <taglib-uri>/WEB-INF/struts-tiles</taglib-uri>
        <taglib-location>/WEB-INF/tld/struts-tiles.tld</taglib-location>
    </taglib>
    <taglib>
        <taglib-uri>/WEB-INF/ntu</taglib-uri>
        <taglib-location>/WEB-INF/tld/ntu.tld</taglib-location>
    </taglib>






</web-app>

二:spring中注入相关service
<bean >
        <property >
            <ref bean="commonDAO" />
        </property>
    </bean>

三:AjaxTestServiceImp代码
public class AjaxTestServiceImp implements IAjaxTestService {
  
    private ICommonDAO commonDAO;









     
    public void setCommonDAO(ICommonDAO commonDAO) {
        this.commonDAO = commonDAO;
    }


    public List getEmployeeById(String deptid) {
        DetachedCriteria detachedCriteria=DetachedCriteria.forClass(Employee.class);
        detachedCriteria.setFetchMode(Employee.PROP_DEPTID,


        detachedCriteria.add(Restrictions.eq(Employee.PROP_DEPTID+".id",deptid));
        List result=commonDAO.findByCriteria(detachedCriteria);
        return result;
 }
}

四:dwr.xml配置
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE dwr PUBLIC "-//GetAhead Limited//DTD Direct Web Remoting 1.0//EN" "http://www.getahead.ltd.uk/dwr/dwr10.dtd">

<dwr>
 <allow>
  <create creator="spring" javascript="ajaxTestService">
   <param value="ajaxTestService" />
   <include method="getEmployeeById" />
  </create>
        <convert converter="bean" match="com.lion.cms.domain.pojo.Employee" />
        <param value="com.lion.cms.domain.pojo.Dept"/>
 </allow>
</dwr>

五:jsp页面
<html:select styleId="deptid" property="deptid" >
                <html:optionsCollection label="deptname" value="id"/>
            </html:select>
            <html:select property="employee" styleId="employee">
            <html:option value="" >请选择</html:option>
            </html:select>    

<script type="text/javascript">
<!--
    // 加载employee下拉列表。




















   function loadEmployList(deptid){
        if(deptid==null||deptid==´´){
        clearEmployeeSel();
        return;
        }
        ajaxTestService.getEmployeeById(loadEmployListCallback,deptid);
}
    var loadEmployListCallback=function(items){
        clearEmployeeSel();
        DWRUtil.addOptions("employee",
http://www.kpwang.com/items,"id","truename");
    }
    function clearEmployeeSel(){
        DWRUtil.removeAllOptions("employee");
        DWRUtil.addOptions("employee",[{label:´请选择´,value:´´}],"value","label");
    }
//-->
</script>


职工和部门是多对一关系,例子简单,不详细叙述了
dwr中spring和hibernate的配置相关帮助文档:
http://getahead.ltd.uk/dwr/server/spring
http://getahead.ltd.uk/dwr/server/hibernate


dept.hbm.xml代码如下:
<hibernate-mapping package="com.lion.cms.domain.pojo">
 <class
  
  table="dept"
 >
 <meta attribute="sync-DAO">false</meta>
   <id
   name="id"
   type="string"
   column="id"
  >
   <generator />
  </id>

  <property
   name="deptname"
   column="deptname"
   type="string"
   not-null="true"
   length="12"
  />
  <property
   name="creattime"
   column="creattime"
   type="java.lang.Long"
   not-null="false"
   length="20"
  />
 














 </class> 
</hibernate-mapping>


employee.hbm.xml代码如下:

<hibernate-mapping package="com.lion.cms.domain.pojo">
 <class
  name="Employee"
  table="employee"
 >
  <meta attribute="sync-DAO">false</meta>
  <id
   name="id"
   type="string"
   column="Id"
  >
   <generator />
  </id>


















  <property
   name="username"
   column="username"
   type="string"
   not-null="true"
   length="20"
  />
  <property
   name="password"
   column="password"
   type="string"
   not-null="false"
   length="20"
  />
  <property
   name="truename"
   column="truename"
   type="string"
   not-null="false"
   length="11"
  />
  <property
   name="sex"
   column="sex"
   type="string"
   not-null="false"
   length="2"
  />
  <property
   name="intro"
   column="intro"
   type="string"
   not-null="false"
  />
  <many-to-one
   name="deptid"
   column="deptid"
   class="Dept"
   not-null="true"
  >
  </many-to-one>








































 </class> 
</hibernate-mapping>

用hibernate同步插件可以快速生成po



















































分享到:
评论

相关推荐

    dwr 使用例子,一目了然

    标题"使用DWR的例子"暗示我们将讨论如何在实际项目中应用DWR。DWR的核心特性包括自动类型转换、安全机制、缓存管理以及错误处理等。在这个例子中,我们可能会看到如何配置DWR引擎,创建Java服务,以及在客户端...

    java dwr 使用例子

    对于初学者来说,这是一个很好的起点,它涵盖了DWR基本的使用方式和配置,同时也提供了一个可运行的示例,帮助理解Ajax通信的工作原理。通过深入学习和实践,你可以利用DWR构建更复杂的交互式Web应用。

    dwr使用例子配置和使用

    下面我们将详细探讨DWR的配置和使用方法。 首先,配置DWR涉及以下几个关键步骤: 1. **引入DWR库**:在项目中添加dwr.jar,这是DWR的核心库,包含了所有必要的类和接口。 2. **创建Java类**:定义你需要在客户端...

    DWR使用实例及文档

    DWR的使用通常涉及以下几个核心概念: 1. **Remoting**:远程方法调用,DWR通过JavaScript在浏览器端调用服务器端的Java方法,使得前端开发人员可以像操作本地对象一样操作服务器上的数据和业务逻辑。 2. **Ajax**...

    Dwr的使用实例

    Dwr的使用实例 war文件 1. lib要导入包: dwr-2.0.M3.jar 2. web.xml配置: 3. WEB-INF下dwr.xml的配置 4. bean例子: 5. index.jsp的例子 详细内容请下载

    dwr经典实例(9个常用实例)

    这个压缩包文件"dwrtest"很可能包含了9个经典的DWR实例,这些实例通常会展示DWR的主要功能和用法。以下是关于DWR的一些关键知识点的详细介绍: 1. **远程方法调用(RMI-like)**: DWR的核心特性是能够像本地方法一样...

    dwr+spring实例

    本实例"DWRSpring实例"是一个使用DWR与Spring框架结合的消息发布系统,包含了基础的CRUD(Create、Read、Update、Delete)操作。通过这个例子,我们可以深入理解DWR和Spring如何协同工作,以及它们在实际开发中的...

    简单使用dwr完整例子

    在这个"简单使用DWR完整例子"中,我们将深入理解DWR的基本概念、配置、以及如何在SSH(Spring、Struts、Hibernate)技术框架下集成和应用DWR。 首先,了解DWR的核心概念至关重要。DWR通过JavaScript API使得Java...

    DWR小例子_DEMO

    通过这个DEMO,开发者可以亲手实践上述知识点,从实例中深入理解DWR的工作原理和使用技巧。同时,详细的说明文件会指导你逐步完成每个步骤,确保你能有效地学习和掌握DWR这一强大的Web开发工具。对于想要提升Web应用...

    dwr工程实例,基本于myeclipse.

    首先,"dwr工程实例"表明我们将接触到一个实际的项目,这个项目已经包含了使用DWR技术的代码和配置。MyEclipse是基于Eclipse的Java EE集成开发环境,非常适合于开发和调试Web应用程序,包括DWR项目。 在导入这个...

    dwr实例,dwr例子,能直接运行,很实用

    在这个“dwr实例”中,提供的内容可能是为了帮助初学者快速理解和应用DWR框架。通过直接运行的示例,学习者可以直观地看到DWR如何工作,如何在前端和后端之间传递数据,以及如何实现实时更新的Web界面。这对于理解...

    dwr 实例 Dwr实例

    自己写的dwr实例。方便大家学习,包括jar文件,希望对大家有帮助

    dwr 例子

    在这个名为“dwr例子”的压缩包中,包含了一个名为“dwrdemo1”的示例项目。这个项目可能是一个简单的DWR应用,用于展示如何配置和使用DWR框架。下面,我们将详细讨论DWR的关键概念和使用方法。 1. **DWR配置**: ...

    DWR 框架使用手册

    5. **使用DWR**:在JavaScript中,你可以通过DWR创建一个远程对象实例,然后像调用本地函数一样调用远程Java方法。DWR会自动处理数据序列化和反序列化,以及异步调用的处理。 6. **DWR的API**:DWR提供了几个核心...

    学习dwr的一个例子

    总的来说,"学习dwr的一个例子"这个压缩包提供了一个实战平台,帮助初学者理解DWR的使用方法和它在实际项目中的应用,通过学习和研究这个例子,你将能够熟练地将DWR集成到你的Web应用中,提升Web应用的交互性和性能...

    extjs_dwr整合例子

    ExtJS和Direct Web Remoting(DWR)是两种在Web开发中常见的技术,它们结合使用可以构建出交互性极强的富客户端应用。本压缩包文件"Extjs+Dwr"提供了一个整合ExtJS和DWR的例子,让我们来详细探讨一下这两个技术以及...

    Spring DWR配置实例

    标题“Spring DWR配置实例”表明我们将探讨如何在Spring框架中集成并配置DWR。以下是一些关键的配置步骤和相关知识点: 1. **引入依赖**:首先,你需要在你的Maven或Gradle构建文件中添加DWR的依赖。确保版本与你的...

    dwr简单例子

    在这个名为“dwr简单例子”的项目中,我们很可能会看到如何在实际应用中设置和使用DWR的基本步骤。下面将详细介绍DWR的关键概念和这个示例可能包含的组件。 1. **DWR框架概述** DWR的核心功能是提供一种安全、高效...

    Dwr最简单例子(2.0)

    在这个"Dwr最简单例子(2.0)"中,我们将探讨如何使用DWR 2.0设置一个基础的应用程序,以便理解其核心概念和工作原理。首先,我们需要了解DWR的基本组件: 1. **配置文件**:DWR的配置文件(通常为`dwr.xml`)定义了...

    dwr2.0最简单例子实用亲测试

    在“dwr2.0最简单例子实用亲测试”中,我们可以预期这是一个关于如何使用DWR 2.0版本的入门教程,包含了实际可运行的示例代码。下面将详细介绍DWR的基本概念和在这个实例中可能涉及的关键知识点: 1. **DWR的核心...

Global site tag (gtag.js) - Google Analytics