BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / java / #18032同步于 2011/4/27
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Java机器人发帖

求助:spring DAO的getHibernateTemplate.save无法保存数据

IIBUPT
2011/4/27镜像同步17 回复
小弟采用了spring+hibernate访问mysql数据库,通过myEclipse自动生成了pojo类和映射文件还有dao。其中保存的dao是这样的: public void save(Role transientInstance) { log.debug("saving Role instance"); try { getHibernateTemplate().save(transientInstance); log.debug("save successful"); } catch (RuntimeException re) { log.error("save failed", re); throw re; } } 也不报错,但是数据就是保存不到数据库当中,可是getHibernateTemplate().get没问题,卡了两天了也没有解决,希望大家不吝赐教,感激不尽~~~[em9][em9]
订阅后,新回复会通过你的通知中心匿名送达。
9 条回复
ox机器人#1 · 2011/4/27
getHibernateTemplate()返回的是一个session对象么? commit了么? 【 在 IIBUPT (北邮人) 的大作中提到: 】 : 小弟采用了spring+hibernate访问mysql数据库,通过myEclipse自动生成了pojo类和映射文件还有dao。其中保存的dao是这样的: : public void save(Role transientInstance) { : log.debug("saving Role instance"); : ...................
IIBUPT机器人#2 · 2011/4/27
初学java,不知道getHibernateTemplate的返回值是一个session对象啊!! 我以为返回值是void呢 怎样commit? 【 在 ox 的大作中提到: 】 : getHibernateTemplate()返回的是一个session对象么? : commit了么? : 【 在 IIBUPT (北邮人) 的大作中提到: 】 : ...................
IIBUPT机器人#3 · 2011/4/27
我在网上搜了一下,都说是事务的问题,我就在spring中配置了事务,可是还不行呐 小贝师兄看看问题出在哪了? <bean id="RoleDAOTarget" class="pack1.RoleDAO"> <property name="sessionFactory"><ref local="sessionFactory"/> </property> </bean> <bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager"> <property name="sessionFactory"><ref local="sessionFactory"/> </property> </bean> <bean id="RoleDAO" class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean"> <property name="transactionManager"><ref local="transactionManager"/> </property> <property name="target"><ref local="RoleDAOTarget"/> </property> <property name="transactionAttributes"> <props> <!-- <prop key="insert*">PROPAGATION_REQUIRED</prop>--> <!-- <prop key="update*">PROPAGATION_REQUIRED</prop>--> <prop key="*">PROPAGATION_REQUIRED,readOnly</prop> </props> </property> </bean> 【 在 ox 的大作中提到: 】 : getHibernateTemplate()返回的是一个session对象么? : commit了么? : 【 在 IIBUPT (北邮人) 的大作中提到: 】 : ...................
novacaine机器人#4 · 2011/4/27
看看 hibernate-mapping 有无问题?
IIBUPT机器人#5 · 2011/4/27
映射文件时myEclipse自动生成的,我也没修改过,会出什么意想不到的问题呢? 忘了说了就是读数据库没问题,但是写或者修改就不行。。。 <hibernate-mapping> <class name="pack1.Role" table="role" catalog="test"> <id name="roleId" type="java.lang.Integer"> <column name="RoleId" /> <generator class="native" /> </id> <property name="roleName" type="java.lang.String"> <column name="RoleName" length="100" not-null="true" /> </property> <property name="roleLevel" type="java.lang.Integer"> <column name="RoleLevel" not-null="true" /> </property> </class> </hibernate-mapping> 【 在 novacaine 的大作中提到: 】 : 看看 hibernate-mapping 有无问题? : --
ox机器人#6 · 2011/4/27
事务一般是这样用的 Transaction tx = session.beginTransaction(); session.save(obj); tx.commit(); 但是你用Spring的话,事务应该被Spring接管了吧,看看配置上是不是有问题 【 在 IIBUPT (北邮人) 的大作中提到: 】 : 初学java,不知道getHibernateTemplate的返回值是一个session对象啊!! : 我以为返回值是void呢 : 怎样commit? : ...................
IIBUPT机器人#7 · 2011/4/27
恩 这种方法我试了 可以保存到数据库 可是用spring的getHibernateTemplate().save方法就不行。。郁闷啊 我觉得配置应该没问题呀 否则为什么可以读数据库呢 偏偏不能写,这会是什么原因能导致这种情况呀? 【 在 ox 的大作中提到: 】 : 事务一般是这样用的 : Transaction tx = session.beginTransaction(); : session.save(obj); : ...................
novacaine机器人#8 · 2011/4/27
用getHibernateTemplate()的时候自己就不用关心事务了吧,我都没配过事务 - - 再看看dataSource 和 sessionFactory是否有错呗。。。
IIBUPT机器人#9 · 2011/4/27
唉 实在看不出问题出哪了 【 在 novacaine 的大作中提到: 】 : 用getHibernateTemplate()的时候自己就不用关心事务了吧,我都没配过事务 - - 再看看dataSource 和 sessionFactory是否有错呗。。。 : --