jueyue 发表于 2013-11-19 23:44:31

MInidao的介绍篇

用了UML还是放弃了,果然我还是只是个程序员,下面是使用的word,不易理解的请见谅

下面讲一下我理解的MiniDao的原理
1.扫描用户的导层
2.对接口生成代理
3.等待用户调用,使用代理处理返回结果



http://note.youdao.com/yws/public/resource/033c210f3d2278caa571789cc8913a7e/A9E14088632246EAB1A15C32092EA403
http://note.youdao.com/yws/public/resource/033c210f3d2278caa571789cc8913a7e/B1FD56A5ED5B4F68AAD953A388D068EB

第一步:判断是不是接口方法,如果不是,直接执行,然后返回结果(基本上和MiniDao无关)
第二步: 判断是否是Hiber实体维护方法,如果是执行Hibernate方式实体维护
(主要几个方法就是MiniDaoSupportHiber这个接口里面的几个方法,直接继承然后使用)
第三步:解析你的接口,根据Arguments注解封装Map
第四步:使用freemark解析sql(freemark的语法,可以百度下,复杂sql轻松搞定)
第五步:根据你的返回类型,调用jdbcTemplate不同的方法返回对象






或许你要问为啥不直接用spring jdbc,那是因为spring jdbc 不好分离,而且他需要写实现
其实dao层和数据库的交互实现类的作用基本上不大,我写的ibatis的dao层的实现.基本上就是query一下数据返回,完全没有必要写,再说freemark的模板语言可以极大的扩展sql的功能if的判断都可以扔到sql去了,没有必要在java判断了,而且minidao返回实体更加简单


Ps下: http://zhangdaiscott.github.io/MiniDao/
写下接口,后面的事情交给minidao吧



shawndeng 发表于 2014-2-14 11:19:53

不知道事物控制功能是否做的成熟
页: [1]
查看完整版本: MInidao的介绍篇