SSH三大框架整合

1:构建WEB项目

2:构建数据库

3:加入依赖包

       尽量不要依赖IDE,通过自己手动加包完成

 访问数据库需要的包:mysql的驱动包

 Hibernate的包:hibernate3.jar 核心包

    依赖的必须包:antlr-2.7.6.jar  用于解析成HQL语句的包

                  commons-collections-3.1.jar  apache提供的包,提供对集合框架的增强

                  dom4j-1.6.1.jar 解析XML文件的包

                  javassist-3.9.0.GA.jar 动态修改字节码需要用到的包

                  jta-1.1.jar 用于JTA事务的包

     slf4j-api-1.5.8.jar  日志接口包  ---》依赖一定的实现包 

slf4j-log4j12-1.5.0.jar   log4j.jar

另外一种实现包:slf4j-simple-1.5.10.jar

可选的包:c3p0-0.9.1.jar 用于创建C3P0连接池的包

          ehcache-1.2.3.jar :用于缓存实现的包

          cglib-2.2.jar 动态修改字节码的包

Spring的包:spring.jar 核心包

            aopalliance.jar  使用Aop功能可以用到的包

            aspectjrt.jar

                     aspectjweaver.jar  使用ASPECTJ表达式需要用到的包

            如果是使用DBCP连接池的话,需要两个jar包

            commons-dbcp.jar   commons-pool.jar

           

                     如果需要用到commons增加包的话,可以加入以下包

            commons-beanutils.jar  commons-lang.jar  commons-logging.jar

 

 

Struts2的包:commons-fileupload-1.2.1.jar   commons-io-1.3.2.jar

            freemarker-2.3.13.jar :在Struts2 中默认使用的是FreeMarker模板引擎

            ognl-2.6.11.jar  : Struts2中使用OGNL表达式

            struts2-core-2.1.6.jar 核心包

            xwork-2.1.2.jar  核心包

struts2-spring-plugin-2.1.6.jar Struts2跟Spring整合需要的插件包

 

 

4:构建项目分包结构

5:放置配置文件

6:创建POJO和相对应的hbm.xml

7:修改空白的Hibernate.cfg..xml并创建表结构

8:创建DAO,SERVICE,ACTION

9:修改配置文件

   ApplicationContext.xml

<!-- 利用Spring去管理SessionFactroy,需要告知Hibernate.cfg.xml的文件路径 -->

    <bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">

       <property name="configLocation" value="classpath:hibernate.cfg.xml"></property>

    </bean>

   

    <!-- 配置GeneralDao,因为这个dao会被多个dao继承使用 -->

    <bean id="generalDao" class="com.wanczy.common.GeneralDaoImpl">

       <property name="sessionFactory" ref="sessionFactory"></property>

    </bean>

   

    <!-- 创建事务管理器 -->

    <bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager">

       <property name="sessionFactory" ref="sessionFactory"></property>

    </bean>

   

    <!-- 定义Service层的事务传播机制 -->

    <tx:advice id="serviceMethodAdvice" transaction-manager="transactionManager">

       <tx:attributes>

           <tx:method name="find*" read-only="true"/>

           <tx:method name="select*" read-only="true"/>

           <tx:method name="query*" read-only="true"/>

           <tx:method name="*"/>

       </tx:attributes>

    </tx:advice>

   

    <!-- 利用aop定义对那些包中的哪些类的哪些方法准备进行事务增强 -->

    <aop:config>

       <aop:pointcut id="serviceMethods" expression="execution (* com.wanczy.service.*.* (..))"/>

       <aop:advisor advice-ref="serviceMethodAdvice" pointcut-ref="serviceMethods"/>

    </aop:config>

 

并且按照模块的分布进行applicationContext文件的配置

applicationContext_user.xml

<bean id="userDao" class="com.wanczy.dao.impl.UserDaoImpl" parent="generalDao"></bean>

   

    <bean id="userService" class="com.wanczy.service.impl.UserServiceImpl">

       <property name="userDao" ref="userDao"></property>

    </bean>

   

    <bean id="userAction" class="com.wanczy.action.UserAction">

       <property name="userService" ref="userService"></property>

    </bean>

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章