1.搭建struts-2.3.1.2
简单。。。省略
2.整合Spring 3.1.1和Struts-2.3.1.2
添加额外Struts jar包:struts2-spring-plugin-2.3.1.2.jar
        commons-logging-1.1.1.jar
Spring说以来的jar包:
  -3.1.1.RELEASE.jar
  t-3.1.1.RELEASE.jar
  org.springframework.beans-3.1.1.RELEASE.jar
  org.springframework.asm-3.1.1.RELEASE.jar
  pression-3.1.1.RELEASE.jar
  org.springframework.web-3.1.1.RELEASE.jar
在l中添加
  <context-param>
  <param-name>contextConfigLocation</param-name>
  <param-value>
    l ------ spring主配置文件
  </param-value>
  </context-param>
  <listener>
  <listener-class>org.t.ContextLoaderListener</listener-class>
  </listener>
spring注解配置模板
  <?xml version="1.0" encoding="UTF-8"?>
  <beans xmlns="/schema/beans"
  xmlns:xsi="/2001/XMLSchema-instance" xmlns:p="/schema/p"
  xmlns:tx="/schema/tx" xmlns:context="/schema/context"
  xsi:schemaLocation="/schema/beans
  /schema/beans/spring-beans-3.0.xsd
  /schema/tx
  /schema/tx/spring-tx-3.0.xsd
  /schema/aop
  /schema/aop/spring-aop-3.0.xsd
  /schema/contextmysql下载jar包
  /schema/context/spring-context-3.0.xsd">
  <context:annotation-config />
  <context:component-scan base-package="l" />
  </beans>
3.整合Hibernate4.1.1
添加Hibernate jar文件
  Hibernate压缩包中的
  lib/required/
    antlr-2.7.7.jar
    dom4j-1.6.1.jar
    hibernate-commons-annotations-4.0.1.Final.jar
    hibernate-core-4.1.1.Final.jar
    hibernate-jpa-2.0-api-1.0.1.Final.jar
    javassist-3.15.0-GA.jar
    jboss-logging-3.1.0.GA.jar
    jboss-transaction-api_1.1_spec-1.0.0.Final.jar
  lib/jpa/
    hibernate-entitymanager-4.1.1.Final.jar
  lib/optional/c3p0/
    hibernate-c3p0-4.1.1.Final.jar
    c3p0-0.9.1.jar
  Spring中的jar文件
  org.springframework.aop-3.1.1.RELEASE.jar
  org.springframework.jdbc-3.1.1.RELEASE.jar
  -3.1.1.RELEASE.jar
  ansaction-3.1.1.RELEASE.jar
  其他的Spring支持文件
  aopalliance.jar -- AOP要用到的jar包
  在Spring配置文件中加入datasource
  <bean id="dataSource" class="hange.v2.c3p0.ComboPooledDataSource" destroy-method="close">
    <property name="driverClass" value="${mysql.driverClassName}"/>
    <property name="jdbcUrl" value="${mysql.url}"/>
    <property name="user" value="${mysql.username}"/>
    <property name="password" value="${mysql.password}"/>
    <!--连接池中保留的最小连接数。 -->
    <property name="min
PoolSize" value="5" />
    <!--连接池中保留的最大连接数。Default: 15 -->
    <property name="maxPoolSize" value="30" />
    <!--初始化时获取的连接数,取值应在minPoolSize与maxPoolSize之间。Default: 3 -->
    <property name="initialPoolSize" value="10" />
    <!--最大空闲时间,60秒内未使用则连接被丢弃。若为0则永不丢弃。Default: 0 -->
    <property name="maxIdleTime" value="60" />
    <!--当连接池中的连接耗尽的时候c3p0一次同时获取的连接数。Default: 3 -->
    <property name="acquireIncrement" value="5" />
    <!--JDBC的标准参数,用以控制数据源内加载的PreparedStatements数量。但由于预缓存的statements 属于单个connection而不是整个连接池。所以设置这个参数需要考虑到多方面的因素。
    如果maxStatements与maxStatementsPerConnection均为0,则缓存被关闭。Default: 0 -->
    <property name="maxStatements" value="0" />
    <!--每60秒检查所有连接池中的空闲连接。Default: 0 -->
    <property name="idleConnectionTestPeriod" value="60" />
    <!--定义在从数据库获取新连接失败后重复尝试的次数。Default: 30 -->
    <property name="acquireRetryAttempts" value="30" />
    <!--获取连接失败将会引起所有等待连接池来获取连接的线程抛出异常。但是数据源仍有效 保留,并在下次调用getConnection()的时候继续尝试获取连接。如果设为true,那么在尝试
    获取连接失败后该数据源将申明已断开并永久关闭。Default: false -->
    <property name="breakAfterAcquireFailure" value="true" />
    <!--因性能消耗大请只在需要的时候使用它。如果设为true那么在每个connection提交的 时候都将校验其有效性。建议使用idleConnectionTestPeriod或automaticTestTable
    等方法来提升连接测试的性能。Default: false -->
    <property name="testConnectionOnCheckout" value="false" />
  </bean>
  jdbc.properties文件
  ##MySQL??
  ## mysql.driverClassName=ine.spy.P6SpyDriver 使用p6spy显示完整的sql语句
  mysql.sql.jdbc.Driver
  mysql.url=jdbc:mysql://localhost:3306/generic?useUnicode=true&characterEncoding=UTF-8
  mysql.username=root
  mysql.password=root
  ##Hibernate
  hibernate.dialect=org.hibernate.dialect.MySQL5Dialect
  hibernate.max_fetch_depth=3
  hibernate.hbm2ddl.auto=update
  hibernate.jdbc.fetch_size=18
  hibernate.jdbc.batch_size=10
  hibernate.show_sql=true
  hibernate.format_sql=true
  配置工厂spring管理事务
  <!-- 类工厂由spring管理 -->
  <bean id="entityManagerFactory" class="jpa.LocalContainerEntityManagerFactoryBean">
    <property name="dataSource" ref="dataSource"/><!-- 注入数据源bean到实体管理工厂bean -->
    <property name="persistenceXmlLocation" value="classpath:l"/>
    <property name="loadTimeWeaver"><!-- 运行时
植入 -->
    <bean class="org.springframework.instrument.classloading.InstrumentationLoadTimeWeaver"/>
    </property>
  </bean>
  <!-- 事务由spring管理 -->
  <bean id="txManager" class="jpa.JpaTransactionManager">
    <property name="entityManagerFactory" ref="entityManagerFactory"/><!-- 注入实体管理工厂bean到事务管理bean -->
  </bean>
  <tx:annotation-driven transaction-manager="txManager"/><!-- 事务声明方式是注解 -->
  在classpath下的META-INF目录下添加jpa配置文件:l文件
  <?xml version="1.0" encoding="UTF-8"?>
  <persistence xmlns="java.sun/xml/ns/persistence" version="1.0">
    <persistence-unit name="excel" transaction-type="RESOURCE_LOCAL"> <!-- 实体bean集合名字 -->
    <provider>org.hibernate.ejb.HibernatePersistence</provider> <!-- JPA驱动提供者 -->
    <properties>
      <property name="hibernate.dialect" value="${hibernate.dialect}"/>           
      <property name="hibernate.max_fetch_depth" value="${hibernate.max_fetch_depth}"/>
      <property name="hibernate.hbm2ddl.auto" value="${hibernate.hbm2ddl.auto}"/>         
      <property name="hibernate.jdbc.fetch_size" value="${hibernate.jdbc.fetch_size}"/>
      <property name="hibernate.jdbc.batch_size" value="${hibernate.jdbc.batch_size}"/>
      <property name="hibernate.show_sql" value="${hibernate.show_sql}"/>
      <property name="hibernate.format_sql" value="${hibernate.format_sql}"/>
    </properties>
    </persistence-unit>
  </persistence>
  配置log4j日志
  添加jar文件
    slf4j-log4j12-1.3.1.jar
    log4j-1.2.16.jar
  添加log4j.properties文件值classpath下
    位置:hibernate压缩包/project/etc/log4j.properties
4.整合spring security 3.1.0
在l文件中添加l文件的位置
  <context-param>
  <param-name>contextConfigLocation</param-name>
  <param-value>
    l ------ spring主配置文件
    /l  -----spring security配置文件
  </param-value>
  </context-param>
在WEB-INF下新建l
  文件声明头可以从spring security压缩文件下的
  spring-security-samples-tutorial-3.1.0.RELEASE.war/l
  去copy
  并在其中加入如下信息
  <http auto-config='true'>
    <intercept-url pattern="/**" access="ROLE_USER" />
  </http>
  <authentication-manager>
    <authentication-provider>
    <user-service>
      <user name="jimi" password="jimispassword" authorities="ROLE_USER, ROLE_ADMIN" />
      <user name="bob" password="bobspassword" authorities="ROLE_USER" />
    </user-service>
    </authentication-provider>
  </authentication-manager>
加入spring中的jar包
  t.support-3.1.1.RELEASE.jar
加入spring-security-3.1.0压缩包中的jar文件
  需要哪些可以在spring压缩包下/WEB-INF/lib下去,大致需要
  spr
ing-security-config-3.1.0.RELEASE.jar
  spring-security-core-3.1.0.RELEASE.jar
  spring-security-crypto-3.1.0.RELEASE.jar
  spring-security-taglibs-3.1.0.RELEASE.jar
  spring-security-web-3.1.0.RELEASE.jar 

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。