Hibernate 关联表字段赋值问题

whhmkj 2013-01-11 11:39:41
如图:

这是java文件里面定义的属性字段,将关联表作为其属性

Hibernate映射文件:
主表:

从表:


主表数据库里面字段TRAIN_SERIAL需要通过从表的字段TRAIN_SERIAL来进行赋值

保存数据的时候是这样的:

数据是插入进去了 但从表原有的数据全部做了更新 只有赋值的字段没有为空 其他的都变空了
不知道说明白没 麻烦哪位给个解决的思路 我试过改映射文件不让某些字段更新 但这样的话要说想修改从表的某些数据那不是永远修改不成 跪求思路
...全文
248 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
BUG胡汉三 2013-01-11
  • 打赏
  • 举报
回复
你的配置:outer-join=true 去掉、然后在更新! 这样应该就OK了!
whhmkj 2013-01-11
  • 打赏
  • 举报
回复
引用
snjtrs
多谢各位大哥的帮忙 小弟我按照这位的配置方式配置 就解决了 真是多谢了啊 分分给你们
snjtrs 2013-01-11
  • 打赏
  • 举报
回复
LZ 这个很简单 那是你Hibernate的映射文件没有配置好 只需要修改某些属性就好
在你主表的映射文件里面


失落夏天 2013-01-11
  • 打赏
  • 举报
回复

<!DOCTYPE hibernate-mapping PUBLIC 
    "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
    "http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd">
<hibernate-mapping package="com.briup.hibernate.query" auto-import="true">
	<class name="Dept" table="s_dept">
		<id name="id">
			<generator class="increment"></generator>
		</id>
		<property name="name"></property>
		<set name="emp">
			<key column="dept_id"></key>
			<one-to-many class="Emp"/>
		</set>
	</class>
	<class name="Emp" table="s_emp" >
		<id name="id">
			<generator class="increment"></generator>
		</id>
		<property name="last_name" column="last_name"></property>
		<property name="salary"></property>
		<!-- <property name="dept"></property> -->
		<many-to-one name="dept" class="Dept" column="dept_id"></many-to-one>
		<many-to-one name="manager" class="Emp" column="manager_id"></many-to-one>
	</class>
	<!-- <filter name="idFilter" condition="id > :myid"></filter>
	<query name="byId">
		<![CDATA[
			from Emp where id=1
		]]>
	</query> -->
	
	<filter-def name="idFilter">
		<filter-param name="myid" type="long"/>
	</filter-def>
	
</hibernate-mapping>
今天看代码看的头痛,发个以前的例子吧。。 今天上班时间最后一回复
whhmkj 2013-01-11
  • 打赏
  • 举报
回复
引用
hzw2312 你的配置:outer-join=true 去掉、然后在更新! 这样应该就OK了!
你说的不行的 照样更新 把已有的数据全部都去掉了

81,122

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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