<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

    SQL
    create table Department
    (
       id                   
    int not null auto_increment,
       name                 
    varchar(20),
       
    primary key (id)
    );

    create table Employee
    (
       id                   
    int not null auto_increment,
       name                 
    varchar(20),
       deptid               
    int,
       
    primary key (id)
    );

    alter table Employee add constraint FK_Reference_1 foreign key (deptid)
          
    references Department (id) on delete restrict on update restrict;
    Department.java
    package com.many2one.bean;

    import java.io.Serializable;
    import java.util.Set;

    import javax.persistence.Column;
    import javax.persistence.Entity;
    import javax.persistence.GeneratedValue;
    import javax.persistence.GenerationType;
    import javax.persistence.Id;
    import javax.persistence.OneToMany;
    import javax.persistence.Table;

    @SuppressWarnings(
    "serial")
    @Entity
    @Table(name
    ="department",catalog="jpa_many2one")
    public class Department  implements Serializable{
        
        
    private int id;
        
    private String name;
        
    private Set<Employee> sets;
        @Id
        @GeneratedValue(strategy
    =GenerationType.AUTO)
        @Column(name
    ="id")
        
    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;
        }
        @OneToMany(mappedBy
    ="department")
        
    public Set<Employee> getSets() {
            
    return sets;
        }
        
    public void setSets(Set<Employee> sets) {
            
    this.sets = sets;
        }
        
        
    }
    Employee.java
    package com.many2one.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.JoinColumn;
    import javax.persistence.ManyToOne;
    import javax.persistence.Table;

    @Entity
    @Table(name
    ="employee",catalog="jpa_many2one")
    public class Employee {
        
        
    private int id;
        
    private String name;
        
    private Department department;
        @Id
        @GeneratedValue(strategy
    =GenerationType.AUTO)
        @Column(name
    ="id")
        
    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;
        }
        @ManyToOne(cascade
    =CascadeType.ALL)
        @JoinColumn(name
    ="deptid")
        
    public Department getDepartment() {
            
    return department;
        }
        
    public void setDepartment(Department department) {
            
    this.department = department;
        }
        
        
    }
    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="JPA_Many2OnePU" transaction-type="RESOURCE_LOCAL">
            
    <provider>org.hibernate.ejb.HibernatePersistence</provider>
            
    <class>com.many2one.bean.Department</class>
            
    <class>com.many2one.bean.Employee</class>
              
    <properties>
                
    <property name = "hibernate.connection.driver_class" value = "com.mysql.jdbc.Driver"/>
                
    <property name = "hibernate.connection.url" value = "jdbc:mysql://localhost:3306/jpa_many2one"/>
                
    <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>
    JPAUtil.java
    package com.many2one.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("JPA_Many2OnePU");
                
    return entityManagerFactory.createEntityManager();
            }
            
    return null;
        }
    }

    @Test
        
    public void select(){
            EntityManager entityManager
    =JPAUtil.getInstance();
            Employee employee
    =entityManager.find(Employee.class1);
            System.out.println(
    "雇員是:"+employee.getName());
            System.out.println(
    "部門是:"+employee.getDepartment().getName());
        }
        
        @Test
        
    public void insert(){
            EntityManager entityManager
    =JPAUtil.getInstance();
            EntityTransaction entityTransaction
    =entityManager.getTransaction();
            
    try {
                entityTransaction.begin();
                Department department
    =new Department();
                department.setName(
    "軟件研發部");
                Employee employee
    =new Employee();
                employee.setName(
    "張三");
                employee.setDepartment(department);
                entityManager.persist(employee);
                entityTransaction.commit();
            } 
    catch (Exception e) {
                e.printStackTrace();
                entityTransaction.rollback();
            }
        }
    posted on 2010-10-17 16:36 雪山飛鵠 閱讀(2628) 評論(0)  編輯  收藏 所屬分類: JPA
    主站蜘蛛池模板: 午夜视频在线在免费| 亚洲香蕉成人AV网站在线观看| 朝桐光亚洲专区在线中文字幕| 免费日本黄色网址| 久久久精品免费国产四虎| 亚洲福利秒拍一区二区| 免费国产成人高清在线观看麻豆 | 成人免费看吃奶视频网站| 亚洲a∨无码精品色午夜| 国产AV无码专区亚洲AV漫画| 欧洲一级毛片免费| 午夜免费国产体验区免费的| 亚洲精品中文字幕麻豆 | 亚洲日本va一区二区三区| 久久99亚洲综合精品首页| 国内精品免费麻豆网站91麻豆| 色吊丝性永久免费看码| 亚洲国产成人九九综合| 国产亚洲视频在线播放| 免费A级毛片无码免费视| 国产日韩AV免费无码一区二区| 亚洲精品中文字幕无码A片老| 国产精品亚洲аv无码播放| 岛国大片免费在线观看| 女人体1963午夜免费视频| 午夜在线亚洲男人午在线| 亚洲另类自拍丝袜第1页| 亚洲午夜福利在线观看| 日本牲交大片免费观看| 曰批视频免费40分钟试看天天| www在线观看播放免费视频日本| 国产成人亚洲综合一区| 久久久亚洲AV波多野结衣| 国产亚洲精品国看不卡| 免费的一级黄色片| 无码国产精品一区二区免费| 最好免费观看高清在线| 日韩少妇内射免费播放| 亚洲精品国产第一综合99久久| 亚洲国产理论片在线播放| 亚洲AV无码乱码在线观看富二代|