51Testing软件测试论坛
标题:
手把手教你写一个java的orm(一)
[打印本页]
作者:
草帽路飞UU
时间:
2019-2-1 16:17
标题:
手把手教你写一个java的orm(一)
写之前的说明
其实吧。
这个东西已经写好了,地址在:
https://github.com/hjx601496320/JdbcPlus
这
系列
文章算是我写的过程的总结吧。(恩系列,说明我可能会写好久,╮(╯▽╰)╭)
现在有很多的现成的orm框架,为什么还要自己写一个?
框架这种东西个人认为想要了解其中的原理,还是要自己尝试实现一个来的比较快。我是那种不爱看源码的程序员,除非是有些地方实在没有思路或者网上也找不到相关的文章,否则是不会去看源码的。懒~~~
写这个的目的是什么?
现在流行的orm比如hibernate,mybatis等等,需要配置太多了,实在记不住。所以就自己写一个自己用起来方便一点的,不需要什么配置的,然后自己用就好咯~~~。自己写一个框架感觉最主要的还是解决自己的问题,先让自己用起来方便嘛~
我要实现什么功能?
单表的增删该查肯定是需要的。现阶段不需要支持连表查询,因为我平常也不写这种sql。主要的功能还是可以方便的单表增删改查。其他复杂的功能直接使用现有的流行框架就好了,这个东西写的时候也没有指望太多很复杂的功能。
为什么要写成orm类型的呢?
用起来方便啊~ 不用写sql啊,我最烦写sql了。
能不能在生产上用呢?
看你自己咯,我是以demo形式来写的,不好说里面有没有什么大坑,恩~
想要做成什么样的?
不需要太多的配置,可能的情况下只需要配置连接池就好了。
将class映射到数据库表,增删改查不需要写sql。
可以使用class属性名称作为查询条件。
不需要连表查询。
class映射基于注解的形式,不要写其他的配置。
只支持mysql就好了。
需要准备的
需要反射相关的知识。
java中的自定义注解。
sql的基础知识。
spring jdbc相关知识,就是jdbcTemplate。因为我不太想在写一边jdbc的东西。还是懒~
大致的思路
在class中先使用注解的形式,将class和表做一个映射关系(属性名称和字段名称的映射)。
在对数据库操作的时候通过反射获取class中的相关信息,然后根据操作类型,生成sql,最后执行sql就好了。
下一篇继续
作者:
Miss_love
时间:
2020-12-25 17:57
感谢分享
欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/)
Powered by Discuz! X3.2