日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > javascript >内容正文

javascript

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

發布時間:2025/7/14 javascript 18 豆豆
生活随笔 收集整理的這篇文章主要介紹了 配置整合DWR3.0和Spring2.5使用annotation注解 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

這里使用 DWR3.rc1, Spring2.5 and Spring MVC

?

在Spring2.5中,使用了許多annotation, 新版本的DWR也支持annotation了, 下面看一下配置過程

?

1. 先寫一個Controller

?

Java代碼
  • package?com.myapp.web.controller; ??
  • ??
  • import?javax.servlet.http.HttpServletRequest; ??
  • import?org.directwebremoting.annotations.RemoteMethod; ??
  • import?org.directwebremoting.annotations.RemoteProxy; ??
  • import?org.springframework.stereotype.Controller; ??
  • import?org.springframework.web.bind.annotation.RequestMapping; ??
  • ??
  • @Controller??
  • @RemoteProxy??
  • public?class?UserController?{ ??
  • ??
  • ????@RemoteMethod??
  • ????public?String?getUserName(int?id)?{ ??
  • ????????System.out.println("user?id?is?"?+?id); ??
  • ????????return?"UserName:?"?+?id; ??
  • ????} ??
  • ???? ??
  • ????@RequestMapping("/user/add.do") ??
  • ????public?String?addUser(HttpServletRequest?request)?{ ??
  • ????????System.out.println("this?is?action?method"); ??
  • ????????return?"/user/list.jsp"; ??
  • ????} ??
  • }??
  • package com.myapp.web.controller; import javax.servlet.http.HttpServletRequest; import org.directwebremoting.annotations.RemoteMethod; import org.directwebremoting.annotations.RemoteProxy; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; @Controller @RemoteProxy public class UserController { @RemoteMethod public String getUserName(int id) { System.out.println("user id is " + id); return "UserName: " + id; } @RequestMapping("/user/add.do") public String addUser(HttpServletRequest request) { System.out.println("this is action method"); return "/user/list.jsp"; } }

    ?

    @RemoteProxy注解告訴DWR,這個Class是我們想暴露出來的。@RemoteMethod注解告訴DWR去暴露這個指定的方法,只有加了RemoteMethod注解的方法會被暴露,其它的不會。

    這里也可以使用@RemoteProxy(name="userRemote")的方式指定DWR接口的名字

    ?

    2. 接下來看web.xml的配置

    ?

    Xml代碼
  • <servlet>??
  • ????<servlet-name>action</servlet-name>??
  • ????<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>??
  • ????<load-on-startup>1</load-on-startup>??
  • ???</servlet>??
  • ??
  • <context-param>??
  • ????<param-name>contextConfigLocation</param-name>??
  • ????<param-value>/WEB-INF/springconfig/*.xml</param-value>??
  • </context-param>??
  • ??
  • ???<servlet-mapping>??
  • ????<servlet-name>action</servlet-name>??
  • ????<url-pattern>*.do</url-pattern>??
  • ???</servlet-mapping>??
  • ??? ??
  • <servlet-mapping>??
  • ????<servlet-name>action</servlet-name>??
  • ????<url-pattern>/dwr/*</url-pattern>??
  • </servlet-mapping>??
  • ??
  • <listener>??
  • ????<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>??
  • </listener>??
  • <servlet> <servlet-name>action</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <load-on-startup>1</load-on-startup> </servlet> <context-param> <param-name>contextConfigLocation</param-name> <param-value>/WEB-INF/springconfig/*.xml</param-value> </context-param> <servlet-mapping> <servlet-name>action</servlet-name> <url-pattern>*.do</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>action</servlet-name> <url-pattern>/dwr/*</url-pattern> </servlet-mapping> <listener> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> </listener>

    ?

    注意,這里沒有使用org.directwebremoting.spring.DwrSpringServlet或org.directwebremoting.servlet.DwrServlet,并且請注意這里使用spring的dispatcher servlet來映射/dwr/*請求。

    ?

    3. 最后看針對DispatcherServlet的配置文件action-servlet.xml

    ?

    Xml代碼
  • <beans?xmlns="http://www.springframework.org/schema/beans"??
  • ????xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"??
  • ????xmlns:dwr="http://www.directwebremoting.org/schema/spring-dwr"??
  • ????xmlns:context="http://www.springframework.org/schema/context"??
  • ????xsi:schemaLocation="http://www.springframework.org/schema/beans ??
  • ????????http://www.springframework.org/schema/beans/spring-beans-2.5.xsd ??
  • ????????http://www.springframework.org/schema/context ??
  • ????????http://www.springframework.org/schema/context/spring-context-2.5.xsd? ??
  • ????????http://www.directwebremoting.org/schema/spring-dwr?? ??
  • ????????http://www.directwebremoting.org/schema/spring-dwr-3.0.xsd" ??
  • ????????default-autowire="byName">??
  • ??
  • ????<context:annotation-config?/>??
  • ???? ??
  • ????<!--?注意這里新增加的dwr?tag,?為使其生效,文件頭中要聲明namespace?-->??
  • ????<dwr:configuration?/>??
  • ????<dwr:annotation-config?/>??
  • ????<dwr:url-mapping?/>??
  • ???? ??
  • ????<!--?部署項目時,?請把debug設為false?-->??
  • ????<dwr:controller?id="dwrController"?debug="true"?/>??
  • ???? ??
  • ????<!--?多個包名用逗號隔開,?但不能有空格?-->??
  • ????<context:component-scan?base-package="com.myapp.web.controller"?/>??
  • ???? ??
  • ????<!--?order值越小,?優先級越高?-->??
  • ????<bean?class="org.springframework.web.servlet.mvc.annotation.DefaultAnnotationHandlerMapping">??
  • ????????<property?name="order"?value="1"?/>??
  • ????</bean>??
  • ????<bean?class="org.springframework.web.servlet.handler.BeanNameUrlHandlerMapping">??
  • ????????<property?name="order"?value="2"?/>??
  • ????</bean>??
  • ???? ??
  • ?</beans>??
  • <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:dwr="http://www.directwebremoting.org/schema/spring-dwr" xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-2.5.xsd http://www.directwebremoting.org/schema/spring-dwr http://www.directwebremoting.org/schema/spring-dwr-3.0.xsd" default-autowire="byName"> <context:annotation-config /> <!-- 注意這里新增加的dwr tag, 為使其生效,文件頭中要聲明namespace --> <dwr:configuration /> <dwr:annotation-config /> <dwr:url-mapping /> <!-- 部署項目時, 請把debug設為false --> <dwr:controller id="dwrController" debug="true" /> <!-- 多個包名用逗號隔開, 但不能有空格 --> <context:component-scan base-package="com.myapp.web.controller" /> <!-- order值越小, 優先級越高 --> <bean class="org.springframework.web.servlet.mvc.annotation.DefaultAnnotationHandlerMapping"> <property name="order" value="1" /> </bean> <bean class="org.springframework.web.servlet.handler.BeanNameUrlHandlerMapping"> <property name="order" value="2" /> </bean> </beans>

    ?

    簡單解釋一下這些配置

    • <dwr:annotation-config /> 要求DWR在Spring容器中檢查擁有@RemoteProxy 和 @RemoteMethod注解的類。注意它不會去檢查Spring容器之外的類。
    • <dwr:url-mapping /> 要求DWR將util.js和engine.js映射到dwrController
    • <dwr:controller id="dwrController" debug="true" /> 定義dwrController
    • <dwr:configuration /> 此標簽在這個例子中不是必須的,如果你想配置Spring容器之外的類,就需要它了。

    最后一件事,DWR的測試頁面 http://localhost:8080/myapp/dwr 在這里不好用。

    請使用 http://localhost:8080/myapp/dwr/test/YOUR-BEAN-NAME 的方式來測試你的DWR接口,

    例如這里使用 http://localhost:8080/myapp/dwr/test/UserController

    ?

    OK 運行測試一下吧

    總結

    以上是生活随笔為你收集整理的配置整合DWR3.0和Spring2.5使用annotation注解的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

    主站蜘蛛池模板: 性高跟丝袜xxxxhd | 黄色免费网 | av最新网| 黄色在线免费视频 | 喷水av | 亚洲一区二区不卡视频 | 国产欧美日韩专区 | 欧美一区二区在线视频观看 | 娇妻之欲海泛舟无弹窗笔趣阁 | 欧美破处女 | 三级黄色免费网站 | av香港经典三级级 在线 | 国产成人三级在线观看 | 欧洲精品免费一区二区三区 | 中国女人av | 天天综合天天综合 | 亚洲精品天堂成人片av在线播放 | 国产91在线 | 亚洲 | 热播之家 | 天天想你免费观看完整版高清电影 | 我和公激情中文字幕 | 三级福利视频 | 狠狠躁狠狠躁视频专区 | 成人av18| 又粗又猛又爽又黄的视频 | 香蕉久久精品日日躁夜夜躁 | 91免费在线播放 | 欧美群交射精内射颜射潮喷 | 九九九九九九精品 | 日韩精选视频 | av私库在线观看 | 四虎影院色 | 日免费视频 | 激情免费网站 | 国产欧美一区二区精品忘忧草 | 欧美性生交xxxxx久久久缅北 | 天天综合中文字幕 | 欧美色视频一区二区三区 | 亚洲丁香婷婷 | 亚洲视频在线一区二区 | 国产浪潮av | 中文字幕在线播放一区 | 精品久久人人妻人人做人人 | 插插插操操操 | 91gao | 国产男女自拍 | 日韩色av | 人人妻人人澡人人爽人人dvd | 天天搞夜夜爽 | 黄色aa网站 | 欧美性极品 | 一级黄色欧美 | 岛国av在线| 少妇又色又紧又黄又刺激免费 | 中文字幕一区二区三区四区不卡 | 成人在线手机视频 | 长篇h版少妇沉沦交换 | 新国产视频 | 午夜看片福利 | 国产日产精品一区 | 肥熟女一区二区三肥熟女 | se欧美 | 亚洲调教 | 国产99免费 | 无码精品黑人一区二区三区 | 性感美女高潮 | 日本一区二区三区免费观看 | 免费日皮视频 | 高潮毛片无遮挡免费看 | 在线免费观看h片 | 丁香婷婷网 | 深夜福利免费在线观看 | 亚洲一在线| 国产日韩欧美中文 | 亚州国产精品 | av射进来| av成人在线免费观看 | 少妇毛片一区二区三区粉嫩av | 欧美日韩国产电影 | 日韩一区二区精品视频 | 欧美成年人 | 在线免费| 裸体视频软件 | 麻豆porn| 国产91黄色 | 九九精品网 | 美女黄色av| 91在线无精精品一区二区 | 亚洲成a人v欧美综合天堂麻豆 | 精品妇女一区二区三区 | 少妇高潮淫片免费观看 | 日韩在线观看精品 | 成人亚洲国产 | 日本久久久久久久久久 | 香蕉国产999| 亚洲视频91 | 男人天堂一区二区 | 毛片少妇 | 免费国产小视频 |