`
Jeenry119
  • 浏览: 69286 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

SSH+DWR配置

阅读更多

http://blog.csdn.net/shibingli/article/details/5309694


项目所需要用的包(包含常用包):

 antlr-2.7.6.jar
 aopalliance-1.0.jar
 asm-all-3.2.jar
 cglib-2.2.jar
 commons-beanutils-1.8.2.jar
 commons-codec-1.4.jar
 commons-collections-3.2.1.jar
 commons-digester-2.0.jar
 commons-fileupload-1.2.1.jar
 commons-io-1.4.jar
 commons-lang-2.4.jar
 commons-logging-1.1.1.jar
 commons-validator-1.3.1.jar
 dom4j-1.7.jar
 dwr-2.06.jar
 ehcache-1.2.3.jar
 ejb3-persistence.jar
 ezmorph-1.0.3.jar
 freemarker-2.3.15.jar
 hibernate-annotations.jar
 hibernate-commons-annotations.jar
 hibernate-entitymanager.jar
 hibernate-search-3.1.1.GA.jar
 hibernate-validator-4.0.2.GA.jar
 hibernate3.jar
 jakarta-oro-2.0.8.jar
 javassist-3.9.0.GA.jar
 json-lib-2.3-jdk15.jar
 jstl.jar
 jta-1.1.jar
 jtds-1.2.5.jar
 junit-4.8.1.jar
 log4j-1.2.8.jar
 ognl-2.7.3.jar
 org.springframework.aop-3.0.0.RELEASE.jar
 org.springframework.asm-3.0.0.RELEASE.jar
 org.springframework.aspects-3.0.0.RELEASE.jar
 org.springframework.beans-3.0.0.RELEASE.jar
 org.springframework.context-3.0.0.RELEASE.jar
 org.springframework.context.support-3.0.0.RELEASE.jar
 org.springframework.core-3.0.0.RELEASE.jar
 org.springframework.expression-3.0.0.RELEASE.jar
 org.springframework.instrument-3.0.0.RELEASE.jar
 org.springframework.instrument.tomcat-3.0.0.RELEASE.jar
 org.springframework.jdbc-3.0.0.RELEASE.jar
 org.springframework.jms-3.0.0.RELEASE.jar
 org.springframework.orm-3.0.0.RELEASE.jar
 org.springframework.oxm-3.0.0.RELEASE.jar
 org.springframework.test-3.0.0.RELEASE.jar
 org.springframework.transaction-3.0.0.RELEASE.jar
 org.springframework.web-3.0.0.RELEASE.jar
 org.springframework.web.portlet-3.0.0.RELEASE.jar
 org.springframework.web.servlet-3.0.0.RELEASE.jar
 org.springframework.web.struts-3.0.0.RELEASE.jar
 poi-3.5-FINAL-20090928.jar
 proxool-0.9.1.jar
 proxool-cglib.jar
 pull-parser-2.1.10.jar
 slf4j-api-1.5.10.jar
 slf4j-log4j12-1.5.10.jar
 slf4j-nop-1.5.10.jar
 standard.jar
 struts2-convention-plugin-2.1.8.1.jar
 struts2-core-2.1.8.1.jar
 struts2-dwr-plugin-2.1.8.1.jar
 struts2-json-plugin-2.1.8.1.jar
 struts2-spring-plugin-2.1.8.1.jar
 velocity-1.5.jar
 velocity-tools-1.3.jar
 xwork-core-2.1.6.jar


proxool(proxool.properties)配置文件:

 jdbc-0.proxool.alias=DBPool
 jdbc-0.proxool.driver-url=jdbc:jtds:sqlserver://localhost:1433/student
 jdbc-0.proxool.driver-class=net.sourceforge.jtds.jdbc.Driver
 jdbc-0.user=sa
 jdbc-0.password=**********      (哈哈,密码省略)
 jdbc-0.proxool.house-keeping-sleep-time=40000
 jdbc-0.proxool.house-keeping-test-sql=SELECT GETDATE()
 jdbc-0.proxool.maximum-connection-count=100
 jdbc-0.proxool.minimum-connection-count=25
 jdbc-0.proxool.maximum-connection-lifetime=18000000
 jdbc-0.proxool.simultaneous-build-throttle=5
 jdbc-0.proxool.recently-started-threshold=40000
 jdbc-0.proxool.overload-without-refusal-lifetime=50000
 jdbc-0.proxool.maximum-active-time=60000
 jdbc-0.proxool.verbose=true
 jdbc-0.proxool.trace=true
 jdbc-0.proxool.fatal-sql-exception=Fatal error
 jdbc-0.proxool.prototype-count=2
 jdbc-0.proxool.statistics-log-level=ERROR
 jdbc-0.proxool.test-before-use=true
 jdbc-0.proxool.test-after-use=true


DWR(dwr.xml)配置文件:

 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE dwr PUBLIC "-//GetAhead Limited//DTD Direct Web Remoting 2.0//EN" "http://getahead.org/dwr/dwr20.dtd ">
 <dwr>
  <allow>
   <create creator="spring" javascript="dwrTest">
    <param name="beanName" value="dwrTest" />   <!--Spring配置文件中的bean:aclManager -->
   </create>
  </allow>
 </dwr>


项目配置文件(web.xml)配置文件:

 <?xml version="1.0" encoding="UTF-8"?>
 <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance "
  xmlns="http://java.sun.com/xml/ns/javaee " xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd "
  xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd "
  id="WebApp_ID" version="2.5">
  <display-name>sshdwr</display-name>
  <welcome-file-list>
   <welcome-file>index.html</welcome-file>
  </welcome-file-list>
 
  <!-- 页面不存在  -->
  <error-page>
   <error-code>404</error-code>
   <location>/pagenotfound.html</location>
  </error-page>

  <!-- 错误页面 -->
  <error-page>
   <exception-type>java.lang.Exception</exception-type>
   <location>/error.html</location>
  </error-page>

  <!-- spring配置文件读取路径-->
  <context-param>
   <param-name>contextConfigLocation</param-name>
   <param-value>/WEB-INF/applicationContext.xml</param-value>
  </context-param>

  <!--增加spring监听(载入Spring ApplicationContext )-->
  <listener>
   <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
  </listener>

  <!-- 扩展spring bean的作用域有request,session,global session等-->
  <listener>
   <listener-class>org.springframework.web.context.request.RequestContextListener</listener-class>
  </listener>

  <!-- Spring 刷新Introspector防止内存泄露 -->
  <listener>
   <listener-class>org.springframework.web.util.IntrospectorCleanupListener</listener-class>
  </listener>

  <!-- spring的session管理-->
  <filter>
   <filter-name>openSessionInViewFilter</filter-name>
   <filter-class>org.springframework.orm.hibernate3.support.OpenSessionInViewFilter</filter-class>

   <init-param>
    <param-name>sessionFactoryBeanName</param-name>
    <param-value>sessionFactory</param-value>
   </init-param>

   <init-param>
    <param-name>singleSession</param-name>
    <param-value>true</param-value>
   </init-param>
  </filter>

  <filter-mapping>
   <filter-name>openSessionInViewFilter</filter-name>
   <url-pattern>/*</url-pattern>
  </filter-mapping>

  <!--struts2.1.8配置-->
  <filter>
   <filter-name>struts2</filter-name>
   <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
  </filter>

  <filter-mapping>
   <filter-name>struts2</filter-name>
   <url-pattern>/*</url-pattern>
  </filter-mapping>

  <!-- proxool的web监控-->
  <servlet>
   <servlet-name>admin</servlet-name>
   <servlet-class>org.logicalcobwebs.proxool.admin.servlet.AdminServlet</servlet-class>
  </servlet>
  <servlet-mapping>
   <servlet-name>admin</servlet-name>
   <url-pattern>/admin</url-pattern>
  </servlet-mapping>

  <!-- DWR配置-->
  <servlet>
   <servlet-name>dwr</servlet-name>
   <servlet-class>uk.ltd.getahead.dwr.DWRServlet</servlet-class>
   <init-param>
    <param-name>debug</param-name>
    <param-value>true</param-value>
   </init-param>
   <init-param>
    <param-name>scriptCompressed</param-name>
    <param-value>false</param-value>
   </init-param>
   <load-on-startup>1</load-on-startup>
  </servlet>

  <servlet-mapping>
   <servlet-name>dwr</servlet-name>
   <url-pattern>/dwr/*</url-pattern>
  </servlet-mapping>
 </web-app>


Spring(applicationContext.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:jee="http://www.springframework.org/schema/jee "
  xmlns:tx="http://www.springframework.org/schema/tx " xmlns:context="http://www.springframework.org/schema/context "
  xsi:schemaLocation="http://www.springframework.org/schema/beans
   http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
   http://www.springframework.org/schema/tx
   http://www.springframework.org/schema/tx/spring-tx-3.0.xsd
   http://www.springframework.org/schema/jee
   http://www.springframework.org/schema/jee/spring-jee-3.0.xsd
   http://www.springframework.org/schema/context
   http://www.springframework.org/schema/context/spring-context-3.0.xsd ">

  <bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
   <property name="location" value="/WEB-INF/hibConfig.properties" />
  </bean>

  <bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
   <property name="mappingResources">
    <list>
     <value>com/loverit/project/test/entity/Person.hbm.xml</value>
     <value>com/loverit/project/test/entity/Sex.hbm.xml</value>
    </list>
   </property>

   <property name="hibernateProperties">
    <props>
     <prop key="hibernate.dialect">${hibernate.dialect}</prop>
     <prop key="hibernate.show_sql">${hibernate.show_sql}</prop>
     <prop key="hibernate.jdbc.batch_size">${hibernate.jdbc.batch_size}</prop>
     <prop key="hibernate.cache.use_query_cache">${hibernate.cache.use_query_cache}</prop>
     <prop key="hibernate.cache.provider_class">${hibernate.cache.provider_class}</prop>
    
     <!--
      <prop key="hibernate.hbm2ddl.auto">${hibernate.hbm2ddl.auto}</prop>
     -->
    
     <!-- proxool连接池 -->
     <prop key="hibernate.connection.provider_class">org.hibernate.connection.ProxoolConnectionProvider</prop>
     <prop key="hibernate.proxool.properties">proxool.properties</prop>
     <prop key="hibernate.proxool.pool_alias">DBPool</prop>

    </props>
   </property>

  </bean>

  <!-- 定义事务管理 -->
  <bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager">
   <property name="sessionFactory"  ref="sessionFactory" />
  </bean>

  <!-- 定义事务管理拦截器 -->
  <bean id="transactionInterceptor" class="org.springframework.transaction.interceptor.TransactionInterceptor">
   <property name="transactionManager" ref="transactionManager" />
   <property name="transactionAttributes">
    <props>
     <prop key="get*">PROPAGATION_REQUIRED,readOnly</prop>
     <prop key="*">PROPAGATION_REQUIRED</prop>
    </props>
   </property>
  </bean>

  <!-- 定义代理自动管理事务 -->
  <bean id="ProxyCreator"  class="org.springframework.aop.framework.autoproxy.BeanNameAutoProxyCreator">
 
   <!-- 指定需要Spring管理事务的Bean -->
   <property name="beanNames">
    <list>
     <value>testService</value>
    </list>
   </property>
   <!-- 调用事务管理拦截器 -->
   <property name="interceptorNames">
    <list>
     <value>transactionInterceptor</value>
    </list>
   </property>
  </bean>
 
  <!-- 测试类(本例未用到) -->
  <bean id="dao" class="com.loverit.framework.dao.DaoImpl">
   <property name="sessionFactory" ref="sessionFactory" />
  </bean>

  <bean id="testService" class="com.loverit.project.test.service.TestService">
   <property name="dao" ref="dao" />
  </bean>

  <bean id="testAction" class="com.loverit.project.test.action.TestAction"  scope="prototype">
   <property name="testService" ref="testService" />
  </bean>

  <!-- DWR测试类 -->
  <bean id="dwrTest" class="com.loverit.project.test.action.DwrTest" >
  </bean>
 </beans>


struts(struts.xml)配置文件:

 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE struts PUBLIC
  "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
  "http://struts.apache.org/dtds/struts-2.0.dtd ">

 <struts>
  <include file="struts-default.xml" />

  <package name="mytest" extends="struts-default,json-default">
   <action name="tt" class="testAction">
    <result name="query" type="dispatcher">/default.jsp</result>
    <result name="reload"  type="redirect">/tt.action</result>
   </action>
  </package>
 
 </struts>

struts(struts.properties)文本配置文件:

 #是否为struts的开发模式
 struts.devMode=false
 #用URL扩展名来确定是否这个请求是被用作Struts action,其实也就是设置 action的后缀,例如login.do的'do'字。
 struts.action.extension=action
 ##指定Struts 2默认的ObjectFactory Bean,该属性默认值是spring
 struts.objectFactory = spring
 ##指定Spring框架的自动装配模式,该属性的默认值是name,即默认根据Bean的name属性自动装配
 struts.objectFactory.spring.autoWire = name
 ##该属性指定整合Spring框架时,是否缓存Bean实例,该属性只允许使用true和false两个属性值,它的默认值是true。通常不建议修改该属性值。
 struts.objectFactory.spring.useClassCache = true
 #是否加载xml配置(true,false)
 struts.configuration.xml.reload=true
 #国际化信息内码
 struts.i18n.encoding = utf-8
 #是否可以用替代的语法替代tags
 struts.tag.altSyntax=true
 # 不让标签自动生成html代码(没有用的,不可控的)
 struts.ui.theme = simple

log4j(log4j.properties)配置文件:

#是否为struts的开发模式
struts.devMode=false
#用URL扩展名来确定是否这个请求是被用作Struts action,其实也就是设置 action的后缀,例如login.do的'do'字。
struts.action.extension=action
##指定Struts 2默认的ObjectFactory Bean,该属性默认值是spring
struts.objectFactory = spring
##指定Spring框架的自动装配模式,该属性的默认值是name,即默认根据Bean的name属性自动装配
struts.objectFactory.spring.autoWire = name
##该属性指定整合Spring框架时,是否缓存Bean实例,该属性只允许使用true和false两个属性值,它的默认值是true。通常不建议修改该属性值。
struts.objectFactory.spring.useClassCache = true
#是否加载xml配置(true,false)
struts.configuration.xml.reload=true
#国际化信息内码
struts.i18n.encoding = utf-8
#是否可以用替代的语法替代tags
struts.tag.altSyntax=true
# 不让标签自动生成html代码(没有用的,不可控的)
struts.ui.theme = simple


Hibernate(hibConfig.properties)配置文件(此配置参数可以直接在applicationContext.xml中配置,根据个人习惯此处本人单独配置):     

 hibernate.dialect=org.hibernate.dialect.SQLServerDialect
 hibernate.show_sql=true
 hibernate.jdbc.batch_size=20
 hibernate.cache.use_query_cache=true
 hibernate.cache.provider_class=org.hibernate.cache.EhCacheProvider
 hibernate.hbm2ddl.auto=update

Hibernate (ehcache.xml)缓存配置:

<?xml version="1.0" encoding="UTF-8"?>
<ehcache>

 <!--  设置cache.data文件存放位置   -->
 <diskStore path="D://cache" />

 <!-- eternal 表示缓存是不是永远不超时 -->
 <!--
  timeToLiveSeconds是缓存中每个元素(这里也就是一个POJO)的超时时间
  ,如果eternal="false",超过指定的时间,这个元素就被移走了。
 -->
 <!--
  timeToIdleSeconds是发呆时间,是可选的。当往缓存里面put的元素超过500个时,如果overflowToDisk="true",就会把缓存中的部分数据保存在硬盘上的临时文件里面。
 -->
 <defaultCache maxElementsInMemory="3" eternal="false"
  overflowToDisk="true" timeToIdleSeconds="120" timeToLiveSeconds="120"
  diskPersistent="false" diskExpiryThreadIntervalSeconds="120" />
</ehcache>

DWR(DwrTest.java)测试类:

 public class DwrTest
 {
  public String test (String str)
  {
   System.out.println ("测试DWR!") ;
   return "测试DWR:"+ str;
  }
 }


JSP测试文件(default.jsp):

 <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd ">
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
 <title>测试DWR</title>
 <script type='text/javascript' src='${pageContext.request.contextPath }/dwr/interface/dwrTest.js'></script>
 <script type='text/javascript' src='${pageContext.request.contextPath }/dwr/engine.js'></script>
 <script type='text/javascript' src='${pageContext.request.contextPath }/dwr/util.js'></script>
 </head>
 <body>
 <a href="javascript:onTest();">测试DWR!</a>
 </body>
 <script type="text/javascript">
  function onTest()
  {
   dwrTest.test("测试数据!", function(data)
   {
    alert(data);
   });
  }
 </script>
 </html>

 

分享到:
评论

相关推荐

    ssh + dwr配置

    **SSH + DWR配置** 配置SSH与DWR的集成通常涉及到以下几个步骤: 1. **添加依赖**:在项目中添加DWR相关的jar包,包括dwr.jar以及其依赖的库文件。 2. **配置web.xml**:在Web应用的配置文件中,需要配置DWR的...

    新版SSH+DWR配置(Struts2.1.8+Spring3.0+Hibernate3.3.2+DWR2.0.6).doc

    总之,新版SSH+DWR配置是一个复杂的过程,涉及到多个框架的整合。正确配置这些组件能够创建出高效、灵活的Web应用程序,同时利用DWR提升用户体验。在实际开发中,开发者应根据项目需求调整配置细节,确保框架的最佳...

    ssh+dwr整合

    ### SSH+DWR整合知识点详解 #### 一、SSH框架简介 SSH,即Spring、Struts和Hibernate三个开源框架的组合,是Java Web开发中的一种流行架构。Spring负责业务逻辑层,提供依赖注入和面向切面编程;Struts作为MVC框架...

    ssh+dwr(实现3级联)

    SSH (Struts2 + Spring + Hibernate) 和 DWR (Direct Web Remoting) 是两种常见的Java Web开发技术。在本文中,我们将深入探讨如何将这两种技术结合,实现一个三级联动的效果。 SSH是Java企业级开发中广泛应用的一...

    SSH+Dwr+Ajax框架实现的OA办公自动化系统

    SSH+Dwr+Ajax框架是构建现代Web应用的一种高效组合,尤其在OA(Office Automation)办公自动化系统中,它们能够实现高效的数据交互和用户界面的动态更新。下面将详细讲解这三个关键技术及其在OA系统中的应用。 **...

    ssh+dwr 3级联

    SSH(Secure Shell)和DWR(Direct Web Remoting)是两种不同的技术,它们在Web开发中各有其用途。SSH主要用于提供安全的网络服务,如远程登录、文件传输等,而DWR则是一种JavaScript到Java的远程调用技术,使得前端...

    ssh+dwr整合,就是一个很好的dwr加载spring

    SSH+DWR整合的关键在于如何正确配置Spring和DWR之间的关系,使得前端可以直接调用后端的服务。通过上述步骤,可以实现这一目标,并且大大简化了Web应用的开发流程,提高了开发效率。 以上就是关于SSH+DWR整合的相关...

    ssh+dwr_ajax

    在这个项目中,"test"可能是一个测试文件或者目录,用于存放与SSH和DWR相关的代码示例、配置文件或者测试数据。开发者可能会在这里编写单元测试,验证SSH框架的配置是否正确,DWR的远程调用是否能正常工作,以及表格...

    ssh+dwr 整合案例

    1. **配置DWR**:在Web应用的web.xml中配置DWR的Servlet,以及在项目的Java配置文件中注册DWR的ContextConfig。 2. **创建Java Remote Classes**:定义允许被DWR调用的Java类和方法,通常这些类会放在Spring的Bean中...

    一个SSH+DWR的小示例

    - `dwr`目录:DWR的相关文件,包括`dwr-engine.js`、`dwr-spring.jar`等,以及可能的自定义DWR配置。 - `jsp`或`html`文件:前端页面,展示了如何使用DWR调用后端方法。 - `java`源代码:包含业务逻辑和服务接口的...

    ssh+dwr分页。。

    在这个场景中,"ssh+dwr分页"意味着在SSH框架的基础上,使用DWR来实现前端页面的数据分页功能。 首先,让我们详细了解一下SSH框架: 1. **Struts2**:作为MVC(Model-View-Controller)设计模式的一个实现,Struts...

    ssh2+dwr开发的一个小例子(里边包含了所有的配置文件说明)

    在SSH2 + DWR项目中,以下是一些关键的配置文件: 1. **struts.xml**:Struts2的核心配置文件,定义了Action类、结果类型和拦截器栈。 2. **spring.xml**:Spring的配置文件,包括Bean的定义、依赖注入和事务管理...

    SSH+DWR整合,有图片,有实例,有说明,非常详细

    【SSH+DWR 整合详解】 SSH (Struts + Spring + Hibernate) 是一个流行的Java Web开发框架,它集成了MVC(Model-View-Controller)模式、依赖注入和持久层管理,为开发者提供了强大的后端支持。DWR (Direct Web ...

    SSH+DWR 用户登录注册(无刷新验证)

    1. **DWR配置**:首先,需要在Web应用的配置文件中引入DWR的相关配置,声明需要暴露给JavaScript调用的Java方法。 2. **创建Java服务接口**:在服务器端定义验证用户输入的Java方法,如`isValidUsername()`和`...

    客户关系管理系统SSH+DWR web

    【标题】"客户关系管理系统SSH+DWR web"是一个基于Java技术栈的Web应用程序,用于高效管理和维护企业与客户之间的关系。SSH代表Spring、Struts和Hibernate三个框架的组合,而DWR(Direct Web Remoting)则是一个...

    ssh+dwr项目模版

    5. **整合过程**:SSH与DWR的整合涉及到几个关键步骤:配置DWR的ContextListener,定义DWR的Engine和ReverseAjax配置,创建Java类并暴露为DWR可调用的方法,以及在前端JavaScript中使用这些方法。整合后,可以实现在...

    ssh+dwr分页程序实现

    在文件"PageDivision"中,可能包含了SSH框架的配置文件(如struts.xml、spring.xml、hibernate.cfg.xml)、Java源代码(如Controller、Service、DAO类)、DWR配置文件(dwr.xml)、以及相关的HTML和JavaScript文件。...

    整合SSH+DWR做的异步通信

    **整合SSH+DWR异步通信详解** 在Web开发中,SSH(Struts2、Spring、Hibernate)是一个经典的Java EE框架组合,它们分别负责MVC模式中的Action层、业务逻辑层和服务数据持久化层。而DWR(Direct Web Remoting)则是...

    图书管理系统(SSH+DWR)

    【图书管理系统(SSH+DWR)】是一种基于Java技术实现的综合信息管理平台,主要用于图书馆的日常运营与管理工作。SSH代表Spring、Struts和Hibernate这三个框架的组合,它们分别是Spring框架、Struts框架和Hibernate持久...

    SSH+dwr实现三级级联

    1. **配置DWR**:在web.xml中添加DWR的servlet配置,并创建对应的dwr-engine.xml和dwr-config.xml文件,定义允许暴露给前端的方法。 2. **创建后台服务**:在Spring中定义业务接口和服务实现,这些服务将被DWR调用...

Global site tag (gtag.js) - Google Analytics