首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Java Web开发 >

hibernate3.0 + eclipse开发的奇怪有关问题

2012-01-20 
hibernate3.0 + eclipse开发的奇怪问题BookDAO.java-------------...publicvoidsave(BooktransientInstanc

hibernate3.0 + eclipse开发的奇怪问题
BookDAO.java
-------------
...
        public   void   save(Book   transientInstance)   {              
               
                Session   session   =   null;
                Transaction   tx   =   null;
                try   {
                session   =   this.getSession();
                tx   =   session.beginTransaction();
                        session.save(transientInstance);
                        tx.commit();
                        log.debug( "save   successful ");
                }   catch   (RuntimeException   re)   {

                        log.error( "save   failed ",   re);
                        tx.rollback();
                        throw   re;
                }finally{
                if(session   !=   null)
                {
                session.close();
                }
                }
        }

      public   void   update(Book   detachedInstance)   {                            
                Session   session   =   null;
                Transaction   tx   =   null;
                try   {
                session   =   this.getSession();
                tx   =   session.beginTransaction();
                        session.update(detachedInstance);
                        tx.commit();
                        log.debug( "update   successful ");
                }   catch   (RuntimeException   re)   {
                        tx.rollback();
                        throw   re;
                }finally{
                if(session   !=   null)
                {


                session.close();
                }
                }
        }

        public   Book   findById(   java.lang.String   id)   {

                try   {
                        Book   instance   =   (Book)   getSession()
                                        .get( "bookStore.book ",   id);
                        return   instance;
                }   catch   (RuntimeException   re)   {

                        throw   re;
                }
        }
页面viewBook.jsp是:
序号     书名           价格     点击
1           jsp开发     20.0     55
...


现在我在程序里每次当用户点击这个书名时,执行代码为:
BookDAO   bookDAO   =   new   BookDAO();
Book   b   =   bookDAO.findById(request.getParameter( "book_id "));
b.setViewTimes(b.getViewTimes()   +   1);
bookDAO.update(b);
...
结果发现,当页面的点击数随着点击的次数增加时出现以下奇怪问题

1.比如viewBook.jsp页面现在为

序号     书名           价格     点击
1           jsp开发     20.0     55
...

点击进去,然后再通过导航链接访问viewBook.jsp发现,上面那行的点击次数仍为55,未改变。这种情况不是100%,有时会正常更新。

2.如果第一条中的正常,那么常会出现这种情况
序号     书名           价格     点击
1           jsp开发     20.0     58
...
点击进去一次,通过导航链接再访问viewBook.jsp,现在页面为
序号     书名           价格     点击
1           jsp开发     20.0     59
...
再点击进去一次,通过导航链接再访问viewBook.jsp,现在却回到
序号     书名           价格     点击
1           jsp开发     20.0     58
...
关了浏览器再来仍然是58.

我用的hibernate3.0,不知是我的DAO的update方法的问题,还是IE问题,这个奇怪的问题使我的项目无法完成,请各位帮忙。

[解决办法]
缓存的问题
[解决办法]
up
[解决办法]
你那数据库里面的值是多少啊??
要是数据库里面是正确的话
有可能缓存问题了
要是缓存问题也是TOMCAT的话把tomcat关了,然后删除work重启一下看看
[解决办法]
同意ls 的观点,顶一下

热点排行