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>

 

 

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