zoukankan      html  css  js  c++  java
  • hibernate第二天

    Set
    HashSet 无序,不重复

    List
    有序,可重复

    Map
    键值对
    HashMap 无序,不重复(以key为准)
    -----------------------------------------------

    数组

    Bag
    无序,可重复
    List


    public static void main(String[] args) {
    // Set<String> set = new HashSet<String>();
    // Set<String> set = new TreeSet<String>();
    Set<String> set = new LinkedHashSet<String>();

    set.add("dd"); // 4
    set.add("cc"); // 3
    set.add("aa"); // 1
    set.add("bb"); // 2

    System.out.println(set);
    }

    使用集合属性时,一定要使用接口,而不能声明为具体的实现类。
    因为经过Session操作后,集合就变成了Hibernate自己的集合实现类。


    sort="unsorted|natural|comparatorClass"
    默认为:unsorted


    值类型的集合
    集合元素是普通类型
    实体类型的集合
    集合元素是另一个实体


    维护关联关系:
    对于一对多:
    就是设置外键列的值。
    对于多对多:
    就是插入或删除中间表中的记录。

    双向关联
    单向关联:
    单向多对一
    单向一对多
    单向多对多


    ============================

    对象的状态:

    临时状态:
    与数据库没有对应,跟Session没有关联。
    一般是新new出的对象。

    持久化状态:
    对象在Session的管理之中,最终会有对应的数据库记录。
    特点:
    1,有OID
    2,对对象的修改会同步到数据库。

    游离状态:
    数据库中有对应记录,但对象不在Session管理之中。
    修改此状态对象时数据库不会有变化。

    删除状态:
    执行了delete()后的对象。


    ===============================
    一、操作实体对象的
    save()
    update()
    saveOrUpdate()
    delete()

    二、操作缓存的
    clear()
    evict()
    flush()

    三、查询实体对象的
    get()
    load()
    createQuery()
    createCriteria()

    加载方式 返回值 如果数据不存在
    ---------------------------------------------------------
    get 立即加载 真实对象或null 返回null
    load 延迟加载 代理对象 抛异常

  • 相关阅读:
    自考过后的总结——如何快乐学习?
    自考总结——数据库原理第三章
    机房收费系统——用户权限和功能分析
    SQL视频总结
    学生信息管理系统总结——数据库的访问方式
    学习信息管理系统总结——数据库的连接和访问(一)
    学生信息管理系统总结——student数据库中表关系分析
    Kafka-文件管理
    Kafka-分区分配规则
    Kafka-处理请求(生产请求、获取请求)
  • 原文地址:https://www.cnblogs.com/mxf97826/p/8708106.html
Copyright © 2011-2022 走看看