用springmvc整合hibernate结果删除和修改数据都无法进行,配置如下

web.xml
图片说明
dao层
图片说明

问题已经解决了,我把tx:annotation-driven/放在了application.xml里,但是事物控制是从spring.xml里读取的,把tx:annotation-driven/移到spring.xml就解决了

为什么我看不到图片?

增加和查询都可以执行,就是删除和修改没动静,修改完以后再查询一下数据又回来了,就像没提交一样,求解

图片说明

一般事务写在Service层的,你可以在update用merge()试试

能看看hibernate的配置么

是不是没报错,,,但是也没结果??那可能是哪里没提交好,,

没记错的话,,会话也是需要提交的,,你试试

  session.commit();

spring配置
图片说明

只要是对数据库的改变都需要提交事物,你没有提交
session.commt();

不是配置有问题 而是 你的 主键id没有值 没有传过去

和大家说明一下,不是提交的问题,session.save可以正确执行,日志里也有相应的sql语句,而session.delete和session.update这两个语句就相当于跳过了一样

我之前用SSH框架时用模板也遇到过这个问题,比如可以查询出数据,但保存不了数据。后来发现出问题是我配置的原因。



tx:attributes













/tx:attributes

/tx:advice 就这个。
比如方法名开头为saveUser getUser就没问题,但写成selUser就不行。
我没看到你的配置中有这种,所以我也不确定。望好

提交事务之前使用session.flush();