Hibernate概述、对象标识符映射、关系映射

Hibernate概述

ORM

  • 全称:
    • Object Relational Mapping (对象 关系 映射)
  • 概念说明:
    • 对象是指面向对象思想中的对象,在java编程语言中就是指java对象
    • 关系是指数据关系模型,即关系数据库中的数据库结构
    • 映射是指实现实体对象和数据关系模型之间的相互转换
  • ORM技术:
    • ORM 技术在实体类对象和数据库表之间提供了一条桥梁,不需要和SQL语句打交道就可以通过操作实体对象来间接操作数据库。
  • 面向对象概念和面向关系概念的对应关系
    面向对象概念 面向关系概念
    属性 字段
    对象 记录

Hibernate

  • Hibernate属于什么?

    • 在分层体系结构中Hibernate位于持久层,是完成对象持久化的持久层框架
    • Hibernate是连接Java应用程序和关系型数据库的框架,是一种自动ORM框架
    • JDBC的轻量级封装框架。
  • Hibernate做了什么?

    • 能够建立对象模型和关系数据模型之间的映射
    • 自动完成对象的持久化
    • 封装了JDBC的API
  • Hibernate给我们带来了什么?(优点)?

    • Hibernate实现了ORM,使Java程序员可以方便的运用面向对象的编程思想来操纵关系型数据库;
    • Hibernate是对JDBC的封装,增强了代码的重用性,简化了代码,提高了编程效率;
    • Hibernate是对JDBC的轻量级封装,必要时Java程序员可以绕过Hibernate直接访问JDBC API;
    • Hibernate不仅可以应用在独立的Java程序中,还可以应用在Java Web项目中,可以和多种Web服务器集成,并支持多种数据库平台。
  • 编写一个简单Hibernate程序的流程

  1. 安装Eclipse、mysql;
  2. 下载Hibernate,并解压缩(去下载Hibernate);
  3. 使用Eclipse创建新的项目;
  4. 引入Mysql数据库驱动包;
  5. 导入Hibernate所需的jar包(Hibernate目录下的lib / required);
  6. 编写Hibernate核心配置文件(后面作详细说明);
  7. 创建Java持久化类XXX.java(类似javaBean);
  8. 编写持久化类的映射配置文件XXX.hbm.xml;
  9. 使用Hibernate API 完成对象的持久化(即向数据库同步数据)。
  • Hibernate核心配置文件

◎ 核心配置文件在默认情况下放置在src目录下

◎ Hibernate的核心配置文件有两种形式:

  1. hibernate.properties (键=值方式)
  2. hibernate.cfg.xml

◎ 这里只对较复杂的hibernate.cfg.xml进行简单了解

  • hibernate.cfg.xml
   xml声明 标签:
<?xml version="1.0" encoding="UTF-8"?>
   xml文档类型定义 标签:
<!DOCTYPE hibernate-configuration PUBLIC
	"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
	"http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">

~ 备注:该标签可以在 hibernate-configuration-3.0.dtd文件中找到,该文件可在以下两个目录中找到:
1. hibernate解压包:hibernate-release-5.2.17.Final\project\hibernate-core\src\main\resources\org\hibernate\hibernate-configuration-3.0.dtd
2. hibernate的一个jar包:hibernate-core-5.2.10.Final.jar/org/hibernate/hibernate-configuration-3.0.dtd

   <> 根元素 标签
<hibernate-configuration></hibernate-configuration>
   <> 根元素下<session-factory>的常用配置
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-configuration PUBLIC
	"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
	"http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
	<session-factory>
		<!-- 必要配置: -->
		<property name="hibernate.connection.driver_class">
			com.mysql.jdbc.Driver</property>
		<property name="hibernate.connection.url">
			jdbc:mysql://localhost:3306/MyDB</property>
		<property name="hibernate.connection.username">root</property>
		<property name="hibernate.connection.password">123456</property>
		<!-- 可选配置: -->
		<property name="hibernate.dialect">
			org.hibernate.dialect.MySQLDialect</property>
		<property name="hibernate.show_sql">true</property>
		<property name="hibernate.format_sql">true</property>
		<!-- 映射文件的配置: -->
		<mapping resource="entity/Student.hbm.xml"/>
	</session-factory>
</hibernate-configuration>
  • 创建持久化类

    • 持久化对象的规范
    1. 类是共有的(public)
    2. 属性是私有的(private)
    3. 提供getter与setter(g
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值