麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 學院 > 開發設計 > 正文

Hibernate 一對一外鍵雙向關聯

2019-11-10 20:25:32
字體:
來源:轉載
供稿:網友

Hibernate 一對一外鍵雙向關聯

 一對一外鍵關聯是一對多外鍵關聯的特例,只是在多的一方加了個唯一性約束。 一、模型一個人對應一個地址。 /*==============================================================*//* DBMS name:      MySQL 5.0                                    *//* Created on:     2008-12-9 0:12:54                            *//*==============================================================*/drop table if exists address;drop table if exists person;/*==============================================================*//* Table: address                                               *//*==============================================================*/create table address(   id                   bigint not null auto_increment comment 'ID',   detail               varchar(120) not null comment '詳細地址',   personid             bigint comment '人的ID',   PRimary key (id))type = InnoDB;alter table address comment '地址';/*==============================================================*//* Table: person                                                *//*==============================================================*/create table person(   id                   bigint not null auto_increment comment 'ID',   name                 varchar(24) not null comment '姓名',   primary key (id))type = InnoDB;alter table person comment '人';alter table address add constraint FK_Reference_4 foreign key (personid)      references person (id) on delete restrict on update restrict;  二、對象模型 public class Personimplements java.io.Serializable {   private Long id;   private String name;   private Address address; public class Addressimplements java.io.Serializable {   private Long id;   private Person person;   private String detail; 三、映射文件<?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="entity.Person" table="person">    <id name="id" type="java.lang.Long">      <columnname="id" />       <generatorclass="identity"/>     </id>    <propertyname="name"type="java.lang.String">      <columnname="name"length="24"not-null="true">        <comment>姓名</comment>      </column>    </property>    <one-to-onename="address"cascade="all"/>   </class></hibernate-mapping> <?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="entity.Address" table="address" catalog="testdb">    <id name="id" type="java.lang.Long">      <columnname="id" />       <generatorclass="identity"/>     </id>    <propertyname="detail"type="java.lang.String">      <columnname="detail"length="120"not-null="true">        <comment>詳細地址</comment>      </column>    </property>    <many-to-onename="person"class="entity.Person"      fetch="select"unique="true">      <columnname="personid">        <comment>人的ID</comment>      </column>    </many-to-one>  </class></hibernate-mapping> <?xml version='1.0' encoding='UTF-8'?><!DOCTYPE hibernate-configuration PUBLIC                     "-//Hibernate/Hibernate Configuration DTD 3.0//EN"                     "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd"><!-- Generated by MyEclipse Hibernate Tools.                                    --> <hibernate-configuration>  <session-factory>    <propertyname="connection.username">root</property>    <propertyname="connection.url">      jdbc:mysql://localhost:3306/testdb     </property>    <propertyname="dialect">      org.hibernate.dialect.MySQLDialect     </property>    <propertyname="connection.passWord">xiaohui</property>    <propertyname="connection.driver_class">      com.mysql.jdbc.Driver     </property>    <propertyname="show_sql">true</property>    <propertyname="format_sql">true</property>    <mappingresource="entity/Person.hbm.xml"/>     <mappingresource="entity/Address.hbm.xml"/>   </session-factory></hibernate-configuration> 四、測試import org.hibernate.Transaction; import entity.Address; import entity.Person; import utils.HibernateSessionFactory; public class Test {  public staticvoid main(String[] args) {     savePerson();   }   public staticvoid savePerson() {     Person person = new Person("張三");    Address address = new Address("XX街X號");    person.setAddress(address);     address.setPerson(person);     Session session = HibernateSessionFactory.getSession();     Transaction tx = session.beginTransaction();     session.save(person);     tx.commit();   } } 運行日志:Hibernate:            insert            into                 person                 (name)            values                 (?) Hibernate:            insert            into                 testdb.address                 (detail, personid)            values                 (?, ?)
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 成码无人av片在线观看网站 | 亚州综合图片 | 成人三级在线播放 | 色淫网站免费视频 | 欧美日韩精品中文字幕 | 电影av在线 | 黄色免费av网站 | 中文字幕在线观看91 | 国产羞羞视频在线免费观看 | 一区二区三区在线观看视频 | 毛片av网| 国产1区2区3区在线观看 | 国产精品久久久久久久久久久久久久久 | 91精品福利视频 | 日本高清黄色片 | 国产精品v片在线观看不卡 成人一区二区三区在线 | 亚洲国产综合在线观看 | 草久在线观看视频 | 日本黄色免费片 | 久久一区二区三区av | 99成人在线 | 羞羞色院91精品网站 | 伊人亚洲精品 | 一级黄色大片在线观看 | 国产日韩三区 | 黄色av网站免费 | 国产精品成aⅴ人片在线观看 | 精品一区二区三区欧美 | 羞羞视频免费观看入口 | 特一级黄色毛片 | 国产亚洲精品成人a | 成人在线视频在线观看 | 国产一区二区三区网站 | 久久国产亚洲视频 | 成人午夜在线免费视频 | 狠狠操夜夜爱 | 一级黄色性感片 | 91经典视频| 亚洲精品一区二区三区大胸 | 91网站在线播放 | 免费a视频在线观看 |