hibernate07-Session

以下笔记均摘自OneNote的原始笔记,想要获取格式更好的OneNote原始笔记,以及相应的配套视频请访问http://hqyrbl.cn

Session

Session类的常用方法

    save()

        将对象中的数据保存到表

        JavaBean中代表主键的属性,不需要设置,即便设置了也没有任何效果,如下

update()

    根据主键id更新数据,若没有则会报错

saveOrUpdate()

    在保存对象中的数据时,若发现指定了id,并且该id在表的主键中存在,那么就会更新该行数据,反之,就会插入一行新的数据

get()

从表中获取数据,第一个参数是JavaBean的class,第二个参数是表中的主键

load()

    和get()一样,最终也是从表中获取数据,如下

从表面上看不出什么区别,但实质上的区别在于,load只有在访问对象中的数据的时候,才会去连接数据库,而get只要一调用,就会去连接数据库,所以load

的好处在于,可以避免频繁连接数据库,减少数据库的压力

证明load和get的区别

    get

返回的user就是User对象

load

user对象是如下这个代理类,可以理解为hibernate默认给我们生成了一个User的实现类

delete()

    删除表中的数据

    2种删除方式

        第一:先获取再删除

        第二:根据表中的主键id去删除

你可能感兴趣的:(hibernate07-Session)