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來解決