您误解了DAO / DTO模式。DAO / DTO不应是 静态的
。而
sessionFactory更好的建设通常只有每一次应用程序,因为它的耗时的过程。
更适合您根据线程模式实现会话。编写该类
HibernateUtil以构建
sessionFactory和获取会话。
然后您的DAO看起来像
public class UserDao { public Session getSession() { return HibernateUtil.getSession(); } public void closeSession() { HibernateUtil.closeSession(); } public void addUser(User u) { Session session = getSession(); Transaction t = session.beginTransaction(); int i = (Integer)session.save(u); t.commit(); closeSession(); }}
在你写的动作中
private UserDao userDao = new UserDao();public String execute() throws Exception { User u = new User(); u.setAddress(address); u.setEmail(email); u.setName(name); u.setPhno(phno); u.setPwd(pwd); userDao.addUser(u); return "success";}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)