我想问一个大家关于sessionFactory实例的创建和管理问题。通过以下方法我可以把在Person表里存入一条记录。
可我不知道一般项目开发中如何新建这个sessionFactory?总不能每个ACTION里都创建一个吧?
还是在第一个loginAction里创建然后通过setAttribute的方式把这个session一直保持着?
[code="java"]package com.chenzq.domain;
import org.hibernate.SessionFactory;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.FileSystemXmlApplicationContext;
import org.springframework.transaction.PlatformTransactionManager;
import org.springframework.transaction.TransactionDefinition;
import org.springframework.transaction.TransactionStatus;
import org.springframework.transaction.support.TransactionCallbackWithoutResult;
import org.springframework.transaction.support.TransactionTemplate;
public class Test {
public static void main(String[] args) {
ApplicationContext ctx = new FileSystemXmlApplicationContext(
"src/applicationContext.xml");
SessionFactory sessionFactory = (SessionFactory) ctx
.getBean("sessionFactory");
try {
Person p = new Person();
p.setUserName("javatest");
p.setUserAge("27");
p.setUserPassword("sasdasd");
p.setUserSex("男");
PersonDaoImpl PersonDI = new PersonDaoImpl();
PersonDI.setSessionFactory(sessionFactory);
PersonDI.save(p);
System.out.println("OK");
} catch (Exception ex) {
ex.printStackTrace();
}
}
}
[/code]