利用hibernate+spring向mysql数据库加入数据。执行成功,但是数据库没数据。如果用hibernate查寻结果正常

不报错。三个dao配置,dao实现类,test主含数... 不报错。
三个dao配置,dao实现类,test主含数
展开
 我来答
shenme2063
推荐于2018-04-04 · TA获得超过208个赞
知道小有建树答主
回答量:128
采纳率:0%
帮助的人:124万
展开全部
你应该用了spring配置式事务,被限制了修改了吧。

如下面:
<!-- 事务代理拦截器的配置 -->
<bean id="baseTransactionProxy" abstract="true" class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean">
<property name="transactionManager">
<ref bean="transactionManager" />
</property>
<property name="transactionAttributes">
<props>
<prop key="insert*">PROPAGATION_REQUIRED</prop>
<prop key="update*">PROPAGATION_REQUIRED</prop>
<prop key="delete*">PROPAGATION_REQUIRED</prop>
<prop key="*">PROPAGATION_REQUIRED,readOnly</prop>
</props>
</property>
</bean>

这个配置中只允许 添加事务的对象中
以insert , update ,delete 开头的方法名 才允许修改数据库,
否则都是只读。

比方说我们写了一个方法,
doUpdateBook(Book book);
给这个类配置类事务,

那么它是无法修改数据库的,解决方法是,在配置事务里面吧规则加上去。

<!-- 事务代理拦截器的配置 -->
<bean id="baseTransactionProxy" abstract="true" class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean">
<property name="transactionManager">
<ref bean="transactionManager" />
</property>
<property name="transactionAttributes">
<props>
<prop key="insert*">PROPAGATION_REQUIRED</prop>
<prop key="update*">PROPAGATION_REQUIRED</prop>
<prop key="delete*">PROPAGATION_REQUIRED</prop>
<prop key="doUpdate*">PROPAGATION_REQUIRED</prop>
<prop key="*">PROPAGATION_REQUIRED,readOnly</prop>
</props>
</property>
</bean>

,这样,所有 doUpdate 开头的方法都可以修改数据库。
ahyyxx222
2011-02-18 · TA获得超过2532个赞
知道小有建树答主
回答量:1405
采纳率:33%
帮助的人:1205万
展开全部
如果你插入以后,再调用查询方法确实能查出来,那就是你可能用了一些带界面的工具,比如SQLYOG,NAVICAT之类的,那个客户端没有刷新库表的显示
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
ganhuanxp
2011-02-13 · TA获得超过363个赞
知道小有建树答主
回答量:259
采纳率:0%
帮助的人:265万
展开全部
可能是缓存的问题,详细确定的话,把代码贴上来看看
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式