• Hibernate 再接触 组件映射


    将另外一个类嵌入到另外一个类 从而合并生成一张表

    Husband.java

    package com.bjsxt.hibernate;
    
    import javax.persistence.Embedded;
    import javax.persistence.Entity;
    import javax.persistence.GeneratedValue;
    import javax.persistence.Id;
    import javax.persistence.JoinColumn;
    import javax.persistence.JoinColumns;
    import javax.persistence.OneToOne;
    
    @Entity
    public class Husband {
        private int id;
        private String name;
        private Wife wife;
        @Id
        @GeneratedValue
        public int getId() {
            return id;
        }
        
        public String getName() {
            return name;
        }
        @Embedded
        public Wife getWife() {
            return wife;
        }
        public void setId(int id) {
            this.id = id;
        }
        public void setName(String name) {
            this.name = name;
        }
        public void setWife(Wife wife) {
            this.wife = wife;
        }
        
    }

    wifi.java

    package com.bjsxt.hibernate;
    
    
    
    public class Wife {
        
        private String wifeName;
        private int age;
        
        public int getAge() {
            return age;
        }
        public void setAge(int age) {
            this.age = age;
        }
            
        public String getWifeName() {
            return wifeName;
        }
        public void setWifeName(String name) {
            this.wifeName = name;
        }
        
    }

    使用Xml

    <?xml version="1.0"?>
    <!DOCTYPE hibernate-mapping PUBLIC
            "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
            "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
    
    <hibernate-mapping>
        <class name="com.bjsxt.hibernate.Husband" >
            <id name="id">
                <generator class="native"></generator>
            </id>
            
            <property name="name"></property>
            <component name="wife">
                <property name="wifeName"></property>
                <property name="age"></property>
            </component>
        </class>
        
    </hibernate-mapping>

    测试

        @Test
        public void testSchemaExport() {
            new SchemaExport(new AnnotationConfiguration().configure()).create(false, true);
        }
  • 相关阅读:
    使用shape来定义控件的一些显示属性
    Button颜色选择器进阶
    android用于打开各种文件的intent
    虚拟机操作
    二维码生成与读取
    input框只能输入整数
    实现FF背景透明,文字不透明
    打日志
    多选框
    时间戳
  • 原文地址:https://www.cnblogs.com/frankzone/p/9598766.html
Copyright © 2020-2023  润新知