• hibernate略有小成


    hibernate不是直接操作数据库表而是操作数据库表中对应的实体类。

    对象关系映射概述

            1。持久化对象不是通过外健建立关联关系,而是通过属性

            2。持久化类间关联关系的种类:一对一,多对一(最常见),多对多。

            3。持久化类的关联方向:单向关联和双向关联。

         1。一对多关联单向关联关系

                      1。 日常中常见的一对多:留言和回复、类别和商品、班级和学生等。

                      2、数据库表间的一对多关联关系:通过外健建立两个表的联系。

                      3、hibernate持久化类的一对多关联关系

                           1、持久化类添加关联类的相关属性及get/set方法

                           2、映射文件中建立该属性和数据库表字段的映射关系。

               示例一:为班级和学生类添加一对多关系

                      班级类的代码

    private int gid  //班级编号
    private String gname  //班级名称
    private Set  students=new HashSet();//学生set集合
    .......get/set方法

                     映射文件

    <Set name="Students">
                <key column=gid"></key>       --students表的外健
                <one-to-many class="包名.类名"/>
            </Set>

                  测试类可以通过grade类对象.getStudents()得到全部学生信息。也可以通过grade类对象.getStudents().add(stu);添加学生表的信息

           示例二:为学生类和班级类添加多对一单向关联关系

                        学生类代码

    private String sname //学生姓名
    private String   sex //性别
    private int age //年龄
    private Grade grade  //班级属性
    ......get/set方法

                    映射文件

    <many-to-one name="grade" class="包名.类名">  --属性名
                 <column name="gid"></column>  --学生表中的外健关联字段
            </many-to-one>

                可以通过学生对象获得班级信息

        2。一对多双向关联关系:同时建立多对一和一对多单向关联关系就可以形成

        3。配置级联属性:cascade属性   作用是实现级联操作关联对象

               常用属性值和功能描述

    属性值 功能
    none 不对关联对象进行任何级联操作,为cascade默认值
    save-update 保存和更新该对象时,级联更新和保存关联对象
    delete 删除该对象时级联删除关联对象
    all 所有操作都级联

         4。配置反转属性inverse:作用:将维护关联关系的任务反转,由对方来完成

              常用属性值和功能描述:false:为不放弃关联关系维护   true:为放弃关联关系维护

       注意inverse属性只要用于集合属性中,即“一”方反转关联关系维护给“多”方。

  • 相关阅读:
    ES自身支持容灾异地容灾么?生产环境如何实施?
    Redis集群详解
    原生js实现jquery的ajax
    用原生js实现jquery的一些方法
    原生javascript的一些常用方法
    原生javascript
    理解和熟练运用call和apply
    做项目过程中的css reset
    深入理解javascript编程中的同步和异步
    history.back(-1)和history.go(-1)的区别
  • 原文地址:https://www.cnblogs.com/hjiongjiong/p/4510126.html
Copyright © 2020-2023  润新知