超详细!带你手写一个简单的ORM框架领悟mybatis,hibernate,jpa对象关系映射的秘密

这篇博客介绍了ORM的概念,它解决了对象模型和关系模型之间的阻抗不匹配问题。通过Java面向对象的方式,ORM框架如Hibernate允许开发者操作对象属性来间接操作数据库。博客详细讲解了Hibernate的配置文件,以及SpringBoot中如何使用Mybatis、Spring-Data-JPA和Hibernate。还探讨了ORM框架的核心——反射和自定义注解的使用。最后,作者提供了一个简单的ORM实现示例,鼓励读者动手实践。
摘要由CSDN通过智能技术生成

1、ORM介绍
    对象关系映射
    解决了一个问题: 对象模型和关系模型之间阻抗。
    对象模型                     关系模型
    对象名称 Student             表           t_student
    对象属性类型 Integer         列的值的类型 int
    对象属性名称 stuId           列名         student_id
   1、ORM思想就诞生=>Java是一门面向对象的语言。
   2、操作对象中属性的值间接操作数据库中表。
   实现方式:hibernate框架
   Student.hbm.xml

<class name="类的全路径" table="映射的表的名称">
	<id name="主键映射的属性名称">
		<cloumn name="表中的主键名称" />
	</id>
	<property name="studentName" cloumn="student_name" />
   </class>
   
   mybatis框架:
   <resutMap name="stuMap" type="com.demo.domain.Student">
		<id property="studentId" cloumn="student_id" />
		<result property="studentName"  column="student_name"/>
   </resultMap>
   
   // 通过注解方式完成ORM映射配置
   JPA,hibernate,spring-data-jpa
  
   @Table(name="t_student")
   public class Student {
		
		@Id // 映射主键
		@Column(name="student_id")
		private Integer studentId;
		
		@Column(name="student_name")
		private String studentName;
   }


   
   springBoot(mybatis,spring-data-jpa,hibernate)=>微框架
   

2、ORM框架的核心反射
   反射:API
   自定义注解:核心语法和使用方式

3、模拟ORM的框架的部分实现

首先需要连接到JDBC,导入我们的驱动包以及手写一个工具类

手动实现增删改执行返回影响行数的方法

package com.orm.demo.db;

/**
 * @author longhai
 * @date 2018/9/19 - 14:06
 */
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;

/**
 * 操作数据的通过方法
 */
public class DBUtils {
    private static final String DRIVER_CLASS = "com.mysql.jdbc.Driv
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值