<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    溫馨提示:您的每一次轉載,體現了我寫此文的意義!!!煩請您在轉載時注明出處http://www.tkk7.com/sxyx2008/謝謝合作!!!

    雪山飛鵠

    溫馨提示:您的每一次轉載,體現了我寫此文的意義!!!煩請您在轉載時注明出處http://www.tkk7.com/sxyx2008/謝謝合作!!!

    BlogJava 首頁 新隨筆 聯系 聚合 管理
      215 Posts :: 1 Stories :: 674 Comments :: 0 Trackbacks

    create table Husband
    (
       id                   
    int not null auto_increment,
       name                 
    varchar(200),
       
    primary key (id)
    );
    create table Wife
    (
       id                   
    int not null,
       name                 
    varchar(20),
       
    primary key (id)
    );
    alter table Wife add constraint FK_Reference_1 foreign key (id)
          
    references Husband (id) on delete restrict on update restrict;
    Wife.java
    package com.jpa.one2one.bean;

    import java.io.Serializable;

    import javax.persistence.Column;
    import javax.persistence.Entity;
    import javax.persistence.Id;
    import javax.persistence.OneToOne;
    import javax.persistence.PrimaryKeyJoinColumn;
    import javax.persistence.Table;

    @SuppressWarnings(
    "serial")
    @Entity
    @Table
    public class Wife implements Serializable{
        
    private int id;
        
    private String name;
        
    private Husband husband;
        @Id
        @Column
        
    public int getId() {
            
    return id;
        }
        
    public void setId(int id) {
            
    this.id = id;
        }
        @Column(name
    ="name")
        
    public String getName() {
            
    return name;
        }
        
    public void setName(String name) {
            
    this.name = name;
        }
        @OneToOne
        @PrimaryKeyJoinColumn
        
    public Husband getHusband() {
            
    return husband;
        }
        
    public void setHusband(Husband husband) {
            
    this.husband = husband;
        }
        
    }
    Husband.java
    package com.jpa.one2one.bean;

    import javax.persistence.CascadeType;
    import javax.persistence.Column;
    import javax.persistence.Entity;
    import javax.persistence.GeneratedValue;
    import javax.persistence.GenerationType;
    import javax.persistence.Id;
    import javax.persistence.OneToOne;
    import javax.persistence.PrimaryKeyJoinColumn;
    import javax.persistence.Table;

    @Entity
    @Table
    public class Husband {
        
        
    private int id;
        
    private String name;
        
    private Wife wife;
        @Id
        @Column
        @GeneratedValue(strategy
    =GenerationType.AUTO)
        
    public int getId() {
            
    return id;
        }
        
    public void setId(int id) {
            
    this.id = id;
        }
        @Column(name
    ="name")
        
    public String getName() {
            
    return name;
        }
        
    public void setName(String name) {
            
    this.name = name;
        }
        @OneToOne(cascade
    =CascadeType.ALL)
        @PrimaryKeyJoinColumn
        
    public Wife getWife() {
            
    return wife;
        }
        
    public void setWife(Wife wife) {
            
    this.wife = wife;
        }
        
    }
    HusbandDAO
    package com.jpa.one2one.dao;

    import javax.persistence.EntityManager;
    import javax.persistence.EntityTransaction;

    import org.junit.Test;

    import com.jpa.one2one.bean.Husband;
    import com.jpa.one2one.bean.Wife;
    import com.jpa.one2one.util.JPAUtil;

    public class HusbandDAO {
        
        @Test
        
    public void insert(){
            EntityManager entityManager
    =JPAUtil.getInstance();
            EntityTransaction transaction
    =entityManager.getTransaction();
            
    try {
                transaction.begin();
                Husband husband
    =new Husband();
                husband.setName(
    "張三");
                entityManager.persist(husband);
                Wife wife
    =new Wife();
                
    //wife.setHusband(husband);
                wife.setName("如花");
                wife.setId(husband.getId());
                entityManager.persist(wife);
                transaction.commit();
            } 
    catch (Exception e) {
                e.printStackTrace();
                transaction.rollback();
            }
        }
    }
    JPAUtil
    package com.jpa.one2one.util;

    import javax.persistence.EntityManager;
    import javax.persistence.EntityManagerFactory;
    import javax.persistence.Persistence;

    public class JPAUtil {
        
        
    private static EntityManager entityManager;
        
    public static EntityManager getInstance(){
            
    if(entityManager!=null){
                
    return entityManager;
            }
    else{
                
    return makeInstance();
            }
        }
        
    private static synchronized EntityManager makeInstance() {
            
    if(entityManager==null){
                EntityManagerFactory entityManagerFactory
    =Persistence.createEntityManagerFactory("JPAPU");
                
    return entityManagerFactory.createEntityManager();
            }
            
    return null;
        }
    }
    persistence.xml
    <?xml version="1.0" encoding="UTF-8"?>
    <persistence xmlns="http://java.sun.com/xml/ns/persistence"
        xmlns:xsi
    ="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation
    ="http://java.sun.com/xml/ns/persistence
        http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd"
     version="1.0">
        
        
    <persistence-unit name="JPAPU" transaction-type="RESOURCE_LOCAL">
            
    <provider>org.hibernate.ejb.HibernatePersistence</provider>
            
    <class>com.jpa.one2one.bean.Wife</class>
            
    <class>com.jpa.one2one.bean.Husband</class>
              
    <properties>
                
    <property name = "hibernate.connection.driver_class" value = "com.mysql.jdbc.Driver"/>
                
    <property name = "hibernate.connection.url" value = "jdbc:mysql://localhost:3306/JPA"/>
                
    <property name = "hibernate.connection.username" value = "root"/>
                
    <property name = "hibernate.connection.password" value = "root"/>
                
    <property name="hibernate.show_sql" value="true"/>
                
    <property name="hibernate.format_sql" value="true"/>
              
    </properties>
        
    </persistence-unit>
      
    </persistence>

    示例程序
    posted on 2010-10-14 09:23 雪山飛鵠 閱讀(3680) 評論(0)  編輯  收藏 所屬分類: JPA
    主站蜘蛛池模板: 色窝窝亚洲AV网在线观看| 成人免费视频一区二区三区| 国产精品久久久久久亚洲小说| 亚洲AV永久无码精品| 亚洲 国产 图片| 西西大胆无码视频免费| 在线看片免费人成视频播| 西西人体大胆免费视频| 亚洲欧洲日本在线观看| 久久精品国产亚洲av影院| 亚洲一级黄色视频| 午夜免费福利网站| 97性无码区免费| 久久久久久国产精品免费无码| 国产伦精品一区二区免费| 黄人成a动漫片免费网站| 亚洲国产无线乱码在线观看| 亚洲国产高清视频在线观看| 亚洲AV福利天堂一区二区三| 国产成人A亚洲精V品无码| 亚洲精品无码你懂的网站| 国产免费观看a大片的网站| 成年人在线免费看视频| 成年男女免费视频网站| 国产乱码免费卡1卡二卡3卡| 99久久99久久精品免费看蜜桃| 久久久久免费看成人影片| 色www永久免费视频| 青青视频观看免费99| 免费能直接在线观看黄的视频| 99视频精品全部免费观看| 久操免费在线观看| 久久免费公开视频| 无码日韩精品一区二区免费暖暖 | 成人a毛片视频免费看| 久久亚洲欧美国产精品| 久久亚洲中文无码咪咪爱| 美女被免费网站视频在线| 免费一区二区三区在线视频| 国产成人va亚洲电影| 一级a性色生活片久久无少妇一级婬片免费放 |