hibernate 基于外键的1-1

    xiaoxiao2021-12-14  22

    public class Wife { private Long id; private String name; private Husband husband;

     

    public class Husband { private Long id; private String name; private Wife wife;

     

     

    外键保存在husband的表中

     

    <?xml version="1.0" encoding="UTF-8"?>

    <!DOCTYPE hibernate-mapping PUBLIC    "-//Hibernate/Hibernate Mapping DTD 3.0//EN"     "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">

    <hibernate-mapping>

     <class name="hiber.Wife" table="wife">  <id name="id" type="java.lang.Long">    <column name="ID" scale="0" />   <!-- The generator-class attribute of @hibernate.id is deprecated, use the @hibernate.generator tag instead -->   <generator class="increment">   </generator>  </id>    <property name="name" type="java.lang.String" >   <column name="name" length="255"></column>  </property>  <one-to-one name="husband" property-ref="wife"></one-to-one> </class>  <class name="hiber.Husband" table="Husband">  <id name="id" type="java.lang.Long">    <column name="ID" scale="0" />   <!-- The generator-class attribute of @hibernate.id is deprecated, use the @hibernate.generator tag instead -->   <generator class="increment">   </generator>  </id>    <property name="name" type="java.lang.String" >   <column name="name" length="255"></column>  </property>  <many-to-one name="wife" class="hiber.Wife" lazy="false" unique="true"  not-null="true" cascade="all" >   <column name="wife_id" scale="0" />  </many-to-one> </class>

    </hibernate-mapping>

     

     

    测试:

     Wife wife = new Wife();  Husband husband = new Husband();  wife.setName("wife777");  husband.setName("husband777");  husband.setWife(wife);//  wife.setHusband(husband);  sph.save(wife);  sph.save(husband);

     

    //进行访问  Wife wife1 = sph.get(4l);  System.out.println(wife1.getName()+":"+wife1.getHusband().getName());    Husband husband1 = sph.getHusband(3l);  System.out.println(husband1.getName()+":"+husband1.getWife().getName());

    转载请注明原文地址: https://ju.6miu.com/read-964683.html

    最新回复(0)