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

相关推荐
m0_748554815 小时前
golang如何实现用户订阅偏好管理_golang用户订阅偏好管理实现总结
jvm·数据库·python
lee_curry5 小时前
第四章 jvm中的垃圾回收器
java·jvm·垃圾收集器
早日退休!!!6 小时前
《数据结构选型指南》笔记
数据结构·数据库·oracle
xcLeigh6 小时前
KES数据库性能优化实战
数据库·sql·性能优化·sql优化·数据性能
阿正呀6 小时前
Redis怎样实现本地缓存的高效失效通知
jvm·数据库·python
yoyo_zzm6 小时前
Laravel9.x新特性全解析
数据库·mysql·nginx
九转成圣6 小时前
Java 性能优化实战:如何将海量扁平数据高效转化为类目字典树?
java·开发语言·json
2501_901200536 小时前
mysql如何设置InnoDB引擎参数_优化innodb_buffer_pool
jvm·数据库·python
直奔標竿6 小时前
Java开发者AI转型第二十七课!Spring AI 个人知识库实战(六)——全栈闭环收官,解锁前端流式渲染终极技巧
java·开发语言·前端·人工智能·后端·spring
金銀銅鐵7 小时前
[java] 编译之后的记录类(Record Classes)长什么样子(上)
java·jvm·后端