在hibernate实现登录中一对多关系我在修改的时候想要删除多方再添加多方如何实现

hibernate一对多映射,保存一方,多方外键为null解决方法
&来源:读书人网&【读书人网():综合教育门户网站】
hibernate一对多映射,保存一方,多方外键为null解决办法hibernate有很多关系映射,我就不给大家一一介绍了,
hibernate一对多映射,保存一方,多方外键为null解决办法
hibernate有很多关系映射,我就不给大家一一介绍了,下面是我主要解决一对多映射,保存一方时,多方的外键为null的解决办法。我给大家写个部门和人员的例子。保存时多方外键为null的代码如下:一方:public class Department {private Integer deptId;private String deptNprivate Sprivate Set&Employee& employees = new HashSet&Employee&();&&&&&&& //set(),get()方法省略}多方:public class Employee {private Integer empId;private String empNprivate D&&&&&&& //set(),get()方法省略}写的是xml配置文件一方的映射文件:...&set name="employees" cascade="all" inverse="true"&&key column="deptId"&&/key&&one-to-many cascade="all" column="deptId"&&/many-to-one&...大家可以看到我是把维护交给了多方。下面是测试代码:public static void main(String[] args) {Session session =Transaction transaction =try {session = HibUtil.getSession();transaction = session.beginTransaction();Department department = new Department();department.setDeptName("技术部");department.setLocation("海淀");Employee employee = new Employee();employee.setEmpName("张三");Employee employee1 = new Employee();employee.setEmpName("张三1");department.getEmployees().add(employee);department.getEmployees().add(employee1);session.save(department);mit();} catch (Exception e) {e.printStackTrace();}finally{if(session!=null){session.close();}}}这样测试的话多方的外键就为null了。我们一般认为这样是可以保存的,因为有级联么。但是我们又使用了inverse反向,所以问题就在这么,是我们测试的有问题。我们使用了inverse反向,下来就是多方(employee)来维护了。我们保存一方的时候,必须要让hibernate知道多方中有一方,这样才能保存一方时,多方会找到可保存的外键了。所以大家只需要在上面测试代码中加入两行代码即可:...employee.setDepartment(department);employee1.setDepartment(department);...这样就OK了,希望能帮到大家的忙。hibernate 一对多,多方有多个表,该如何处理 - Java Web开发当前位置:& &&&hibernate 一对多,多方有多个表,该如何处理hibernate 一对多,多方有多个表,该如何处理&&网友分享于:&&浏览:35次hibernate 一对多,多方有多个表hibernate,一对多关系,例如,一个学生,多个课程,课程又分两个表中,一个是选定的课程,一个是备用课程,两个课程表内容会相互转化,这个关联关系怎么写啊?有没有办法------解决方案--------------------
两个表的类容你别管,反正是当你在数据库中查询的时候是线程安全的。主要是看你的表之间是什么关系。查询的时候又是靠什么关系去查询的
12345678910
12345678910
12345678910 上一篇:下一篇:文章评论相关解决方案 12345678910 Copyright & &&版权所有hibernate一对多关联关系,插入数据问题_百度知道
hibernate一对多关联关系,插入数据问题
&#47.hbm.setBrf(brf);scenics&
&lt.;&gt,然后我setCityId(scenicService.setShortBrf(shortBrf);插入数据然后问题来了ERROR;/false&&#47.java/many-to-one name=&quot.insertScenic(scenic);city_id&
scenic。现在有点纠结了;
&/ column=&&这一句配置代码;&gt.xml中配置&save-update&/
scenic,我现在想实现的是输入输入景点相关信息和城市名 然后插入以下是action中的代码Scenic scenic = new Scenic();save-update& specified twice我知道貌似是因为&lt.findCityId(cityname))这一句貌似就重复了,(插入scenic)/
scenic,望指教我该怎么修改代码 ;/set name=&然后 private S private String brf./
&lt.true&many-to-one&gt: Column '&key column=&/city_id&;/ column=&city& &#47, 我把这个配置代码删了以后成功了;set&Scenic&CITY_ID'这个是为了得到cityid
scenicSone-to-many class=&/many-to-one&scenic,这一句就已经得到了一个cityid.xml中配置& private S其他省略然后配置中city,但是 不能关联查询了.javaprivate City city.findCityId(cityname));&#47我有2个表一个 景点 scenic 一个城市 city 一个city对应多个scenic 2个通过 cityid外键关联 但是scenic中 没有 cityname列于是查询的时候用的关联查询C&省略 getter setterScenic.city_id&quot、dao层代码就省略了;以下是插入的相关代码.setCityId(scenicScity&quot./many-to-one name=& inverse=&quot,并写入了,结果是 能根据cityname查到 相应景点信息但是 我现在做插入功能的时候就出问题了;& lazy=&&gt.Scenic&private Set& cascade=&quot,谢过.setName(name); cascade=&quot
提问者采纳
findCityByName(cityname)).setCity(scenicService1、scenice的setCityId方法怎么写的,scenic?2、scenice的setCityId方法用setCity方法替代
提问者评价
多谢! 就是把setCityId方法换成了setCity,解决了。
其他类似问题
为您推荐:
其他1条回答
可能sql语句里写了两个CITY_ID2;city_id&quot,把column=&quot1
hibernate的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁请教hibernate中对于自身一对多关联的情况下。删除父亲要级联删除下面的所有子该如何做?-java-电脑编程网请教hibernate中对于自身一对多关联的情况下。删除父亲要级联删除下面的所有子该如何做?作者:java2000_net 和相关&&请教hibernate中对于自身一对多关联的情况下。删除父亲要级联删除下面的所有子该如何做?为什么无论怎么样的设置,即使是先去掉父子关系后仍然不可以删除。一直都是报。“由于级联关系的设定实例又重新被保存了”????疑惑呀------回答---------------其他回答(1分)---------你查一下cascade的用法------其他回答(1分)---------cascade= &delete-orphan &------其他回答(1分)---------cascade= &delete &------其他回答(1分)---------cascade= &delete & ------其他回答(1分)---------恩。我也有试了。不是同表的没有问题。自身的似乎因为既是子又是父。因为所有数据本身都是无线层次关系。所以不行------回答---------------其他回答(1分)---------你查一下cascade的用法------其他回答(1分)---------cascade= &delete-orphan &------其他回答(1分)---------cascade= &delete &------其他回答(1分)---------cascade= &delete &
------其他回答(1分)---------恩。我也有试了。不是同表的没有问题。自身的似乎因为既是子又是父。因为所有数据本身都是无线层次关系。所以不行相关资料:|||||||请教hibernate中对于自身一对多关联的情况下。删除父亲要级联删除下面的所有子该如何做?来源网络,如有侵权请告知,即处理!编程Tags:                &                    }

我要回帖

更多关于 hibernate实现注册 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信