Spring 雇员管理系统SSH 2

Spring管理hibernate

? ?

Spring中主要配置了<bean databaseSource/>以及<bean sessionFactory/>

? ?

提倡接口编程

? ?

先建一个接口包com.hsp.service.interfaces,以及一个接口的实现包com.hsp.service.imp

? ?

接口包中建一个接口,主要声明一些方法

? ?

技术分享

? ?

其中因为integer以及string都实现了serializable序列化接口,所以这样声明比较好

? ?

然后在接口实现包中建一个类去实现接口

? ?

Springbean的管理和维护

? ?

因为Employee对象(也就是EmployeeService对象)中要用到sessionFactory,所以在applicationContext.xml文件中配置Employee对象时将sessionFactory属性加入,主要用到EmployeeService这个实现类中的setsessionFactory方法

? ?

技术分享

? ?

然后Employee对象中继承接口而需要实现的addEmployee方法就可以这样写

? ?

技术分享

? ?

Test类中就不用获取sessionFactory了,由于是接口编程,所以类声明可以用EmployeeServiceInter,但实例是实现了该接口的EmployeeService

? ?

技术分享

? ?

事务管理可以用Spring中的AOP去实现,也就是用通知

? ?

使用事务管理器同一管理事务

? ?

applicationContext中配置事务管理器

? ?

技术分享

? ?

然后再启用事务注解

? ?

技术分享

? ?

然后在EmployeeService类中添加一句

? ?

技术分享

? ?

四者之间的关系

? ?

技术分享

? ?

hibernate二级缓存还没搞懂,不过感觉应该跟一般的缓存差不多,主要在如何配置

? ?

参考配置如下

? ?

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

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

<property name="mappingResources">

<list>

<value>cn/xxx/bean/Person.hbm.xml</value>

</list>

</property>

<property name="hibernateProperties">

<value>

hibernate.dialect=org.hibernate.dialect.OracleDialect

hibernate.hbm2ddl.auto=update

hibernate.show_sql=true

hibernate.format_sql=false

hibernate.cache.use_second_level_cache=true

hibernate.cache.provider_class=org.hibernate.cache.EhCacheProvider

hibernate.generate_statistics=true

</value>

</property>

</bean>

? ?

怎么验证还需要进一步学习

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。