SSH框架集搭建步驟
阿新 • • 發佈:2018-12-14
使用IDEA搭建SSH基本架構,建立好資料庫(orcal)和專案後,開始
目錄
3.第三部,建立好三個框架的核心檔案(本篇使用spring管理資料來源,hibernate.cfg.xml可有可無)
4.第四布,編寫DAO層,我寫的是繼承BaseDao抽象泛型,實現介面的模式
1.天才第一步,先加好相關jar檔案
2.第二布,配置web.xml
web.xml
<!--宣告上下文初始引數--> <context-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:applicationContext.xml</param-value> </context-param> <!-- 對spring框架中的ContextLoaderListener類進行監聽 --> <listener> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> </listener> <!-- spring 管理Session --> <filter> <filter-name>OpenSessionInviewFilter</filter-name> <filter-class>org.springframework.orm.hibernate3.support.OpenSessionInViewFilter</filter-class> </filter> <filter-mapping> <filter-name>OpenSessionInviewFilter</filter-name> <url-pattern>*.action</url-pattern> </filter-mapping> <!--將全部請求定位到struts2過濾器 --> <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>
3.第三部,建立好三個框架的核心檔案(本篇使用spring管理資料來源,hibernate.cfg.xml可有可無)
applicationContext.xml
dao:
//配置dao <!-- 定義資料來源 --> <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"> <!-- 指定JDBC驅動類 --> <property name="driverClassName" value="oracle.jdbc.driver.OracleDriver" /> <property name="url" value="jdbc:oracle:thin:@localhost:1521:orcl" /> <property name="username" value="jboa" /> <property name="password" value="123" /> <property name="initialSize" value="20"/> </bean> <!-- 定義SessionFactory Bean --> <bean id="sessionFactory" class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean"> <!-- 注入資料來源 --> <property name="dataSource"> <ref bean="dataSource" /> </property> <!--新增hibernate配置引數 --> <property name="hibernateProperties"> <props> <prop key="hibernate.dialect"> org.hibernate.dialect.Oracle10gDialect </prop> <prop key="hibernate.show_sql">true</prop> <prop key="hibernate.format_sql">true</prop> <prop key="javax.persistence.validation.mode">none</prop> </props> </property> <property name="mappingDirectoryLocations"> <list> <value>classpath:landun/pojo</value> </list> </property> <!--載入由註解定義的持久化類 --> <!-- <property name="packagesToScan" value="landun.pojo" />--> </bean>
transaction :
//配置tx
//http://www.springframework.org/schema/tx/spring-tx-3.2.xsd
//http://www.springframework.org/schema/aop/spring-aop.xsd
<bean id="txManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager">
<property name="sessionFactory" ref="sessionFactory" />
</bean>
<tx:advice id="txAdvice" transaction-manager="txManager">
<tx:attributes>
<tx:method name="find*" read-only="true" />
<tx:method name="search*" read-only="true" />
<tx:method name="query*" read-only="true" />
<tx:method name="add*" propagation="REQUIRED"/>
<tx:method name="register" propagation="REQUIRED" />
<tx:method name="del*" propagation="REQUIRED" />
<tx:method name="update*" propagation="REQUIRED"/>
<tx:method name="do*" propagation="REQUIRED" />
<tx:method name="*" propagation="REQUIRED" read-only="true" />
</tx:attributes>
</tx:advice>
<aop:config>
<aop:pointcut id="serviceMethod"
expression ="execution( * landun.service..*.*(..))" />
<aop:advisor advice-ref="txAdvice" pointcut-ref="serviceMethod"/>
</aop:config>
<!--事務註解驅動-->
<tx:annotation-driven transaction-manager="txManager"/>
最後將它兩都匯入進applicationContext.xml
//http://www.springframework.org/schema/context/spring-context-4.2.xsd
<!-- 掃描註解 -->
<context:component-scan base-package="landun"/>
<import resource="applicationContext-*.xml" />
4.第四布,編寫DAO層,我寫的是繼承BaseDao抽象泛型,實現介面的模式
BaseDao:
直接繼承HibernateDaoSupport類,並建立一個方法用來自動注入sessionFactory
編寫dao實現類繼承Basedao,並使用註解建立bean(可以不使用註解,使用配置檔案單個建立,個人喜歡註解,簡便不是一點半點~)
5.第五步,建立業務層編寫action然後實現和頁面的互動
service:
action:
一個基本的ssh架構就搭建完了,看完點個贊~qaq