ORM概念
O:Object 对象
R:Relation 关系 (关系型数据库)外键就是关系
M:Mapping 映射
关系型数据库,对应的有对象型数据库,比较少用。现在主流的是关系型数据库。
MYSQL, Oracle...等都是关系型数据库。
ORM解决什么问题?
存储:能把对象的数据直接保存到数据库
获取:能直接从数据库拿到一个对象
要做到上面2点,必须要有映射。
图片.png
Hibernate和ORM的关系是什么?
Hibernate实现了 ORM。
ORM相当于是一种思想。
比较好的hibernate博文:
http://blog.csdn.net/jiuqiyuliang/article/details/39078749
图片.png
1.Hibernate 案例
搭建一个Hibernate环境,开发步骤:
1)下载源码:
版本:hibernate-distribution-3.6.0.Final
2)引入jar文件
hibernate3.jar核心 + required 必须引入的(6个)+ jpa + 数据库驱动包
3)写对象以及对象的映射
Employee.java 对象Employee.hbm.xml 对象的映射
4)src/hibernate.cfg.xml
数据库连接配置
加载所有的映射(*.hbm.xml) // 可以不写.hbm, 为了规范和能够找到hibernate的映射文件,方便些。
Hibernate的schema:
<?xml version="1.0"?><!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd"><!-- <hibernate-mapping>一般不去配置,采用默认即可。 default-cascade="none":默认的级联风格,表与表联动。 default-lazy="true":默认延迟加载 --> <hibernate-mapping> </hibernate-mapping>
图片.png
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd"><hibernate-configuration xmlns="http://www.hibernate.org/xsd/hibernate-configuration"> <session-factory> <!-- 数据库连接配置 --> <property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property> <property name="hibernate.connection.url">jdbc:mysql:///hib_demo</property> <property name="hibernate.connection.username">root</property> <property name="hibernate.connection.password">root</property> <property name="hibernate.dialect">org.hibernate.dialect.MySQL5Dialect</property> <!-- 加载映射 --> <mapping resource="com/ypd/a/entity/Employee.hbm.xml"></mapping> </session-factory></hibernate-configuration>
注意:
在hibernate.cfg.xml或者是persistence.xml文件下面需要配置javax.persistence.validation.mode属性。
3.写对象以及对象的映射
Employee.java 对象
Employee.hbm.xml 对象的映射(映射文件)
4.src/hibernate.cfg.xml 主配置文件
作用:
1)加载数据库连接
2)加载所有的映射(*.hbm.xml)
作者:廖马儿
链接:https://www.jianshu.com/p/3f7271c8d800
共同学习,写下你的评论
评论加载中...
作者其他优质文章