1.Spring+DWR 全注解版 搭建 Spring3.1.1 DWR3
1)普通调用
2)异步文件上传
3)反向 Ajax的全推及半推
2.部分配置
1)web.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">
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:applicationContext-*.xml</param-value>
</context-param>
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<servlet>
<servlet-name>dwr-invoker</servlet-name>
<servlet-class>org.directwebremoting.spring.DwrSpringServlet</servlet-class>
<init-param>
<param-name>debug</param-name>
<param-value>false</param-value>
</init-param>
<init-param>
<param-name>crossDomainSessionSecurity</param-name>
<param-value>false</param-value>
</init-param>
<init-param>
<param-name>allowScriptTagRemoting</param-name>
<param-value>true</param-value>
</init-param>
<init-param>
<param-name>activeReverseAjaxEnabled</param-name>
<param-value>true</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>dwr-invoker</servlet-name>
<url-pattern>/dwr/*</url-pattern>
</servlet-mapping>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
</web-app>
2)applicationContext-dwr.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:dwr="http://www.directwebremoting.org/schema/spring-dwr"
xmlns:dwra="http://www.directwebremoting.org/schema/spring-dwr-annotations"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.1.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.0.xsd
http://www.directwebremoting.org/schema/spring-dwr
http://www.directwebremoting.org/schema/spring-dwr-3.0.xsd
http://www.directwebremoting.org/schema/spring-dwr-annotations
http://www.directwebremoting.org/schema/spring-dwr-annotations.xsd">
<!-- -->
<context:annotation-config/>
<context:component-scan base-package="com.j4t.demo" />
<dwr:configuration>
<!--
<dwr:convert type="bean" class="com.demo.dwr3.spring3.bean.User" />
<dwr:convert type="bean" class="java.lang.StackTraceElement" />
<dwr:convert type="exception" class="java.lang.NullPointerException" />
<dwr:signatures>
<![CDATA[
import java.util.Map;
import java.util.List;
]]>
</dwr:signatures>
-->
</dwr:configuration>
<dwr:annotation-scan base-package="com.j4t.demo" scanDataTransferObject="true" scanRemoteProxy="true" />
<dwr:annotation-scan base-package="com.j4t.chat" scanDataTransferObject="true" scanRemoteProxy="true" />
<dwr:annotation-scan base-package="com.j4t.file" scanDataTransferObject="true" scanRemoteProxy="true" />
</beans>
package com.j4t.demo.model;
import org.apache.commons.lang.builder.ToStringBuilder;
import org.apache.commons.lang.builder.ToStringStyle;
import org.directwebremoting.annotations.DataTransferObject;
import org.directwebremoting.annotations.RemoteProperty;
@DataTransferObject
public class User {
@RemoteProperty
private String username;
@RemoteProperty
private String userpswd;
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getUserpswd() {
return userpswd;
}
public void setUserpswd(String userpswd) {
this.userpswd = userpswd;
}
@Override
public String toString() {
/** 需要commons-langs-2.x.jar **/
return ToStringBuilder.reflectionToString(this, ToStringStyle.SHORT_PREFIX_STYLE);
}
}
package com.j4t.demo.service;
import java.util.List;
import javax.servlet.http.HttpServletRequest;
import org.directwebremoting.annotations.RemoteMethod;
import org.directwebremoting.annotations.RemoteProxy;
import org.directwebremoting.spring.SpringCreator;
import org.springframework.beans.factory.annotation.Autowired;
import com.j4t.demo.dao.UserDao;
import com.j4t.demo.model.User;
@RemoteProxy(creator = SpringCreator.class, name = "userService")
public class UserService {
@Autowired
UserDao userDao;
@RemoteMethod
public void saveUser(User user)throws Exception {
userDao.save(user);
}
@RemoteMethod
public void saveUsers(List<User> ulist) {
for(User user:ulist){
userDao.save(user);
}
}
@RemoteMethod
public String sayHello(String msg,HttpServletRequest request)throws Exception {
return msg+" "+request.getSession().getId();
}
}
分享到:
相关推荐
这个"struts2.2.1+spring 3.0.3+hibernate3.6+dwr3.0全注解整合包"是将这些框架结合在一起,使用注解方式配置,简化了传统的XML配置文件,提高了开发效率和代码的可读性。以下是关于这四个框架及其整合的知识点: 1...
例如,使用`<context:component-scan>`标签扫描带有DWR注解的类。 3. **配置DWR**:在`dwr.xml`配置文件中,可以使用`<create>`标签手动配置可远程访问的Java类,但在全注解方式下,这部分配置可以省略,因为Spring...
标题中的“Spring2.5+DWR3.0整合实现autocomplete”是指在Web开发中,使用Spring 2.5框架与Direct Web Remoting (DWR) 3.0库结合,来实现一个自动补全(autocomplete)功能。这个功能常见于搜索引擎、表单输入等场景...
### 最新版本Struts2.1.8+Spring3.0+Hibernate3.3.2+DWR2.0.6配置详解 在本篇内容中,我们将详细探讨如何搭建一个基于Struts2.1.8、Spring3.0、Hibernate3.3.2以及DWR2.0.6的Web应用程序框架。这一组合被称为SSH+...
### jsp源码OA办公自动化管理系统(Struts1.2+Hibernate3.0+Spring2+DWR)知识点解析 #### 一、项目概述 该OA办公自动化管理系统是基于JSP技术栈开发的一个完整项目,主要涵盖了Struts1.2、Hibernate3.0、Spring2...
2. **Spring托管的Java类暴露给JavaScript**:通过Spring的`@Service`或`@Component`注解标记Java类,然后在DWR配置中声明这些类,使它们可被JavaScript调用。 3. **依赖注入**:DWR中的Java对象可以直接利用Spring...
在Spring的配置文件(如`applicationContext.xml`)中,需要配置一个`dwr`的`Bean`,并启用注解扫描。例如: ```xml <bean id="dwrConfiguration" class="org.directwebremoting.spring.DwrSpringConfigurator"> ...
9. **commons-attributes-api.jar**:Apache Commons Attributes API,用于处理Java注解和属性元数据。 这些jar文件确保了SSH和DWR框架的正常运行,并且它们之间没有冲突,因为每个库都有明确的职责范围,互不干扰...
标题中的"Hibernate+Spring+Struts2+ExtJS"是一个经典的Java Web开发框架组合,也被称为SSH2(Struts2, Spring, Hibernate)与ExtJS的集成。这个组合在过去的几年里广泛应用于企业级应用开发,提供了强大的数据持久...
### Spring 2中整合DWR 2:详细解析与实践 #### 一、Spring与DWR简介 在探讨如何在Spring 2框架中整合DWR 2之前,我们首先需要了解这两个技术的基本概念。 - **Spring框架**:Spring是目前Java开发中最流行的开源...
本文将深入探讨如何在Dwr3.0中实现这种纯注解配置,并讲解前端如何调用后端的方法。 首先,让我们回顾一下后端的配置。在纯Java配置的Dwr3.0中,我们不再需要在dwr.xml中声明暴露的服务。相反,我们可以在Servlet的...
- Spring 3.0引入了对RESTful服务的支持,这可以通过`@RequestMapping`注解实现。你可以为DWR暴露的每个方法定义一个RESTful URL,使服务对任何HTTP客户端都可用,而不仅仅是JavaScript。 7. **项目结构**: - `....
【全中文】 SPRING STRUTS HIBERNATE DWR IBATIS 是一套全面的JavaEE开发框架学习资源,涵盖了五个关键的技术领域:Spring、Struts、Hibernate、DWR和iBATIS。这些技术在现代企业级应用开发中占据着核心地位,它们...
本主题聚焦于一个经典的Java企业级应用架构:Spring 2.5、iBatis 2.3、Struts 2.1 和 DWR 3 的整合,以及使用注解(Annotation)进行配置。这四个组件的结合可以构建出一个功能强大、可扩展性好、易于维护的Web应用...
dwr和spring的整合做下整理,以及对网页版的聊天功能做了一个简单的Demo,用了注解的方式,使用dwr框架来把Java代码,通过Javascript方式调用。功能虽不全,但集成是从网络上获取的,加以修改。希望对网友有用。
2. **自动暴露Java对象**:DWR支持自动暴露Java对象到JavaScript,只需简单的注解,就可以使Java类及其方法可供JavaScript使用。这样,开发者可以在不编写大量JavaScript代码的情况下实现前后端交互。 3. **安全...
- `dwr-spring.jar`:如果项目使用Spring框架,此库可以帮助整合DWR和Spring。 - `dwr-annotations.jar`:提供了Java注解支持,简化配置和代码。 为了在项目中使用这些jar包,你需要将它们添加到项目的类路径中,...
Spring 2.0版本增强了对JSR-250注解的支持,引入了Spring MVC作为Web层解决方案,并加强了与Hibernate和其他持久层框架的集成。Spring还提供了事务管理、数据源配置、单元测试等功能,使得复杂应用的构建更加容易。 ...
DWR与其他技术如Spring、Struts等可以很好地集成,以增强Web应用的功能。同时,DWR支持多种浏览器,包括较旧的版本,使其在各种环境中具有良好的兼容性。 通过理解DWR 3.0的核心功能和Apache Commons Logging的...