Hibernate笔记整理详细版.docVIP

  • 1
  • 0
  • 约2.23万字
  • 约 18页
  • 2018-11-16 发布于江苏
  • 举报
Hibernate笔记整理详细版

Tarena Day01Hibernate笔记整理完整版 Day01 基本概念: (1)有什么用 是开源的用于封装数据访问层的组件,我们称为数据访问层框架(或持久层框架);是对JDBC+SQL的轻量级封装。 (2)出现背景,需要解决的问题: a)SQL语句过于繁杂,和数据库的耦合度高 b)不同数据库之间SQL的不同,导致移植困难:例如分页查询的区别(Oracle与MySql之间区别) c)二维关系表和对象之间数据结构的不匹配:我们从数据库中取出的数据时结构集(一张表),而我们开发时需要将查询到得结果集封装为对象,然而数据库中二维表的数据结构和内存中java对象的数据结构是不匹配的(表中的数据需要经过处理才能变为Java对象)。 (3)工作原理-----ORM思想 对象-关系映射(Object-Relation Mapping):Hibernate用于应用程序中的对象(Object)与表中的数据关系(Relationship)之间的映射(Mapping),即把对象保存到关系表中或者把关系表中数据取出映射为对象。 可以这样理解:Hibernate可以直接从数据库中取出Java对象,或者把Java对象直接保存于数据库中,中间sql语句等繁琐的步骤被Hibernate封装。 Hibernate的基本使用 核心步骤: 导入Jar包:Hibrenate开发包,数据库驱动包 Hibernate配置文件(只有1个):hibernate.cfg.xml用于数据库连接信息及Hibernate的一些配置信息(指定数据库方言类型)----主要用于定义数据库连接参数,指定数据库方言类型。 -------------hibernate.cfg.xml ?xml version=1.0 encoding=utf-8? !DOCTYPE hibernate-configuration PUBLIC -//Hibernate/Hibernate Configuration DTD 3.0//EN /hibernate-configuration-3.0.dtd hibernate-configuration session-factory property name=coonection.driver_classcom.mysql.jdbc.Driver/property property name=connection.url jdbc:mysql://localhost:3306/jd1112db?useUnicode=trueamp;characterEncoding=utf8 /property property name=connection.usernameroot/property property name=connection.passwordtaodongjie199012/property !-- 数据库连接池 -- property name=connection.pool_size1/property !-- 必配参数 通过dialect(方言) 来弥补数据库之间的差异 -- property name=dialect org.hibernate.dialect.MySQLDialect /property !-- 调试工具 hibernate执行sql语句时,在控制台显示 -- property name=show_sqltrue/property !-- hibernate运行时加载的Hibernate映射配置文件 -- mapping resource=tarena/xuesheng/entity/注意格式User.hbm.xml/ 注意格式 /session-factory /hibernate-configuration Hibernate映射文件(可以有n个):用于指明类和表之间的对应关系,Hibernate根据该文件生成SQL语句;映射名称为*.hbm.xml 推荐:类名Emp,映射文件Emp.hbm.xml ----------*.hbm.xml ?xml version=1.0? !DOCTYPE hibernate-mapping PUBLIC -//Hibernate/Hibernate Mapping DTD 3.0//EN /hibernate-mapping-3.0.dtd hibernate-mapping

文档评论(0)

1亿VIP精品文档

相关文档