zoukankan      html  css  js  c++  java
  • Hibernate API

    Configuration:配置管理类对象

    config.configure():加载主配置文件的方法(hibernate.cfg.xml),默认加载src/hibernate.cfg.xml
    config.configure("cn/config/hibernate.cfg.xml"):加载指定路径下指定名称的主配置文件
    config.buildSessionFactory():创建session的工厂对象

    SessionFactory:session的工厂(或者说代表了这个hibernate.cfg.xml配置文件)

    sf.openSession():创建一个session对象
    sf.getCurrentSession():创建或取出session对象

    Session:session对象维护了一个连接(Connection),代表了与数据库连接的会话。Hibernate最重要的对象;只要使用hibernate与数据库连接操作,都要用到这个对象。

    session.beginTransaction():开启一个事务;Hibernate要求所有对数据库的操作都要有事务的环境,否则报错!

    更新

    session.save(obj):保存一个对象
    session.update(obj):更新一个对象
    session.saveOrUpdate(obj):没有设置主键执行保存,有设置主键更新;如果设置主键不存在报错!

    主键查询

    session.get(Object.class, 1);主键查询
    session.load(Object.class, 1):主键查询(支持懒加载)

    HQL查询

    HQL查询与SQL查询区别:SQL查询的是表以及字段;HQL:hibernate query language即hibernate提供的面向对象的查询语言,查询的是对象以及对象的属性。区分大小写。

    Criteria查询

    也叫QBC查询,query by criteria 完全面向对象的查询

    本地SQL查询

    复杂的查询,就要使用原生态的SQL查询,也可以,就是本地SQL查询
    缺点:不能跨数据库查询

    Transaction:Hibernate事务对象

    共性问题

    ClassNotFoundException

    缺少jar文件

    如果程序已执行,也执行了SQL语句,但是数据库没有结果

    事务是否没开启

  • 相关阅读:
    服务器磁盘脱机无法挂载
    go 字符串操作相关
    golang 系列:atomic 原子操作
    UUID简介及 Golang实现
    go 图片base64转二进制
    golang go 中字符串和各种int类型之间的相互转换方式
    Go 获取当前时间 时间格式的转换 秒、毫秒、纳秒时间戳输出
    Go语言中调用C语言类型转换篇
    Supervisor 部署go gin服务 或在Linux下面独立部署
    Go语言对字符串进行SHA1 哈希运算的方法
  • 原文地址:https://www.cnblogs.com/FlySheep/p/5451262.html
Copyright © 2011-2022 走看看