持久层(数据层,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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • ida反汇编使用方法_开源反汇编工具

    ida反汇编使用方法_开源反汇编工具本文详细介绍反汇编工具IDAPro的使用。

    2025年8月18日
    6
  • hadoop使用教程_hadoop入门

    hadoop使用教程_hadoop入门Hadoop【大数据Hadoop系列】Hadoop2.X单机环境搭建【大数据Hadoop系列】Hadoop2.X集群环境搭建MapReduce【大数据Hadoop系列】分布式计算框架——MapReduceYARN【大数据Hadoop系列】Hadoop-YARN知识体系总结(2021版)【大数据Hadoop系列】集群资源管理器——YARNHDFS【大数据Hadoop系列】Hadoop-HDFS知识体系总结(2021版)【大数据Hadoop系列】Hadoop分

    2025年6月3日
    1
  • SM2 (含SM3、SM4)国密算法工具QT版,彻底搞懂sm2算法的使用

    SM2 (含SM3、SM4)国密算法工具QT版,彻底搞懂sm2算法的使用网上有很多网友问算法sm2怎么使用?什么是压缩公钥和非压缩公钥,长度有多长?xB和yB这参数是什么?怎么使用sm2做加解密?如何签名和验签?有没有工具来验证下?这里分享个自己使用QT造的一个小工具,用来对sm2算法做个加解密和签名,验签的验证。p,a,b,Gx,Gy,n为椭圆曲线参数,目前sm2使用的是以下的值的参数,以后会不会变不知道。这些参数当然也可以改,作为测试或者打造自己的一套加解密算法。使用素数域256位椭圆曲线曲线方程:y^2=x^3+ax+b曲线.

    2022年9月15日
    4
  • python发邮件脚本详解_Python发邮件脚本

    python发邮件脚本详解_Python发邮件脚本收集的一个 Python 发邮件脚本 实现在不搭建邮件服务器的环境下 通过调用其它邮箱发送邮件 vimmail py 内容如下 usr bin envpython coding UTF 8 importos sysreload sys sys setdefaulten utf8 importgetopt MIM

    2025年7月23日
    4
  • 0x7ffffffff什么意思(y9000x)

    运行之后发现:0x7FFFFFFF对应int.MaxValue即21474836470xFFFFFFFF对应uint.MaxValue即42949672950x7FFF对应short.MaxValue即327670xFFFF对应ushort.MaxValue即655350x7F对应sbyte.MaxValue即1270xFF对应byt…

    2022年4月12日
    76
  • C语言 | 编写一个简单的定时关机程序「建议收藏」

    C语言 | 编写一个简单的定时关机程序「建议收藏」前言今天,我同学问我这个程序怎么做:于是,我用C给他写了一个类似的控制台程序:我的这个控制台程序有8个小功能,分别是:1、定时n秒后自动关机。2、定时到x点x分提醒你是否要关机,如果你没…

    2022年7月22日
    12

发表回复

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

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