• Hibernate映射关系配置


    一:多对一(双向关联)

    Bean:

    public class Car implements Serializable{
    
        private int id ;
        
        private String name ;
        
        private User user ;
            
            ....
    }
    public class User implements Serializable {
        
        private int id ;
        
        private String name ;
        
        private Set<Car> cars ;
            ....
    }

    xml配置:

    Car.hbm.xml:
    <class name = "Car">
            <!-- id是来配置主键 
                 name是类中的哪个属性和主键映射
                 generator:表示主键的生成策略
            -->
            <id name = "id">
                <generator class="native" />
            </id>
            <!-- property是用来把类中的属性和表的字段做一一对应 -->
            <property name="name" />
            
            <!-- many-to-one 唯一的创建新的字段的标签
                 name是Car中一的一方的属性
                 column 表示name对应到表中的外键是什么名字
            -->
            <many-to-one name="user" column="uid" />
            
        </class>
    User.hbm.xml:
    <class name = "User">
            <!-- id是来配置主键 
                 name是类中的哪个属性和主键映射
                 generator:表示主键的生成策略
            -->
            <id name = "id">
                <generator class="native" />
            </id>
            <!-- property是用来把类中的属性和表的字段做一一对应 -->
            <property name="name" />
            <!-- class是集合中的对象 -->
            <set name="cars" cascade="all">
                <!-- key会在多的一方添加一个新的字段 -->
                <key column="uid"></key>
                <one-to-many class="Car"/>
            </set>
        </class>

    annotation配置:

    @Entity
    public class Car implements Serializable{
    
            @Id @GeneratedValue
        public int getId() {
            return id;
        }
    
            @ManyToOne
        @JoinColumn(name="uid")
        public User getUser() {
            return user;
        }
    } 
    @Entity
    public class User implements Serializable {
            @Id @GeneratedValue
        public int getId() {
            return id;
        }
            //mappedBy的作用就是用来指定由谁来维护关系 
        
        @OneToMany(mappedBy="user",cascade=CascadeType.ALL)
        public Set<Car> getCars() {
            return cars;
        }
    }
  • 相关阅读:
    dd——留言板再加验证码功能
    怎样去除织梦版权信息中的Power by DedeCms
    数据结构和算法的选择
    数据结构和算法9——哈希表
    数据结构与算法8——二叉树
    数据结构与算法7——高级排序
    数据结构与算法6——递归
    数据结构和算法5——链表
    数据结构与算法4——栈和队列
    数据结构与算法3——简单排序(冒泡、选择、插入排序)
  • 原文地址:https://www.cnblogs.com/hyl-home/p/7576814.html
Copyright © 2020-2023  润新知