浏览 500 次
|
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
|---|---|
| 作者 | 正文 |
|
时间:2007-11-01 关键字: hibernate synchronizer 内存
这段时间写了个struts+hibernate的demo,Struts是1.3版的,Hibernate用的是Hibernate Synchronizer工具。Hibernate Synchronizer生成的代码真是不错:从数据库脚本到生成DAO层,只需要不到10分钟的时间,一个爽字了得。然后拷贝个struts模板,改改里面的Action参数,加个forward也就可以了。 程序运行是没问题,但是突然发现另外一个严重的问题,就是Tomcat的内存问题。 下面是_RootDAO虚类里面实现的static方法,所有的其他DAO都是继承这个_RootDAO虚类,所以要使用的时侯,只需要用过_RootDAO.initialize()方法完成配置和SessionFactory生成工作。
在Action的execute()方法中使用继承了_RootDAO的UserinfoDAO类。下面注释的代码是为了调试,看是否只调用SessionFactory就会产生内存增高的现象。
实际情况也的确如此,即使只是用_RootDAO.intialize()方法,都会出现内存无法释放的现象。 而后我将intialize()方法中的buildSessionFactory()方法注释掉,发现仍然是有这种现象。还没弄明白 下面是在网上面找到的一个链接,写得很好。他的处理方法不是从Hibernate去考虑,而是从Tomcat的SessionContext事件管理来考虑的。 声明:JavaEye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
|
|
| 返回顶楼 | |
|
时间:2007-11-01
一直都是用MyEclipse生成的,试试Hibernate Synchronizer。
|
|
| 返回顶楼 | |



,先记录下来,等想通了,再补上。
