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 延迟加载 代理对象 抛异常

  • 相关阅读:
    POJ 2723 Get Luffy Out(2-SAT)
    ZOJ 3613 Wormhole Transport
    HDU 4085 Peach Blossom Spring
    NBUT 1221 Intermediary
    NBUT 1223 Friends number
    NBUT 1220 SPY
    NBUT 1218 You are my brother
    PAT 1131. Subway Map (30)
    ZSTU OJ 4273 玩具
    ZSTU OJ 4272 最佳淘汰算法
  • 原文地址:https://www.cnblogs.com/mxf97826/p/8708106.html
Copyright © 2011-2022 走看看