• hibernate学习(设计一对一 关系 映射)


    //主表
    package org.crazy.app.domain;
    import javax.persistence.*;
    @Entity
    @Table(name="person_inf")
    public class Person {
        @Id
        @Column(name="person_id")
        @GeneratedValue(strategy=GenerationType.IDENTITY)
        private Integer id;
        private String name;
        private int age;
        @OneToOne(targetEntity=Address.class,mappedBy="person")
        private Address address;
        public String getName() {
            return name;
        }
        public void setName(String name) {
            this.name = name;
        }
        public int getAge() {
            return age;
        }
        public void setAge(int age) {
            this.age = age;
        }
        public Address getAddress() {
            return address;
        }
        public void setAddress(Address address) {
            this.address = address;
        }
    }
    
    //-----------------------------------
    package org.crazy.app.domain;
    
    import javax.persistence.*;
    
    @Entity
    @Table(name="address_inf")
    public class Address {
        @Id
        @Column(name="address_id")
        @GeneratedValue(strategy=GenerationType.IDENTITY)
        private Integer addressId;
        private String addressDetail;
        @OneToOne(targetEntity=Person.class)
        @JoinColumn(name="person_id", referencedColumnName="person_id",unique=true)
        private Person person;
        public Integer getAddressId() {
            return addressId;
        }
        public void setAddressId(Integer addressId) {
            this.addressId = addressId;
        }
        
        
        public Address(String addressDetail) {
            this.addressDetail = addressDetail;
        }
        public String getAddressDetail() {
            return addressDetail;
        }
        public void setAddressDetail(String addressDetail) {
            this.addressDetail = addressDetail;
        }
        public Person getPerson() {
            return person;
        }
        public void setPerson(Person person) {
            this.person = person;
        }
        
        
    }
        public static void main(String[] args) {
            testCascase();
        }
        public static void testCascase(){
            Session session=HibernateUtil.currentSession();
            Transaction tx=session.beginTransaction();
            Person p=new Person();
            p.setName("潘庆强");
            Address a=new Address("宜山路333号");
            p.setAddress(a);a.setPerson(p);
            session.save(p);
            session.save(a);
            tx.commit();
            HibernateUtil.closeSession();
        }

  • 相关阅读:
    Docker(五):Dockerfile
    Docker(四):Docker常用命令
    CentOS搭建NodeJs服务器—Mongodb安装
    CentOS7 yum 安装git
    Linux kswapd0 进程CPU占用过高
    数据库-最开始的数据库建立
    小程序-自定义组件数据传递
    jQuery-很上头的语言基础整理
    小程序-自定义组件理解
    vue中图片预览(v-viewer库使用)
  • 原文地址:https://www.cnblogs.com/panqingqiang/p/5079814.html
Copyright © 2020-2023  润新知