持久层(数据层,Dao层) MyBatis框架「建议收藏」

持久层(数据层,Dao层) MyBatis框架「建议收藏」所谓的持久层就是把数据可以永久保持的存储到设备中,不像放到内存中那样断电就消失,一般来说,持久层为直接的理解就是对数据库的各种操作,如CRUD(增加,删除,修改,查询),更新等操作持久层,就是把持久

大家好,又见面了,我是你们的朋友全栈君。

所谓的持久层就是把数据可以永久保持的存储到设备中,不像放到内存中那样断电就消失,一般来说,持久层为直接的理解就是对数据库的各种操作,如CRUD(增加,删除,修改,查询),更新等操作

持久层,就是把持久的动作封装成一个独立的层,这是为了降低功能代码之间的关联.创建一个更清晰的抽象,提高代码的内聚力,降低代码的耦合度,提高可维护性和复用性.

MyBatis是一个优秀的持久层框架,它对jdbc的操作数据库的过程进行封装,使开发者只需要关注SQL本身,而不需要花费精力去处理例如注册驱动、创建connection、创建statement、手动设置参数、结果集检索等jdbc繁杂的过程代码。

Mybatis通过xml或注解的方式将要执行的各种statement(statement、preparedStatemnt)配置起来,并通过java对象和statement中的sql进行映射生成最终执行的sql语句,最后由mybatis框架执行sql并将结果映射成java对象并返回。

持久层(数据层,Dao层) MyBatis框架「建议收藏」

(1)mybatis-config.xml是Mybatis的核心配置文件,通过其中的配置可以生成SqlSessionFactory,也就是SqlSession工厂

(2)基于SqlSessionFactory可以生成SqlSession对象

(3)SqlSession是一个既可以发送SQL去执行,并返回结果,类似于JDBC中的Connection对象,也是Mybatis中至关重要的一个对象。

(4)Executor是SqlSession底层的对象,用于执行SQL语句

(5)MapperStatement对象也是SqlSession底层的对象,用于接收输入映射(SQL语句中的参数),以及做输出映射(即将SQL查询的结果映射成相应的结果)

 

总之,Mybatis对JDBC访问数据库的过程进行了封装,简化了JDBC代码,解决JDBC将结果集封装为Java对象的麻烦。

MyBatis是一个优秀的持久层框架,它对jdbc的操作数据库的过程进行封装,使开发者只需要关注SQL本身,而不需要花费精力去处理例如注册驱动、创建connection、创建statement、手动设置参数、结果集检索等jdbc繁杂的过程代码。

Mybatis通过xml或注解的方式将要执行的各种statement(statement、preparedStatemnt)配置起来,并通过java对象和statement中的sql进行映射生成最终执行的sql语句,最后由mybatis框架执行sql并将结果映射成java对象并返回。

总之,Mybatis对JDBC访问数据库的过程进行了封装,简化了JDBC代码,解决JDBC将结果集封装为Java对象的麻烦。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/155139.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • C# winform美化窗体

    C# winform美化窗体记录一下winform美化工具CSkin一个.Net的UI库。参考链接:https://blog.csdn.net/yyl7727/article/details/78904125?spm=1001.2014.3001.5502

    2022年5月24日
    34
  • 7_首页分类按级别展示[通俗易懂]

    7_首页分类按级别展示[通俗易懂]需求在首页展示商品分类列表属性值请求urlhttp://{zuul:port}/api/portal/categorys/categorys请求方式GET参数无返回值HttpResult.ok(分类列表)实现1、pojo实体类要展示商品分类信息,需要树形结构展示,所以需要在Itemcat类中增加一个childern属性表示子分类比如:我们查看一级目录有:家电、手机、服装,但在家电这个一级目录下,又有分类,我们称为二级目录,有:电视

    2022年6月25日
    22
  • YGC和FGC是什么「建议收藏」

    YGC和FGC是什么「建议收藏」1.YGC和FGC是什么YGC:对新生代堆进行gc。频率比较高,因为大部分对象的存活寿命较短,在新生代里被回收。性能耗费较小。FGC:全堆范围的gc。默认堆空间使用到达80%(可调整)的时候会触发fgc。以我们生产环境为例,一般比较少会触发fgc,有时10天或一周左右会有一次。2.什么时候执行YGC和FGCedn空间不足,执行younggcb.old空间不足,…

    2022年6月19日
    41
  • windows route命令[通俗易懂]

    windows route命令[通俗易懂]命令:routeprint:打印当前的路由表routedelete:删除一条路由routeadd:增加一条路由,如果最后加上–p选项,表示永久增加静态路由,重启后不会失效routechange:更改一条路由例:routeCHANGE157.0.0.0MASK255.0.0.0157.55.80.5METRIC2IF2CHANGE只用于修改网关和/或跃点数。具体场景:一台电脑通过双网卡,同时连接内网与外网.内网地址10.0.

    2022年7月18日
    191
  • Springboot + Spring Security + jwt-token实现权限认证

    Springboot + Spring Security + jwt-token实现权限认证

    2021年8月31日
    54

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号