`
Hillen.chan
  • 浏览: 62612 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

使用DWR注解Annotation

阅读更多


文章分类:Web前端
Struts 2,Spring,Hibernate 都可以使用Annotation来代替XML的配置,DWR也可以使用Annotation注解来代替XML的配置


要使用Annotation注解,就得在web.xml中配DWR核心Servlet的时候加一个参数(classes),此参数会自动加载那些Java类

先看web.xml文件的配置:

Xml代码
<?xml version="1.0" encoding="UTF-8"?>  
<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee"  
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee   
    http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">  
  
    <!-- 配置DWR的核心Servlet -->  
    <servlet>  
        <!-- 指定DWR核心Servlet的名字 -->  
        <servlet-name>dwr-invoker</servlet-name>  
        <!-- 指定DWR核心Servlet的实现类 -->  
        <servlet-class>org.directwebremoting.servlet.DwrServlet</servlet-class>  
        <!--  指定DWR核心Servlet处于调试状态 -->  
        <init-param>  
            <param-name>debug</param-name>  
            <param-value>true</param-value>  
        </init-param>  
        <!-- 配置DWR自动加载哪些Java类 -->  
        <init-param>  
            <param-name>classes</param-name>  
            <param-value>com.lbx.dwr.annotation.test.Test,com.lbx.dwr.annotation.model.Person</param-value>  
        </init-param>  
    </servlet>  
    <!-- 指定核心Servlet的URL映射 -->  
    <servlet-mapping>  
        <servlet-name>dwr-invoker</servlet-name>  
        <!-- 指定核心Servlet映射的URL -->  
        <url-pattern>/dwr/*</url-pattern>  
    </servlet-mapping>  
  
    <welcome-file-list>  
        <welcome-file>index.jsp</welcome-file>  
    </welcome-file-list>  
</web-app>  

相关的Java处理类@RemoteProxy相当<create... >
Java代码
package com.lbx.dwr.annotation.test;  
  
import org.directwebremoting.annotations.RemoteProxy;  
import org.directwebremoting.create.NewCreator;  
  
import com.lbx.dwr.annotation.model.Person;  
  
@RemoteProxy(creator=NewCreator.class,name="Demo")  
public class Test {  
      
    //定义一个简单方法  
    public String hello(Person person){  
        return person.getName() + ",你好";  
    }  
      
}  
 @DataTransferObject转换相当 <convert... >@RemoteProperty
表明那些属性是可转换的
Java代码 
package com.lbx.dwr.annotation.model;  
  
import org.directwebremoting.annotations.DataTransferObject;  
import org.directwebremoting.annotations.RemoteProperty;  
  
@DataTransferObject  
public class Person {  
    //使用Annotation标识下面两个属性是可转换的属性  
    @RemoteProperty  
    private String name;  
    @RemoteProperty  
    private int age;  
      
    public Person() {  
          
    }  
    public String getName() {  
        return name;  
    }  
    public void setName(String name) {  
        this.name = name;  
    }  
    public int getAge() {  
        return age;  
    }  
    public void setAge(int age) {  
        this.age = age;  
    }  
      
}  

客户端JSP代码
Html代码
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>  
<%  
String path = request.getContextPath();  
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";  
%>  
  
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">  
<html>  
    <head>  
        <base href="<%=basePath%>">  
  
        <title>DWR的Annotation支持</title>  
        <meta http-equiv="pragma" content="no-cache">  
        <meta http-equiv="cache-control" content="no-cache">  
        <meta http-equiv="expires" content="0">  
        <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">  
        <meta http-equiv="description" content="This is my page">  
        <script type='text/javascript' src='dwr/interface/Demo.js'></script>  
        <script type='text/javascript' src='dwr/engine.js'></script>  
        <script type='text/javascript' src='dwr/util.js'></script>  
        <script type="text/javascript">  
            function sendMessage(){  
                var p = {  
                            name:dwr.util.getValue("name"),  
                            age:"23"  
                        }  
                Demo.hello(p,cb);  
            }  
            function cb(data){  
                $("show").innerHTML = data;  
            }  
        </script>  
    </head>  
  
    <body>  
        <h3>  
            DWR的Annotation支持  
        </h3>  
        请输入您的名字  
        <input id="name" name="name" type="text" />  
        <br />  
        <input type="button" value="发送请求" onclick="sendMessage();" />  
        <hr />  
        下面是服务器的回应:  
        <br />  
        <div id="show"></div>  
    </body>  
</html>  


原文连接:http://550516671-qq-com.iteye.com/blog/831824
分享到:
评论

相关推荐

    spring2.5 ibatis2.3 struts2.1 dwr3 annotation集成配置

    本主题聚焦于一个经典的Java企业级应用架构:Spring 2.5、iBatis 2.3、Struts 2.1 和 DWR 3 的整合,以及使用注解(Annotation)进行配置。这四个组件的结合可以构建出一个功能强大、可扩展性好、易于维护的Web应用...

    Dwr3+Spring3 全注解 annotation 方式

    例如,使用`&lt;context:component-scan&gt;`标签扫描带有DWR注解的类。 3. **配置DWR**:在`dwr.xml`配置文件中,可以使用`&lt;create&gt;`标签手动配置可远程访问的Java类,但在全注解方式下,这部分配置可以省略,因为Spring...

    配置整合DWR3.0和Spring2.5使用annotation注解

    在本文中,我们将探讨如何将Direct Web Remoting (DWR) 3.0与Spring 2.5框架整合,并利用注解(Annotation)进行配置。DWR是一个允许JavaScript与Java服务器端进行交互的库,而Spring 2.5引入了对注解的强大支持,...

    spring使用annotation整合dwr笔记

    -- 配置DWR注解支持 --&gt; &lt;dwr:annotation-config/&gt; ``` - **配置URL Mapping**:使用`&lt;dwr:url-mapping/&gt;`标签定义DWR服务的URL映射规则。 ```xml &lt;!-- URL Mapping配置 --&gt; &lt;dwr:url-mapping/&gt; ``` - **定义...

    Spring+DWR 全注解版

    在Demo_Spring_Dwr_Annotation这个文件名中,我们可以推断出这可能是一个包含演示Spring和DWR集成的项目,而且使用了全注解的方式来配置。以下是一些可能包含的知识点: 1. **Spring框架**: Spring是Java企业级应用...

    DWR的使用方法

    这可以通过在类上使用`@RemoteInterface`注解实现,如下: ```java import uk.ltd.getahead.dwr.annotation.RemoteInterface; @RemoteInterface public class MyRemoteService { public String sayHello(String ...

    DWR3.0例子(注解)

    通过分析 "MedbriDwrApp",你可以深入理解 DWR 3.0 的实际应用,包括如何配置和使用注解,以及如何在前端页面中调用这些功能。这个示例是一个很好的学习起点,帮助你掌握 DWR 在实际开发中的应用技巧。 总结来说,...

    Spring+Dwr整合的项目(源码)

    - `src`目录:包含了项目的源代码,可能包括Spring的配置文件、Java业务逻辑类以及使用DWR注解的类。 - `web`目录:包含了Web应用的资源文件,如HTML、CSS、JavaScript以及Spring的DispatcherServlet配置、DWR的...

    spring整合dwr

    同时,使用`&lt;dwr:annotation-scan&gt;`来扫描带有DWR注解的类,以便自动配置: ```xml &lt;dwr:annotation-scan scanRemoteProxy="true" base-package="com.masadora.service" /&gt; ``` 最后,配置DWR控制器(`&lt;dwr:...

    dwr框架详细介绍 讲解浅显易懂

    在DWR 2.0版本中,引入了JDK5的注解(Annotation)功能,这大大简化了原本需要在dwr.xml配置文件中的设置。通过注解,我们可以更直观地在Java类和方法上声明哪些需要暴露给客户端。以下是DWR配置和注解的详细讲解: ...

    《ajax框架:dwr与ext》实战

    6. **使用ANNOTATION代替DWR.XML配置**: - 探讨如何使用注解来替代XML配置。 - 注解的优势及其应用场景。 7. **ENGINE.JS说明**: - ENGINE.JS是DWR的核心JavaScript库之一。 - 解释其主要职责和内部工作原理...

    ajax框架:dwr》实战(包括整合)

    - **使用 ANNOTATION 代替 DWR.XML 配置**:介绍如何使用注解来替代 XML 配置文件,以简化配置过程。 #### 四、DWR+SPRING+HIBERNATE 整合实战 **1. DWR+SPRING+HIBERNATE 结构说明** - **DWR**:处理前端 AJAX ...

    ajax框架:dwr》实战(包括整合).pdf

    - **使用 ANNOTATION 代替 DWR.XML 配置**:介绍了如何利用注解来简化配置过程,提高开发效率。 - **ENGINE.JS 和 UTIL.JS**:这两个文件是 DWR 的核心组成部分,分别负责处理客户端与服务器之间的通信以及提供一些...

    springMVC整合DWR3.0 实例

    -- 开启注解驱动 --&gt; &lt;mvc:annotation-driven/&gt; &lt;!-- 静态资源映射 --&gt; **" location="/WEB-INF/resources/"/&gt; &lt;!-- 配置InternalResourceViewResolver --&gt; &lt;!-- DWR相关配置 --&gt; &lt;dwr:...

    s2sh+dwr+extjs基于annoation三个项目实战

    在本项目实战中,我们将深入探讨如何利用"Spring 2.5 + Struts 2 + Hibernate (S2SH)"框架,结合Direct Web Remoting (DWR) 和ExtJS技术,来构建一个基于注解(Annotation)的高效Web应用程序。这个实战涵盖了三个...

    Dwr3.0纯注解(纯Java Code配置)配置与应用浅析三之后端反向调用前端

    在DWR 3.0版本中,开发者可以选择使用注解(Annotation)和纯Java代码配置来简化配置过程。本文将深入探讨如何在后端实现反向调用前端JavaScript方法的功能。 首先,了解DWR的核心功能之一——异步推送(Push)。在...

Global site tag (gtag.js) - Google Analytics