Hibernate 复习笔记
Hibernate 配置文件
配置文件可以有两种形式:hibernate.cfg.xml(XML) 和 hibernate.properties (PROPERTIES)
hibernate.cfg.xml
connection.driver_calss 指定数据库的JDBC驱动
connection.url JDBC连接数据库的URL
connection.username 数据库用户名
connection.password 数据库密码
dialect 数据库方言
show_sql 显示所执行的SQL语句 默认:false(不显示)
hibernate.properties
hibernate.connection.driver_calss = com.mysql.jdbc.Driver 指定数据库的JDBC驱动
hibernate.connection.url = jdbc:mysql://localhost:3306/数据库名 JDBC连接数据库的URL
hibernate.connection.username = root 数据库用户名
hibernate.connection.password = root 数据库密码
hibernate.dialect = org.hibernate.dialect.MySQLDialect 数据库方言
hibernate.show_sql = true 显示所执行的SQL语句 默认:false(不显示)
?完善oracle SQLServer 的hibernate.properties
**************************************************************
主键的自动增长方式:
1.increment
!增长方式于Hibernate管理的,从数据库里用MAX()取出最大值。再在Hibernate 里加1。再写回DB。
所以这知方式不适用于多用户并发访问。
!能用Increment 的只能是整型的字段
2.sequence
!在数据库里建一个序列。多个库可以从这个序列里取值。做为它们的自己增值。
!Oracle 里常这样用。
3.assigned
!增长方式于用户管理的,用户自己设定主键是什么。所以DB中对应的列不能是自增的。
4.identity
!增长方式于DB管理的,所以适用于多用户并发访问。
!数据类型为整型的字段
5.native
!必须由Hibernate或是DB管理增长方式。不能自己设定。
!native会自动选择用哪个。
6.uuid
!产生一个32 位的 16 进制的字符串。无序。不重复。
7.guid
!产生一个32 位的 16 进制的字符串。无序。不重复。
8.foreign
!使用别外一个相在联的对象的标识符,一般和<one-to-one>主键关联一起用
**************************************************************
Hibernate 核心API
Configuration
SessionFactory
Session
Transaction
?完善各自的相关内容
**************************************************************
Hibernate 中持久化对象的三种状态(生命周期)
Transient(临时状态)
Persisten(持久化状态)
Detached(流离状态)
?完善三种状态是怎么相互轮换的
**************************************************************
联合主键: 两个列一起作表的主键
1.联合主键(方式一): composite column
主键类
这种方式会产生一个主键类,和一个表类。主键类是表类的一个属性。
<composite-id name="主键名" class="包名.主键类名">
<key-property name="#" type="#">
<column name ="表列名" length ="长度"/>
</key-property>
<key-property name="#" type="#">
<column name ="表列名" length ="长度"/>
</key-property>
....
</composite-id>
2.联合主键(方式二): composite
这种方式就是两个列同时做主键
<composite-id>
<key-property name="#" type="#">
..
</key-property>
<key-property name="#" type="#">
..
</key-property>
....
</composite-id>
**************************************************************
组合映射:component
<component name = "#" class = "#">
<property name = "#" column = "#" type = "#";/>
<property name = "#" column = "#" type = "#";/>
....
</component>
<component name = "#" class = "#">
<property name = "#" column = "#" type = "#";/>
<property name = "#" column = "#" type = "#";/>
....
</component>
**************************************************************
Blob/Clob 数据类型的映射
?末完成
**************************************************************
来源:CSDN
作者:ghosthuo
链接:https://blog.csdn.net/Ghosthuo/article/details/2939536