Mybatis(一)

基于Mybatis的学习
之前接触框架很少,这次对Mybatis的学习让我有了认识到自己学习的不足。
很多框架的应用都是为了解耦。
框架让组间开发有了一定的统一规范,更加方便,更加快捷。
并不是用的框架多写出来的代码就更好,要根据实际情况选择合适的框架进行开发。
学习过程中使我对对象和封装有了更清晰、更全面的认识。
MVC框架的使用增进了代码的可维护性,优化了团队合作的结构。
下面是这段时间着重学习的Mybatis :
(1)加载配置并初始化
触发条件:加载配置文件
处理过程:将SQL的配置信息加载成为一个个MappedStatement对象(包括了传入参数映射配置、执行的SQL语句、结果映射配置),存储在内存中。
(2)接收调用请求
触发条件:调用Mybatis提供的API
传入参数:为SQL的ID和传入参数对象
处理过程:将请求传递给下层的请求处理层进行处理。
(3)处理操作请求
触发条件:API接口层传递请求过来
传入参数:为SQL的ID和传入参数对象
处理过程:
(A)根据SQL的ID查找对应的MappedStatement对象。
(B)根据传入参数对象解析MappedStatement对象,得到最终要执行的SQL和执行传入参数。
(C)获取数据库连接,根据得到的最终SQL语句和执行传入参数到数据库执行,并得到执行结果。
(D)根据MappedStatement对象中的结果映射配置对得到的执行结果进行转换处理,并得到最终的处理结果。
(E)释放连接资源。
(4)返回处理结果将最终的处理结果返回。
遇到的问题1:
对于注解的使用一开始并不理解,生搬硬套,出现了一些小的bug。
解决方法1:
花了一些时间专门链接了一下注解的使用结合Mybatis的xml配置文件解决了问题
遇到的问题2:
查询结果一开始总是出现空指针和数据不匹配的问题
解决方法2:
【Mybatis(一)】通过分析发现是封装、解析和Sql语句的拼接出现的问题,重新了解了一些封装的知识成功解决问题

    推荐阅读