专栏首页黑泽君的专栏day29_Hibernate复习_01

day29_Hibernate复习_01

1.Hibernate框架

    功能:Dao层(持久层)框架,封装了JDBC。     思想:整合了ORM思想,以面向对象的思想操作数据库。

2.Hibernate搭建步骤

    1> 导包     2> 建表     3> 创建实体(model)     4> 填写Hibernate.cfg.xml配置文件     5> 填写实体orm映射文件(元数据)     6> 写代码

3.Hibernate 操作流程

    1> 加载配置文件     2> 根据配置创建SessionFactory     3> 根据工厂获得session     4> 开启事务     5> 操作数据库     6> 关闭事务     7> 释放资源

4.api详解(看图)

5.配置文件详解

Hibernate.cfg.xml         方言:每个数据库方言各不相同,MySql应该配置最短那个。         hbm2ddl:Hibernate建表策略             create:每次启动Hibernate都会重新创建表结构。             create-drop:每次启动Hibernate都会重新创建表结构,Hibernate关闭前还会删除表结构。             update:自动更新表结构,会保留原有结构和数据。             validate:只验证/校验 表结构,表结构不匹配时抛出异常。 orm映射文件(User.hbm.xml)         class: 类与表的对应             id:OID与主键的对应             generator:主键生成策略                 increment:先查询表中的最大id. 然后+1,适合测试使用,不适合实际开发使用(存在线程并发问题)                 indentity:依赖数据库的主键自增,例如:mysql、sqlserver。                 sequence:依赖于数据库的序列,例如:Oracle。                 hilo:Hibernate自己实现序列算法(用不到)。                 native:三选一:indentity / sequence / hilo                 uuid:生成32位的随机字符串                 assigned:自然主键时,自己填入ID          property             name:实体属性             column:表列名             length:配置属性长度             type:配置属性类型             not-null:是否非空             unque:是否唯一          type             数据库类型                        Java类型                        Hibernate类型             varchar     =>         java.lang.String|String  =>             string             int             =>         Integer                         =>             int             ......                           ......                                                 ......

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • day29_Hibernate学习笔记_01

      Hibernate:是一个数据持久化层的ORM框架。   Object:对象,java对象,此处特指JavaBean。   Relational:关系,二维...

    黑泽君
  • Linux命令复习和练习_01

    linux命令格式:   command [-options] [parameter1] [parameter2] ...   命令    选项    参数

    黑泽君
  • python_库学习_01

    可能会出现缺少依赖库的情况,依次安装,大概有lxml,pandas,bs4,requests,pandas依次安装后查看tushare官方文档详细接口的使用

    py3study
  • tensorflow学习笔记_01

    jeremyxu
  • day63_SpringMVC学习笔记_01

    (1)使用eclipse,创建一个动态的web工程   其中Dynamic web module version版本选择 2.5,这样兼容性好一些;   Def...

    黑泽君
  • day67_Redis学习笔记_01

    添加spring的jar包 配置spring配置文件applicationContext.xml applicationContext.xml

    黑泽君
  • day61_Mybatis学习笔记_01

      1、执行sql_table.sql脚本,创建数据库表;   2、执行sql_data.sql初始化测试数据。

    黑泽君
  • HTML学习日志_01

    元素: 通过 < x x x> 的形式创建一个元素,表示元素的开始,并通过 </ x x x> 的形式关闭一个元素,表示元素的结束。< x x x> 和 </...

    英雄爱吃土豆片
  • day25_Struts2学习笔记_01

      把重复性的繁琐的代码封装起来。使程序员在编码中把更多的精力放业务需求的分析和理解上面。 特点:封装了很多细节,程序员在使用的时候会非常简单。

    黑泽君

扫码关注云+社区

领取腾讯云代金券