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

小试Annotation回配置DWR

2013-01-28 
小试Annotation来配置DWRDWR2.0以上版本支持通过配置Annotation的方式来配置DWR,可以完全抛弃dwr.xml.1.和

小试Annotation来配置DWR
DWR2.0以上版本支持通过配置Annotation的方式来配置DWR,
可以完全抛弃dwr.xml.

1.和用dwr.xml的配置稍稍有一些不一样。来看看:

小试Annotation回配置DWR<?xml version="1.0" encoding="UTF-8"?>
小试Annotation回配置DWR<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee"
小试Annotation回配置DWR    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
小试Annotation回配置DWR    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
小试Annotation回配置DWR    http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
小试Annotation回配置DWR
小试Annotation回配置DWR    <servlet>
小试Annotation回配置DWR        <servlet-name>dwr-invoker</servlet-name>
小试Annotation回配置DWR        <servlet-class>
小试Annotation回配置DWR            org.directwebremoting.servlet.DwrServlet
小试Annotation回配置DWR        </servlet-class>
小试Annotation回配置DWR        
小试Annotation回配置DWR        <init-param>
小试Annotation回配置DWR            <param-name>debug</param-name>
小试Annotation回配置DWR            <param-value>true</param-value>
小试Annotation回配置DWR        </init-param>
小试Annotation回配置DWR        <init-param>
小试Annotation回配置DWR            <param-name>classes</param-name>
小试Annotation回配置DWR            <param-value>
小试Annotation回配置DWR            com.TestAction,
小试Annotation回配置DWR            com.User
小试Annotation回配置DWR            </param-value>
小试Annotation回配置DWR        </init-param>
小试Annotation回配置DWR    </servlet>
小试Annotation回配置DWR
小试Annotation回配置DWR    <servlet-mapping>
小试Annotation回配置DWR        <servlet-name>dwr-invoker</servlet-name>
小试Annotation回配置DWR        <url-pattern>/dwr/*</url-pattern>
小试Annotation回配置DWR    </servlet-mapping>
小试Annotation回配置DWR
小试Annotation回配置DWR
小试Annotation回配置DWR
小试Annotation回配置DWR    <welcome-file-list>
小试Annotation回配置DWR        <welcome-file>index.jsp</welcome-file>
小试Annotation回配置DWR    </welcome-file-list>
小试Annotation回配置DWR</web-app>
小试Annotation回配置DWR
注意对于内部类的语法标识,要用$符号 。例如
java.util.Map$Entry 而不是 java.util.Map.Entry

2.来看一下远程访问类怎么配置:
小试Annotation回配置DWRpackage com;
小试Annotation回配置DWR
小试Annotation回配置DWRimport org.directwebremoting.annotations.RemoteMethod;
小试Annotation回配置DWRimport org.directwebremoting.annotations.RemoteProxy;
小试Annotation回配置DWR/*
小试Annotation回配置DWR  类注解,其中name是非必须的。不加的时候就和类名一样。
小试Annotation回配置DWR*/
小试Annotation回配置DWR@RemoteProxy(name = "test")
小试Annotation回配置DWRpublic class TestAction
小试Annotation回配置DWR{
小试Annotation回配置DWR    /**
小试Annotation回配置DWR     * 远程调用的方法都须加上此注解,否则无法调用 
小试Annotation回配置DWR     * @param a
小试Annotation回配置DWR     * @param b
小试Annotation回配置DWR     * @return
小试Annotation回配置DWR     */
小试Annotation回配置DWR    @RemoteMethod
小试Annotation回配置DWR    public int add(int a, int b)
小试Annotation回配置DWR    {
小试Annotation回配置DWR        return a + b;
小试Annotation回配置DWR    }
小试Annotation回配置DWR
小试Annotation回配置DWR    @RemoteMethod
小试Annotation回配置DWR    public int minus(int a, int b)
小试Annotation回配置DWR    {
小试Annotation回配置DWR        return a - b;
小试Annotation回配置DWR    }
小试Annotation回配置DWR
小试Annotation回配置DWR    @RemoteMethod
小试Annotation回配置DWR    public int multiply(int a, int b)
小试Annotation回配置DWR    {
小试Annotation回配置DWR        return a * b;
小试Annotation回配置DWR    }
小试Annotation回配置DWR
小试Annotation回配置DWR    public int devide(int a, int b)
小试Annotation回配置DWR    {
小试Annotation回配置DWR        if (b != 0)
小试Annotation回配置DWR            return a / b;
小试Annotation回配置DWR        return 0;
小试Annotation回配置DWR    }
小试Annotation回配置DWR
小试Annotation回配置DWR    // 测试Bean
小试Annotation回配置DWR    @RemoteMethod
小试Annotation回配置DWR    public String testName()
小试Annotation回配置DWR    {
小试Annotation回配置DWR        User user = new User();
小试Annotation回配置DWR        user.setUsername("zdw");
小试Annotation回配置DWR        return user.getUsername();
小试Annotation回配置DWR    }
小试Annotation回配置DWR}
小试Annotation回配置DWR
3.再来看看Bean的转换:
小试Annotation回配置DWRpackage com;
小试Annotation回配置DWR
小试Annotation回配置DWRimport org.directwebremoting.annotations.DataTransferObject;
小试Annotation回配置DWRimport org.directwebremoting.annotations.RemoteProperty;
小试Annotation回配置DWR
小试Annotation回配置DWR@DataTransferObject
小试Annotation回配置DWRpublic class User
小试Annotation回配置DWR{
小试Annotation回配置DWR    private Integer id;
小试Annotation回配置DWR    private String username;
小试Annotation回配置DWR
小试Annotation回配置DWR    @RemoteProperty
小试Annotation回配置DWR    public Integer getId()
小试Annotation回配置DWR    {
小试Annotation回配置DWR        return id;
小试Annotation回配置DWR    }
小试Annotation回配置DWR
小试Annotation回配置DWR    public void setId(Integer id)
小试Annotation回配置DWR    {
小试Annotation回配置DWR        this.id = id;
小试Annotation回配置DWR    }
小试Annotation回配置DWR
小试Annotation回配置DWR    @RemoteProperty
小试Annotation回配置DWR    public String getUsername()
小试Annotation回配置DWR    {
小试Annotation回配置DWR        return username;
小试Annotation回配置DWR    }
小试Annotation回配置DWR
小试Annotation回配置DWR    public void setUsername(String username)
小试Annotation回配置DWR    {
小试Annotation回配置DWR        this.username = username;
小试Annotation回配置DWR    }
小试Annotation回配置DWR}
部署之后,打开调试页,我们将看到:
小试Annotation回配置DWRadd(1 , 2 );  3
小试Annotation回配置DWRmultiply(4 ,5  );  20
小试Annotation回配置DWRminus(1 , 10 );  -9
小试Annotation回配置DWRdevide( 1,  1);  
小试Annotation回配置DWR(Warning: devide() is excluded: Method access is denied by rules in dwr.xml. See below) 
小试Annotation回配置DWRtestName( );  "zdw"
小试Annotation回配置DWR我们发现没标注释的devide()方法没法调用。

如果你想通过Spring注入来配置DWR只需加入:
小试Annotation回配置DWR@RemoteProxy(name = "test", creator = SpringCreator.class, creatorParams =
小试Annotation回配置DWR{ @Param(name = "beanName", value = "test") })对应:
小试Annotation回配置DWR<create javascript="test" creator="spring">
小试Annotation回配置DWR            <!-- 其中name是固定值,value是在xml注入的bean -->
小试Annotation回配置DWR            <param name="beanName" value="test" />
小试Annotation回配置DWR        </create>
creator :默认就是NewCreate了。

ok,基本完成,这样是不是方便多了。~

热点排行