Spring 6.0基于JDB手写定制自己的ROM框架

ORM = 用面向对象的方式操作关系型数据库

  • 开发者操作的是 对象(Object)

  • ORM 框架负责把对象 自动映射 为:

    • SQL

    • 表(Table)

    • 行(Row)

    • 列(Column)

目标:

  • 减少手写 SQL

  • 降低业务代码与数据库的耦合

  • 提升开发效率与可维护性

ORM 框架 自动化程度 核心特点 适合场景
Hibernate / JPA 全自动 强对象模型,关系通过注解/配置描述,几乎不写 SQL 领域模型清晰,复杂对象关系
MyBatis (iBatis) 半自动 SQL 手写,结果映射成对象,更可控 SQL 复杂,对性能和查询精度要求高
Spring JDBC Template 弱 ORM 只封装 JDBC,RowMapper 手动映射 简单场景,对 ORM 抽象不敏感

互联网 高并发 高性能 高可用

为什么要自己手写?为什么要重复造轮子

各有各的需求。学习还是为了解思想

单表操作自动映射 现在也是直接有了

没有orm怎么操作数据库

jdbc

1.最经典代表

rs和行索引写过resultset

版本2

反射技术

通过反射拿实体类的字段名字,把字段名字作为列名建建立关系

反射注解名字

sql语句就是反射拿取注解别名

自动生成sql

结果集

软编码

反射赋值

select 的orm

相关推荐
Re_zero18 分钟前
线上日志被清空?这段仅10行的 IO 代码里竟然藏着3个毒瘤
java·后端
洋洋技术笔记24 分钟前
Spring Boot条件注解详解
java·spring boot
程序员清风18 小时前
程序员兼职必看:靠谱软件外包平台挑选指南与避坑清单!
java·后端·面试
李广坤19 小时前
MySQL 大表字段变更实践(改名 + 改类型 + 改长度)
数据库
皮皮林55120 小时前
利用闲置 Mac 从零部署 OpenClaw 教程 !
java
NE_STOP1 天前
springMVC-HTTP消息转换器与文件上传、下载、异常处理
spring
华仔啊1 天前
挖到了 1 个 Java 小特性:var,用完就回不去了
java·后端
SimonKing1 天前
SpringBoot整合秘笈:让Mybatis用上Calcite,实现统一SQL查询
java·后端·程序员
日月云棠2 天前
各版本JDK对比:JDK 25 特性详解
java
用户8307196840822 天前
Spring Boot 项目中日期处理的最佳实践
java·spring boot