Hibernate!!

gy281 2008-06-10 09:23:53
我在做Hibernate更新的时候
数据库里面的值已经改了,但是页面上显示出来的还是以前的的数据。
我用的方法是Hibernate自动生成的修改方法。
这是为什么呢?
...全文
104 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
gy281 2008-06-11
  • 打赏
  • 举报
回复
就是用的一个Session
TRMeister 2008-06-11
  • 打赏
  • 举报
回复
你的修改和查询用的是一个session么?
如果是,那就不应该有你说的问题。

如果不是同一个session那么,查询的session里面的数据的状态就是旧的。关了再开,才能取得新数据。
gy281 2008-06-10
  • 打赏
  • 举报
回复
最开始我在修改完之后就关掉session,但是查询前没关就出现旧数据。
但是现在我在重新查询前先关掉session 再进行查询就没问题,这是为什么?
TRMeister 2008-06-10
  • 打赏
  • 举报
回复
楼主仔细检查一下,你在别的线程里肯定有个没有关闭的 session在捣乱。
gy281 2008-06-10
  • 打赏
  • 举报
回复
我没有用action
numbcola 2008-06-10
  • 打赏
  • 举报
回复
楼上说的有道理 是你的session没有管理好 导致你的数据游离态和持久态不稳定,
还有你刷新页面,每刷新一次都相当于重新执行了一次action。
gy281 2008-06-10
  • 打赏
  • 举报
回复
我在修改完数据之后就马上把session关掉了
TRMeister 2008-06-10
  • 打赏
  • 举报
回复
你的session没有close。数据的状态不对。管理好你的session呀。

session开始

更新数据 //这里如果有别的线程从session里面读数据,那么读出的数据必然状态不对。

session结束

//要在这里读数据。状态就对了。
gy281 2008-06-10
  • 打赏
  • 举报
回复
是这样做的,结果不行.
在页面上刷新的时候,刷着刷着就是旧的数据.刷着刷着又是新的数据
burningice44 2008-06-10
  • 打赏
  • 举报
回复
应该你需要在修改后再取一次,
跳转到当前页面,
这样才能显示修改后的
gy281 2008-06-10
  • 打赏
  • 举报
回复
这个自动生成的Hibernate是用findById 啊,没有load方法
luoguofeng 2008-06-10
  • 打赏
  • 举报
回复
你把修改过的类,返回回页面显示不就好了
yami251139 2008-06-10
  • 打赏
  • 举报
回复
你用的session.load还是get?
不要和我说你用的find。。。
gy281 2008-06-10
  • 打赏
  • 举报
回复
我有清空页面缓存
聪头 2008-06-10
  • 打赏
  • 举报
回复
可能是页面有缓存。

67,538

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧