为什么这个SSH项目经常死掉?
完整包:http://aoron.host21.datanj.cn/blog.rar
下面是问题~~用spring+struts+hibernate写的。。
http://localhost:8080/user.do?action=memberlist
这个是查询会员列表的。
刷新多次后(按控制台显示hibernate的show_sql显示,查询8次后就再次刷新,那个页面就定定停在那里,IE的滚动条停在20%左右,前进不了···)。
其他需要查询数据库的页面也访问不了,写入也不行。。。
但是在tomcat的manager页面reload该项目后,又可以访问了。但在一个页面不停的刷新8次后,有出现同样的情况,请问这是怎么回事啊?
这个现象只在tomcat里出现。。
使用php查询数据库却没有问题!!!phpmyadmin vbb论坛 这些程序可以照常使用。
使用cmd 查询 SELECT * from user;
也可以查询出数据,就在项目里访问有关查询页面都会定定停在那里,IE的滚动条停在20%左右,前进不了。。
tomcat 5.5
数据库是 mysql 5.0
Spring的数据库配置段。。
<bean id="dataSource"
class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
<property name="driverClassName"
value="org.gjt.mm.mysql.Driver">
</property>
<property name="url"
value="jdbc:mysql://localhost:3306/blog?characterEncoding=utf-8">
</property>
<property name="username" value="root"> </property>
<property name="password" value="mysqladmin"> </property>
</bean>
我以为是连接次数过多又没关闭数据库连接照成的。。
可是我在spring的datasource中已经设置 destroy-method="close"
我以为这个不起作用,又在查询完后关闭session!!!
为什么还是这样啊???
在tomcat的后台中显示,sessions只有2个。。。。
------解决方案--------------------
可是我在spring的datasource中已经设置 destroy-method="close"
这个是指在dataSourcec被销毁时,自动关闭。
和你的数据库查询的Connection 的 close 没有任何关系。
你必须使用后,明确的关闭数据库连接和Statement资源。