首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

junit兑现opensessionInView保持session

2012-09-14 
junit实现opensessionInView保持session参考:http://allenwei.iteye.com/blog/227920?private SessionFact

junit实现opensessionInView保持session

参考:http://allenwei.iteye.com/blog/227920

?

private SessionFactory sessionFactory;      //重写setUp方法protected void setUp() throws Exception {super.setUp();sessionFactory = (SessionFactory) SpringContext.getInstance().getBean("sessionFactory");//SpringContext是自己创建spring工具类Session s = sessionFactory.openSession();TransactionSynchronizationManager.bindResource(sessionFactory,new SessionHolder(s));}protected void tearDown() throws Exception {super.tearDown();SessionHolder holder = (SessionHolder) TransactionSynchronizationManager.getResource(sessionFactory);Session s = holder.getSession();try {s.flush();} catch (Throwable e) {e.printStackTrace();}TransactionSynchronizationManager.unbindResource(sessionFactory);SessionFactoryUtils.closeSession(s);}
public class SpringContext {private static SpringContext m_instance;private static String[] contextFiles = new String[] { "applicationContext.xml" };private ApplicationContext ctx;public SpringContext() {ctx = new ClassPathXmlApplicationContext(contextFiles);}public SpringContext(String[] setting) {ctx = new ClassPathXmlApplicationContext(setting);}public synchronized static SpringContext getInstance() {if (m_instance == null) {m_instance = new SpringContext(contextFiles);}return m_instance;}public Object getBean(String beanId) {Object o = ctx.getBean(beanId);if (o instanceof TransactionProxyFactoryBean) {TransactionProxyFactoryBean factoryBean = (TransactionProxyFactoryBean) o;o = factoryBean.getObject();}return o;}}
?
?

热点排行