SpringMVC整合DWR
来源:互联网 发布:斗鱼不承认淘宝鱼丸 编辑:程序博客网 时间:2024/04/28 17:16
版本信息:
Spring3.1.2
Dwr3.0.M1
web.xml配置信息
<!-- spring mvc --> <servlet> <servlet-name>dispatcherServlet</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:spring-mvc-servlet.xml</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>dispatcherServlet</servlet-name> <url-pattern>*.do</url-pattern> </servlet-mapping><servlet-mapping> <servlet-name>dispatcherServlet</servlet-name> <url-pattern>/dwr/*</url-pattern></servlet-mapping>
spring-mvc-servlet.xml中配置信息
<dwr:configuration><dwr:convert type="bean" class="org.mvn.dwr.model.User"></dwr:convert></dwr:configuration><dwr:url-mapping/> <dwr:controller id="dwrController" debug="true"/> <bean class="org.mvn.dwr.dao.impl.UserDaoImpl" id="userDaoImpl"></bean><bean class="org.mvn.dwr.service.impl.UserServiceImpl" id="userServiceImpl"><property name="userDao" ref="userDaoImpl"></property><dwr:remote javascript="dwrUserService"><dwr:include method="checkUsernameIsExists"/><dwr:include method="getUsername"/><dwr:include method="findUserById"/><dwr:include method="listAll"/></dwr:remote></bean>
User.java
package org.mvn.dwr.model;public class User {private long id;private String username;private String birthday;private String address;public User() {}public User(long id, String username, String birthday, String address) {super();this.id = id;this.username = username;this.birthday = birthday;this.address = address;}public long getId() {return id;}public void setId(long id) {this.id = id;}public String getUsername() {return username;}public void setUsername(String username) {this.username = username;}public String getBirthday() {return birthday;}public void setBirthday(String birthday) {this.birthday = birthday;}public String getAddress() {return address;}public void setAddress(String address) {this.address = address;}}
UserDao.java
package org.mvn.dwr.dao;import java.util.List;import org.mvn.dwr.model.User;public interface UserDao {boolean checkUsernameIsExists(String username);String getUsername(long id);User findUserById(long id);List<User> listAll();}
UserDaoImpl.java
package org.mvn.dwr.dao.impl;import java.util.ArrayList;import java.util.List;import org.mvn.dwr.dao.UserDao;import org.mvn.dwr.model.User;public class UserDaoImpl implements UserDao{@Overridepublic boolean checkUsernameIsExists(String username) {return true;}@Overridepublic String getUsername(long id) {return "dwrservice";}@Overridepublic User findUserById(long id) {return new User(1,"admin","1987-02-03","陕西西安");}public List<User> listAll(){List<User> lists=new ArrayList<User>();for (int i = 1; i <= 100; i++) {lists.add(new User(i,"admin"+i,"1987-02-03","陕西西安"+i));}return lists;}}
UserService.java
package org.mvn.dwr.service;import java.util.List;import org.mvn.dwr.model.User;public interface UserService {boolean checkUsernameIsExists(String username);String getUsername(long id);User findUserById(long id);List<User> listAll();}
UserServiceImpl.java
package org.mvn.dwr.service.impl;import java.util.List;import org.mvn.dwr.dao.UserDao;import org.mvn.dwr.model.User;import org.mvn.dwr.service.UserService;public class UserServiceImpl implements UserService {private UserDao userDao;public void setUserDao(UserDao userDao) {this.userDao = userDao;}@Overridepublic boolean checkUsernameIsExists(String username) {return userDao.checkUsernameIsExists(username);}@Overridepublic String getUsername(long id) {return userDao.getUsername(id);}@Overridepublic User findUserById(long id) {return userDao.findUserById(id);}@Overridepublic List<User> listAll() {return userDao.listAll();}}
在spring-mvc-servlet.xml中增加
xmlns:dwr="http://www.directwebremoting.org/schema/spring-dwr"
http://www.directwebremoting.org/schema/spring-dwr
http://www.directwebremoting.org/schema/spring-dwr-3.0.xsd
<dwr:configuration><dwr:convert type="bean" class="org.mvn.dwr.model.User"></dwr:convert></dwr:configuration><dwr:url-mapping/><dwr:controller id="dwrController" debug="true"/> <bean class="org.mvn.dwr.dao.impl.UserDaoImpl" id="userDaoImpl"></bean><bean class="org.mvn.dwr.service.impl.UserServiceImpl" id="userServiceImpl"><property name="userDao" ref="userDaoImpl"></property><dwr:remote javascript="dwrUserService"><dwr:include method="checkUsernameIsExists"/><dwr:include method="getUsername"/><dwr:include method="findUserById"/><dwr:include method="listAll"/></dwr:remote></bean>
<dwr:configuration>
<dwr:convert type="bean" class="org.mvn.dwr.model.User"></dwr:convert>
</dwr:configuration>
表示把User进行转换
<dwr:url-mapping/>
<dwr:controller id="dwrController" debug="true"/>
两个不能少
<dwr:remote javascript="dwrUserService">
<dwr:include method="checkUsernameIsExists"/>
<dwr:include method="getUsername"/>
<dwr:include method="findUserById"/>
<dwr:include method="listAll"/>
</dwr:remote>
dwrUserService为指定dwr生成js文件的名称
dwr:include表示那些方法需要开启远程调用
最后别忘了配置
<bean id="simpleUrlHandlerMapping" class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping"><property name="alwaysUseFullPath" value="true"></property><property name="mappings"><props><prop key="/dwr/*">dwrController</prop><prop key="/interface/**">dwrController</prop></props></property></bean>
最后在浏览器访问http://localhost:8080/webapp/dwr/
这里有一个奇怪的问题
就是上面的dao和service用注解注入的时候会报千奇百怪的异常信息。也不知道是什么原因,暂且不去管了,在整个整合过程中换了无数个dwr的jar包。可以说dwr的版本真的很坑爹。官方3.0系列至今没有发行正式版的版本,所以难免会出现千奇百怪的问题,有知道的朋友,可以告诉我一声,先谢过了。。。。
- SpringMVC整合DWR
- Springmvc整合dwr案例
- springmvc和DWR的整合
- dwr学习4-spring与dwr整合(非springmvc)
- SpringMVC整合DWR(Maven项目+jetty插件运行)
- DWR+SpringMVC整合的3种方式之一
- DWR+SpringMVC整合的3种方式之二
- DWR+SpringMVC整合的3种方式之三
- SpringMVC整合DWR(Maven项目+jetty插件运行)
- DWR+SpringMVC整合的3种方式之三
- DWR 整合
- springMVC+dwr
- dwr学习5-spring与dwr整合(springmvc模式,没有加入annotation)
- SpringMVC整合DWR时出现这样的错误Multiple annotations found at this line:
- DWR与Struts整合
- Spring+hibernate+DWR整合
- dwr spring整合
- Spring完全整合DWR
- python的线程锁机制
- 那年,那场青春繁华梦
- DWR实例总结
- SAP BW性能优化(SAP BW performace tuning)
- AD域、ldap协议检索数据的基本使用
- SpringMVC整合DWR
- 条码仓库管理
- GetLastError编号解释
- 日志分析整理
- Lucene学习——IKAnalyzer中文分词(二)
- 知其然,而不知其所以然
- 【excel VBA】怎么打开开发工具选项
- 数学之美番外篇:平凡而又神奇的贝叶斯方法(3)——刘未鹏
- js中替换字符串