- 博客(0)
- 资源 (3)
- 收藏
- 关注
SSH第7章上机.zip ACCP8.0
下面是整合的的步骤
spring整合hibernate
加入jar包
加入spring和aop所需必须包
加入hibernate的必须包
spring整合hibernate的必须包
org.springframework.jdbc-3.1.3.RELEASE.jar
org.springframework.orm-3.1.3.RELEASE.jar
org.springframework.transaction-3.1.3.RELEASE.jar
加入配置文件
加入spring的配置文件
加入hibernate的配置文件
加入配置代码
加入对SessionFactory的配置
加入数据源(DataSource)的配置
<bean id="dataSource" class="org.springframework.jdbc.datasource.SimpleDriverDataSource">
<property name="driverClass" value="com.mysql.jdbc.Driver"/>
<property name="url" value="jdbc:mysql://localhost:3306/test"/>
<property name="username" value="root"/>
<property name="password" value=""/>
</bean>
加入SessionFactory的配置
<bean id="sessionFactory" class="org.springframework.orm.hibernate4.LocalSessionFactoryBean">
<!-- 配置session factory使用的数据源 -->
<property name="dataSource" ref="dataSource" />
<!-- 配置使用hibernate的配置文件 -->
<!--<property name="configLocation" value="classpath*:hibernate.cfg.xml" />
-->
<!--
无需写hibernate的配置文件,而是将hibernate的配置直接加入到spring配置文件中
配置hibernate的映射文件地址
-->
<property name="mappingResources">
<list>
<value>com/direct/domain/Employee.hbm.xml</value>
<value>com/direct/domain/Log.hbm.xml</value>
</list>
</property>
<!-- 配置hibernate的其他属性 -->
<property name="hibernateProperties">
<map>
<entry key="dialect" value="org.hibernate.dialect.MySQL5Dialect" />
<entry key="show_sql" value="true" />
<entry key="format_sql" value="true" />
<entry key="current_session_context_class" value="thread" />
</map>
</property>
</bean>
加入事务管理切面类的配置
<!-- 创建事务管理器(spring针对hibernate实现的事务管理的切面类) -->
<bean id="transactionManager" class="org.springframework.orm.hibernate4.HibernateTransactionManager">
<property name="sessionFactory" ref="sessionFactory" />
</bean>
<!-- 事务的通知类型 -->
<tx:advice id="transactionAdvice" transaction-manager="transactionManager">
<tx:attributes>
<tx:method name="add*" propagation="REQUIRED"/>
<tx:method name="update*" propagation="REQUIRED"/>
<tx:method name="delete*" propagation="REQUIRED"/>
<tx:method name="*" read-only="true" />
<!-- 或者
<tx:method name="*list*" read-only="true"/>
<tx:method name="*get*" read-only="true"/>
<tx:method name="*" propagation="REQUIRED"/>
-->
</tx:attributes>
</tx:advice>
将切面类应用到切入点上
<!-- 将事务管理规则的切面应用到对应的切入点 -->
<aop:config>
<aop:pointcut expression="execution(* com.direct.service.*.*(..))" id="transactionPointCut"/>
<aop:advisor advice-ref="transactionAdvice" pointcut-ref="transactionPointCut"/>
</aop:config>
spring和struts2的整合
加入整合包
加入struts的必须包
struts整合spring的包
struts2-spring-plugin-2.3.15.3.jar
spring整合struts的包
org.springframework.web-3.1.3.RELEASE.jar
org.springframework.web.servlet-3.1.3.RELEASE.jar
org.springframework.web.struts-3.1.3.RELEASE.jar
加入struts的配置文件struts.xml
在web.xml中配置struts
<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>
在web.xml配置spring
<!-- 配置spring的配置文件的位置 -->
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath*:applicationContext-*.xml</param-value>
</context-param>
<!-- 配置spring随web容器启动时就创建 -->
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
在struts.xml中配置对象创建工具为spring
<constant name="struts.objectFactory" value="spring" />
2017-10-25
ACCP8.0北大青鸟SSH10章上机
Configuration configuration = new Configuration().configure();
SessionFactory sessionFactory = configuration.buildSessionFactory();
Session session = sessionFactory.openSession();
或者通过MyEclipse的Hibernate工具自动生成的HibernateSessionFactory.getSession()方法来获取Session,调用HibernateSessionFactory. closeSession()方法来关闭session。
2017-10-25
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人