首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

施用DWR注解Annotation

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

使用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

热点排行