深入JavaWeb技术世界15:深入浅出Mybatis基本原理

  • 时间:
  • 浏览:3
  • 来源:爱乐彩网站_爱乐彩下载_爱乐彩官网

删改流程如下:

微信公众号【Java技术江湖】一位阿里 Java 工程师的技术小站,专注于 Java 相关技术:SSM、SpringBoot、MySQL、分布式、底下件、集群、Linux、网络、多进程运行,偶尔讲点Docker、ELK,同時 也分享技术干货和学习经验,致力于Java全栈开发!

该系列博文会告诉你怎么才能 才能 从入门到进阶,从servlet到框架,从ssm再到SpringBoot,一步步地学习JavaWeb基础知识,并上手进行实战,接着了解JavaWeb项目中总爱 要使用的技术和组件,包括日志组件、Maven、Junit,等等内容,以便让你更删改地了解整个JavaWeb技术体系,形成所有人 的知识框架。为了更好地总结和检验你的学习成果,本系列文章也会提供每个知识点对应的面试题以及参考答案。

关注公众号后回复“PDF”即可领取1000+页的《Java工程师面试指南》强烈推荐,几乎涵盖所有Java工程师必知必会的知识点。

MyBatis框架和许多绝大次要框架一样,需要一有一个 多配置文件,其配置文件大致如下:

就让,为哪此需要要学习mybatis的工作原理?就让,随着mybatis框架的不断发展,如今就让这麼 趋于自动化,从代码生成,到基本使用,亲戚亲戚大伙儿甚至需要动手写一句SQL就需要完成一有一个 多简单应用的删改CRUD操作。

文章首发于我的所有人 博客:

从原生mybatis到mybatis-spring,到mybatis-plus再到mybatis-plus-spring-boot-starter。spring在发展,mybatis同样在随之发展。

在mybatis的基础知识中亲戚亲戚大伙儿就让需要对mybatis的工作依据窥斑见豹(参考:《MyBatis————基础知识》)。

MyBatis的主要设计目的就让让亲戚亲戚大伙儿对执行SQL搞笑的话时对输入输出的数据管理更加方便,不多不多方便地写出SQL和方便地获取SQL的执行结果才是MyBatis的核心竞争力。

就让,SqlSessionFactory的实例直接开启一有一个 多SqlSession,再通过SqlSession实例获得Mapper对象并运行Mapper映射的SQL搞笑的话,完成对数据库的CRUD和事务提交,就让 关闭SqlSession。

喜欢搞笑的话麻烦点下Star哈

(图片来自《深入理解mybatis原理》 MyBatis的挂接以及实例分析)

mybatis进程运行运行通过SqlSessionFactoryBuilder从mybatis-config.xml配置文件(也需要用Java文件配置的依据,需要加进去去@Configuration)中构建出SqlSessionFactory(SqlSessionFactory是进程运行安全的);

以上主要成员在一次数据库操作中基本不会 涉及,在SQL操作中重点需要关注的是SQL参数哪此就让 被设置和结果集为社 会 转换为JavaBean对象的,这种 有一个 多过程正好对应StatementHandler和ResultSetHandler类中的避免逻辑。

说明:SqlSession是单进程运行对象,就让它是非进程运行安全的,是持久化操作的独享对象,之类jdbc中的Connection,底层就封装了jdbc连接。

微信公众号【进程运行员黄小斜】新生代青年聚集地,进程运行员成长充电站。作者黄小斜,职业是阿里进程运行员,身份是斜杠青年,希望和更多的进程运行员交亲戚亲戚大伙儿,同時 进步和成长!专注于分享技术、面试、职场等成长干货,这种 次,亲戚亲戚大伙儿同時 出发。

用最直观的图,来征服你的心!

万变的外表终将迷惑亲戚亲戚大伙儿的双眼,我希望抓住核心亲戚亲戚大伙儿永远不需要迷茫!

3、SqlSession对象完成和数据库的交互:

a、用户进程运行调用mybatis接口层api(即Mapper接口中的依据)

b、SqlSession通过调用api的Statement ID找到对应的MappedStatement对象

c、通过Executor(负责动态SQL的生成和查询缓存的维护)将MappedStatement对象进行解析,sql参数转化、动态sql拼接,生成jdbc Statement对象

d、JDBC执行sql。

https://github.com/h2pl/Java-Tutorial

2、SqlSessionFactoryBuilder通过Configuration对象生成SqlSessionFactory,用来开启SqlSession。

本系列文章将挂接到我在GitHub上的《Java面试指南》仓库,更多精彩内容请到我的仓库里查看

以上配置中,最重要的是数据库参数的配置,比如用户名密码等,就让配置了数据表对应的mapper文件,则需要将其加入到节点下。 

www.how2playlife.com

本文是微信公众号【Java技术江湖】的《走进JavaWeb技术世界》其中一篇,本文次要内容来源于网络,为了把本文主题讲得清晰透彻,也整合了不多不多我认为不错的技术博客内容,引用其中了许多比较好的博客文章,如有侵权,请联系作者。

MyBatis 是支持定制化 SQL、存储过程以及高级映射的优秀的持久层框架,其主要就完成2件事情:

关注公众号后回复“2020”领取我这两年挂接的学习资料,涵盖学着编程、求职面试、算法刷题、Java技术学习、计算机基础和考研等100000G资料合集。

就让对本系列文章有哪此建议,就让是有哪此大现象搞笑的话,也需要关注公众号【Java技术江湖】联系作者,欢迎你参与本系列博文的创作和修订。

https://www.jianshu.com/p/e398435fc1c4

https://segmentfault.com/a/1190000015117926?utm_source=tag-newest#articleHeader4https://blog.csdn.net/u01474100069/article/details/1000788127https://blog.csdn.net/u014297148/article/details/7869100096https://blog.csdn.net/weixin_43184769/article/details/91126687

e、借助MappedStatement中的结果映射关系,将返回结果转化成HashMap、JavaBean等存储底部形态并返回。

1、加载mybatis全局配置文件(数据源、mapper映射文件等),解析配置文件,MyBatis基于XML配置文件生成Configuration,和一有一个 多个MappedStatement(包括了参数映射配置、动态SQL搞笑的话、结果映射配置),其对应着标签项。