打开index.jsp页面(先执行action,获取数据),刷新几次就页面就卡住了。
估计是连接没释放,我将连接数调多,就能多连接几次,但始终是治标不治本。
请假一下要怎么做?贴一下主要代码:
index.jsp:
<body>
<s:action name="index" executeResult="false"></s:action>
<UL>
<s:iterator value="#request.list">
<LI>
<A href='#'><s:property value="ETitle" /></A>
</LI>
</s:iterator>
</UL>
</body>action:
public String execute() {
HttpServletRequest request = ServletActionContext.getRequest();
List<Essay> list= essay.findEssay(3,4);//参数是列表类型和行数
request.setAttribute("list", list);
return null;
}dao:
public class EssayDAOImpl extends HibernateDaoSupport implements EssayDAO {
public List<Essay> findEssay(int type, int rows) {
String hql = "from Essay e where e.EType = "+ type +" order by e.ETime desc";
Query q = this.getSession().createQuery(hql).setFirstResult(0).setMaxResults(rows);
this.getSession().close();//没有起到作用
return (List<Essay>)q.list();
}
}applicationContext.xml连接数(没写这句是页面刷新10次左右就卡了,加上后就20次左右):
<property name="maxActive" value="20"/>所以就算我把连接数改大了,迟早也会卡住了,
新手自学S2SH,这问题应该难不了大大们,请指点一下,谢谢!
估计是连接没释放,我将连接数调多,就能多连接几次,但始终是治标不治本。
请假一下要怎么做?贴一下主要代码:
index.jsp:
<body>
<s:action name="index" executeResult="false"></s:action>
<UL>
<s:iterator value="#request.list">
<LI>
<A href='#'><s:property value="ETitle" /></A>
</LI>
</s:iterator>
</UL>
</body>action:
public String execute() {
HttpServletRequest request = ServletActionContext.getRequest();
List<Essay> list= essay.findEssay(3,4);//参数是列表类型和行数
request.setAttribute("list", list);
return null;
}dao:
public class EssayDAOImpl extends HibernateDaoSupport implements EssayDAO {
public List<Essay> findEssay(int type, int rows) {
String hql = "from Essay e where e.EType = "+ type +" order by e.ETime desc";
Query q = this.getSession().createQuery(hql).setFirstResult(0).setMaxResults(rows);
this.getSession().close();//没有起到作用
return (List<Essay>)q.list();
}
}applicationContext.xml连接数(没写这句是页面刷新10次左右就卡了,加上后就20次左右):
<property name="maxActive" value="20"/>所以就算我把连接数改大了,迟早也会卡住了,
新手自学S2SH,这问题应该难不了大大们,请指点一下,谢谢!
解决方案 »
- 我现在有个项目要发布 用的MYECLIPSE 都是用这个软件自带的包 请问怎么发布到TOMCAT???从来没弄过!!!!
- jspSmartUpload上传大小限制的问题?
- Context
- 顶贴者均有分相送:这个带输出参数的存储过程问题出在那里 ??
- 新-structs转反中文问题
- 如何用servlet filter实现加密解密?
- 加急!! 如何定位读取文件中某行内容,文件写入时用的是FileInputStream
- 在jsp页面中通过session传递Vector时发生的问题?那位大虾帮看看!
- 请教如何在网页中实现TreeView的问题,欢迎大家参与!
- 各位用 jsp 做过什么项目没有,与 asp 有什么重要区别?
- iframe如何实现图片动画预览效果?
- request.getparameter无法使用String 对象
http://www.blogjava.net/beansoft/archive/2009/04/14/265504.html
List list = getHibernateTemplate().executeFind( new HibernateCallback() {
public Object doInHibernate(Session session)
throws HibernateException, SQLException {
Query query = session.createQuery(hql);
for ( int i =0; i < args. length ; i++) {
query.setParameter(i, args[i]);
}
List list = query.list();
return list;
}
});
return list;
}
其实你原来代码的那两次getSession得到的不一定是同一个啊,所以你应该用变量来保存这个Session。
就是说,用
Session session = getSession();
try {
......
} finally {
session.close();
}