Mybatis知识【Mybatis概述】第一章

简介: Mybatis知识【Mybatis概述】第一章

1,Mybatis概述


1.1:Mybatis概念

  • MyBatis 是一款优秀的==持久层框架==,用于简化 JDBC 开发


  • MyBatis 本是 Apache 的一个开源项目iBatis, 2010年这个项目由apache software foundation 迁移到了google code,并且改名为MyBatis 。2013年11月迁移到Github


  • 官网:mybatis – MyBatis 3 | 简介


持久层:


  • 负责将数据到保存到数据库的那一层代码。


以后开发我们会将操作数据库的Java代码作为持久层。而Mybatis就是对jdbc代码进行了封装。


  • JavaEE三层架构:表现层、业务层、持久层


三层架构在后期会给大家进行讲解,今天先简单的了解下即可。


框架:


  • 框架就是一个半成品软件,是一套可重用的、通用的、软件基础代码模型


  • 在框架的基础之上构建软件编写更加高效、规范、通用、可扩展


举例给大家简单的解释一下什么是半成品软件。大家小时候应该在公园见过给石膏娃娃涂鸦


如下图所示有一个石膏娃娃,这个就是一个半成品。你可以在这个半成品的基础上进行不同颜色的涂鸦  

了解了什么是Mybatis后,接下来说说以前 JDBC代码 的缺点以及Mybatis又是如何解决的。  


1.2:JDBC缺点

下面是 JDBC 代码,我们通过该代码分析都存在什么缺点:



硬编码


  • 注册驱动、获取连接


上图标1的代码有很多字符串,而这些是连接数据库的四个基本信息,以后如果要将Mysql数据库换成其他的关系型数据库的话,这四个地方都需要修改,如果放在此处就意味着要修改我们的源代码。


  • SQL语句


上图标2的代码。如果表结构发生变化,SQL语句就要进行更改。这也不方便后期的维护。


操作繁琐


  • 手动设置参数


  • 手动封装结果集


上图标4的代码是对查询到的数据进行封装,而这部分代码是没有什么技术含量,而且特别耗费时间的。



1.3:Mybatis优化

  • 硬编码可以配置到==配置文件==


  • 操作繁琐的地方mybatis都==自动完成==


如图所示



下图是持久层框架的使用占比。  

相关文章
|
6月前
|
SQL Java 数据库连接
【Mybatis】深入学习MyBatis:概述、主要特性以及配置与映射
【Mybatis】深入学习MyBatis:概述、主要特性以及配置与映射
【Mybatis】深入学习MyBatis:概述、主要特性以及配置与映射
|
XML Java 数据库连接
java202304java学习笔记第六十五天-ssm-声明式控制-基于xml的声明式配置-mybatis的概述2
java202304java学习笔记第六十五天-ssm-声明式控制-基于xml的声明式配置-mybatis的概述2
56 0
|
SQL XML Java
Mybatis概述
Mybatis概述
58 0
|
6月前
|
SQL Java 数据库连接
干翻Mybatis源码系列之第十篇:Mybatis Plugins基本概念与拦截概述
干翻Mybatis源码系列之第十篇:Mybatis Plugins基本概念与拦截概述
|
6月前
|
存储 缓存 Java
【干翻Mybatis源码系列】Mybatis缓存方案第一篇 之 Mybatis缓存方案概述
【干翻Mybatis源码系列】Mybatis缓存方案第一篇 之 Mybatis缓存方案概述
|
XML Java 数据库连接
java202304java学习笔记第六十五天-ssm-声明式控制-基于xml的声明式配置-mybatis的概述1
java202304java学习笔记第六十五天-ssm-声明式控制-基于xml的声明式配置-mybatis的概述1
56 0
|
Java 数据库连接 mybatis
java202304java学习笔记第六十六天-ssm-声明式控制-mybatis映射文件概述
java202304java学习笔记第六十六天-ssm-声明式控制-mybatis映射文件概述
172 0
|
SQL
java202304java学习笔记第六十六天-ssm-mybatis中dao层实现-动态sql概述之1
java202304java学习笔记第六十六天-ssm-mybatis中dao层实现-动态sql概述之1
57 0
|
SQL
java202304java学习笔记第六十六天-ssm-mybatis中dao层实现-动态sql概述之2
java202304java学习笔记第六十六天-ssm-mybatis中dao层实现-动态sql概述之2
50 0
java202304java学习笔记第六十六天-ssm-mybatis核心配置文件-概述
java202304java学习笔记第六十六天-ssm-mybatis核心配置文件-概述
46 0
下一篇
无影云桌面