什末时候该关闭session? DAO中是不能关闭Session 在Service里才关闭也可以通过Servlet 的Filter来做 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 caveatemptor 就是放在HibernateFilter 里做的.. public class BaseDAO implements IBaseDAO { protected Session session = null; public BaseDAO() { super(); try { this.session = HibernateInit.getInstance().getSessionFactory().openSession(); } catch (Exception e) { e.printStackTrace(); } } public void release() { try { if (session != null){ session.close(); } } catch (Exception e) { e.printStackTrace(); } } public void setSession(Session s) { this.session = s; } /** * @return */ public Session getSession() { return session; } /** * 由VO得到所有的记录 * @param voClassName * @return List VOClass */ public List qryAll_By_VOClassName(String voClassName) { List list = null; if (voClassName == null) return null; try { list = session.find("from "+ voClassName); } catch (HibernateException e) { release(); System.out.println("错误信息: voClassName 错误"); e.printStackTrace(); } return list; } /** * 由VO的class 和 id 号得到一个对象 * @param c * @param id * @return Object */ public Object fndVO_By_VOId(Class c, int id) { Object vo = null; Integer fid = new Integer(id); //类型转换 try { vo = session.load(c, fid); } catch (HibernateException e) { release(); e.printStackTrace(); } return vo; }} public class BaseJB implements IBaseJB{ /** * 由VO得到所有的记录 * @param voClassName * @return List VOClass * @throws Exception */ public List qryAll_By_VOClassName(String voClassName) throws Exception { List list = null; BaseDAO daoO = new BaseDAO(); list = daoO.qryAll_By_VOClassName(voClassName); daoO.release(); return list; } /** * 由VO的class 和 id 号得到一个对象 * @param c * @param id * @return Object * @throws Exception */ public Object fndVO_By_VOId(Class c, int id) throws Exception { Object o = null; BaseDAO daoO = new BaseDAO(); o = daoO.fndVO_By_VOId(c, id); daoO.release(); return o; } } 如何把FileWriter的编码方式改成日文啊!急!!! java调用DLL 怎么使用ajax?需要什么前提条件? 为什么我的视图数据在jsp中显示不出来? JAVA能否实现这样的技术? 急!求助性能问提 用http上传下载文件 关于CORBA的入门问题 哪位好心人能回答一个简单的问题? 用过wsad4.0的请进 struts应用中怎么都没提到:多记录的数据如何返回到前端,是不是可以把FORMBEAN的属性列做成数组呢?例子如下 菜鸟问题:学J2EE 有什么经典的书看...
protected Session session = null; public BaseDAO()
{
super();
try
{
this.session = HibernateInit.getInstance().getSessionFactory().openSession();
}
catch (Exception e)
{
e.printStackTrace();
}
}
public void release() {
try {
if (session != null){
session.close();
}
}
catch (Exception e) {
e.printStackTrace();
}
} public void setSession(Session s) {
this.session = s;
}
/**
* @return
*/
public Session getSession() {
return session;
}
/**
* 由VO得到所有的记录
* @param voClassName
* @return List VOClass
*/
public List qryAll_By_VOClassName(String voClassName)
{
List list = null;
if (voClassName == null) return null;
try
{
list = session.find("from "+ voClassName);
}
catch (HibernateException e)
{
release();
System.out.println("错误信息: voClassName 错误");
e.printStackTrace();
}
return list;
}
/**
* 由VO的class 和 id 号得到一个对象
* @param c
* @param id
* @return Object
*/
public Object fndVO_By_VOId(Class c, int id)
{
Object vo = null;
Integer fid = new Integer(id); //类型转换
try
{
vo = session.load(c, fid);
}
catch (HibernateException e)
{
release();
e.printStackTrace();
}
return vo;
}
}
{
/**
* 由VO得到所有的记录
* @param voClassName
* @return List VOClass
* @throws Exception
*/
public List qryAll_By_VOClassName(String voClassName) throws Exception
{
List list = null;
BaseDAO daoO = new BaseDAO();
list = daoO.qryAll_By_VOClassName(voClassName);
daoO.release();
return list;
} /**
* 由VO的class 和 id 号得到一个对象
* @param c
* @param id
* @return Object
* @throws Exception
*/
public Object fndVO_By_VOId(Class c, int id) throws Exception
{
Object o = null;
BaseDAO daoO = new BaseDAO();
o = daoO.fndVO_By_VOId(c, id);
daoO.release();
return o;
}
}