SSH注解的方式更新数据库,出现更新语句,但数据并未更新到数据库

facetothesea 2012-06-11 10:58:24
我采用的是注解的方式@Transactional,这个应该是自动提交事务的吧,但更新语句出现后,数据并未更新到数据库,求解
...全文
360 25 打赏 收藏 转发到动态 举报
写回复
用AI写文章
25 条回复
切换为时间正序
请发表友善的回复…
发表回复
mqchange 2012-11-09
  • 打赏
  • 举报
回复
http://five.iteye.com/blog/1721787
mqchange 2012-11-09
  • 打赏
  • 举报
回复
尝试在配置文件中加入 <tx:annotation-driven/>
facetothesea 2012-07-02
  • 打赏
  • 举报
回复
没合适的,先结贴吧,回头有解决方案了再回复
facetothesea 2012-06-28
  • 打赏
  • 举报
回复
哎,没人回呀
facetothesea 2012-06-28
  • 打赏
  • 举报
回复
哎,没人回呀
laokaizzz 2012-06-18
  • 打赏
  • 举报
回复
facetothesea 2012-06-12
  • 打赏
  • 举报
回复
[Quote=引用 17 楼 的回复:]

方法参数final 问题
[/Quote]
没有用到final这个参数啊
facetothesea 2012-06-12
  • 打赏
  • 举报
回复
[Quote=引用 16 楼 的回复:]

fighting!!!!!!
[/Quote]
- - ,谢谢
langzeng 2012-06-12
  • 打赏
  • 举报
回复
方法参数final 问题
laokaizzz 2012-06-12
  • 打赏
  • 举报
回复
fighting!!!!!!
laokaizzz 2012-06-12
  • 打赏
  • 举报
回复
我觉得也是配置的问题,java的配置真麻烦啊,轰轰轰轰,楼主耐心点看
tomcatlee 2012-06-11
  • 打赏
  • 举报
回复
换成
@Transactional(propagation=Propagation.REQUIRED)
试试
facetothesea 2012-06-11
  • 打赏
  • 举报
回复
追踪源码,发现DefaultSaveOrUpdateEventListener中的performSaveOrUpdate方法,返回的是PERSISTENT(持久化)的值0,由此应该是要往数据库更新的
facetothesea 2012-06-11
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 的回复:]

贴出相关代码来看看
[/Quote]
	@Transactional
public void saveDeptIp(HsDept deptSaveIp)
{
hsDeptDao.save(deptSaveIp);
}

public void save(final T entity) {
Assert.notNull(entity, "entity涓嶈兘涓虹┖");
getSession().saveOrUpdate(entity);
logger.debug("save entity: {}", entity);
}
facetothesea 2012-06-11
  • 打赏
  • 举报
回复
是由于配置的问题吗,我项目采用的是全注解的方式,查询都没问题,一涉及更新就更新不了
tomcatlee 2012-06-11
  • 打赏
  • 举报
回复
贴出相关代码来看看
facetothesea 2012-06-11
  • 打赏
  • 举报
回复
哪位大侠帮忙解答下,这个问题搞了好久了。。。。。。。
facetothesea 2012-06-11
  • 打赏
  • 举报
回复
我用的是JTATransactionManager来实现多数据源事务管理的配置

<!-- 事务管理器 多数据源事务 -->
<bean id="atomikosTransactionManager" class="com.atomikos.icatch.jta.UserTransactionManager" init-method="init" destroy-method="close">
<property name="forceShutdown"><value>true</value></property>
</bean>

<bean id="atomikosUserTransaction" class="com.atomikos.icatch.jta.UserTransactionImp">
<property name="transactionTimeout" value="300"/>
</bean>

<bean id="txManager" class="org.springframework.transaction.jta.JtaTransactionManager" >
<property name="transactionManager" ref="atomikosTransactionManager" />
<property name="userTransaction" ref="atomikosUserTransaction"/>
<property name="allowCustomIsolationLevels" value="true"/>
</bean>
facetothesea 2012-06-11
  • 打赏
  • 举报
回复
[Quote=引用 11 楼 的回复:]

引用 10 楼 的回复:

引用 9 楼 的回复:

@Transactional
放到类上,别放到方法上。试试。

不行,如果查询没问题的,是不是可以排除Hibernate配置的问题?

嗯 。 应该还是事物的配置问题。 配置事物的类 ,是否在你扫描的包内。
[/Quote]
在的,配置的是打扫整个项目
<!-- 使用annotation 自动注册bean,并保证@Required,@Autowired的属性被注入 -->
<context:component-scan base-package="com.ff.study" />
_jerrytiger 2012-06-11
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 的回复:]

引用 9 楼 的回复:

@Transactional
放到类上,别放到方法上。试试。

不行,如果查询没问题的,是不是可以排除Hibernate配置的问题?
[/Quote]
嗯 。 应该还是事物的配置问题。 配置事物的类 ,是否在你扫描的包内。
加载更多回复(5)

67,513

社区成员

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

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