1.Spring整合Hibernate步骤?
方式一(零障碍整合)
方式二(spring管理hibernate配置)
1.配置连接池
2.引入properties文件
3.创建LocalSessionFactoryBean(加载连接池,加载映射文件)
4.注意:spring整合hibernate后的DAO(dao只需要继承HibernateDaoSupport类, 在applicationContext.xml中声明dao,让Dao的实现类引用SessionFactory )
2.Spring整合struts2步骤?
方式一:基于spring管理action:
1.在applicationContext.xml文件中配置action,引用service实现类的id
2.在action类中,声明一个private修饰的userService私有对象,并且提供set方法
3.在struts.xml文件配置action,class属性写action的类名,它的<result name="">name的值要和action的方法中return的值一致
注意:必须在web.xml文件中配置struts2框架的Filter
方式二:action中自动注入service
3.谈谈Dao类怎么使用hibernateTemplate进行crdu操作?
在dao类中定义一个HibernateTemplate类的对象,并给一个setHibernateTemplate()方法,用该对象调用HibernateTemplate模板封装好的方法
<!-- hibernate模板 -->
<bean id="hibernateTemplate" class="org.springframework.orm.hibernate3.HibernateTemplate">
<property name="sessionFactory" ref="sessionFactory" />
</bean>
<!-- dao的操作的bean -->
<bean id="customerDaoImpl" class="cn.csdn.dao.CustomerDaoImpl">
<!-- 注入依赖模板 -->
<property name="hibernateTemplate" ref="hibernateTemplate" />
</bean>
4.ssh整合怎么解决noSession问题?
1.不使用延迟加载
2.手动将延迟加载初始化 Hibernate.initialize(延迟对象)
3.使用spring提供的一个OpenSessionInViewFilter来解决