美文网首页后端学习流水账
Session的get和load方法、delete、update

Session的get和load方法、delete、update

作者: 东风谷123Liter | 来源:发表于2019-10-22 22:48 被阅读0次

    OID检索:

    get和load都是通过id来查询数据的。
    • get:直接加载。一执行就会执行SQL语句。

    • load:懒加载。返回一个对象的代理。

      • 生成javassist的代理对象。
    image.png

    还有一个问题:数据库的字符编码可eclipse的编码好像不一样,在无论什么类型的数据都显示为???

    删除数据的两种方式:

    1. 先获取要删除的数据对象,然后调用delete()方法。

      • 这种方式必须手动开关事物。在配置文件里面配置事物的自动提交是无效的。

      • 配置文件里面配置的事物自动提交,只对insert有效。

    2. 先创建一个javabean对象,在调用delete方法删除。(推荐,性能更好)

      • 创建对象也只是为了传递一个id值,delete方法底层会转化为delete语句操作数据库。

    update:

    方式一:通过get获取数据,调用set方法,事物提交,自动执行update语句。
      • 直接调用setXXX(),来修改数据库即可。

      • session.update();可以写,可以不写。事物提交会自动修改。

        • 有id会更新,没有id会报错。
      • 缺点,其实是会更新表中的所有字段的,效率低。

    方式二:自己封装bean对象,设置ID,需要调用update方法。
      • 神奇的是这种方式不会执行update语句!!!!(后续)
    • saveorUpdate()方法也很神奇,前面调用了setXXX如果有id就会update,没有就会insert。

    • save():

      • 有id会更新

    相关文章

      网友评论

        本文标题:Session的get和load方法、delete、update

        本文链接:https://www.haomeiwen.com/subject/tzncvctx.html