1、思路和想法。
目前理解到的,觉得是的,可能的,应该这样的………………
Spring的两大核心是IoC和AOP
Ioc:帮助实例化对象,加载到容器中,在注入到需要用到的地方。这样就可以减少在不同的方法/类中新建对象了。同时,实现类改变了(基于接口),在xml中改了就好。比较适合单例编程。那么我们将Hibernate常常用到的SessionFactory交给Spring。
AOP:与数据库打交道,事务管理是必须的,什么ACID之类的。那么AOP就比较适合了。
2、整合
继续在之前的工程加上spring的jar。
1)、Spring-3.2.0
2)、使用数据源。
选用dbcp
commons-dbcp-xxx.jar
commons-pool-xxx.jar
3)、SessionFactory
在spring的配置文件中,配置SessionFactory(交给Spring)管理。Spring配置文件这里命名为applicationContext.xml
1 <!-- sessionFactory --> 2 <bean id="sessionFactory" 3 class="org.springframework.orm.hibernate4.LocalSessionFactoryBean"> 4 <!-- 数据源 --> 5 <property name="dataSource" ref="dataSource" /> 6 <!-- 注解的实体类 ,扫描包 --> 7 <property name="packagesToScan"> 8 <list> 9 <value>com.xzw.ssh.pojo</value> 10 </list> 11 </property> 12 13 <!-- sessionFactory的一些其他设置。 --> 14 <property name="hibernateProperties"> 15 <props> 16 <!-- 通过getCurrentSession创建的session会绑定到当前线程 --> 17 <prop key="current_session_context_class">thread</prop> 18 <!--方言 --> 19 <prop key="dialect">org.hibernate.dialect.MySQLDialect</prop> 20 <!--输出sql --> 21 <prop key="hibernate.show_sql">true</prop> 22 <!-- sql格式化输出--> 23 <prop key="hibernate.format_sql">true</prop> 24 </props> 25 </property> 26 </bean>