MyBatis框架的优缺点及其适用场合
回顾DAO层代码,以查询学生表记录数为例,直接使用JDBC和MyBatis查询的两种实现方式的代码如图所示:
Class.forName("com.mysql.jdbc.Driver");Connection connection=DriverManager.getConnection(url, user, password);String sql="select count(*) from student";PreparedStatement pstmt = connection.prepareStatement(sql);ResultSet rs = pstmt.executeQuery();if(rs.next()) {int count=rs.getInt(1);}/******************************分隔线*******************************/<mapper namespace="com.xyj.dao.StuDao"><select id="findCount" resultType="int">select count(1) from student </select></mapper>
用JDBC查询返回的是ResultSet对象,ResultSet往往并不能直接使用,还需要转换成其他封装类型,通过JDBC查询并不能直接得到具体的业务对象。这样,在整个查询过程中就需要做很多重复性的转换工作。
MyBatis框架的优点
- 与JDBC相比,减少了50%以上的代码量
- MyBatis是最简单的持久化框架,小巧并简单易学
- MyBatis相当灵活,不会对应用程序或者数据库的现有设计强加任何影响,SQL写在XML里,从程序中彻底分离,降低耦合度,便于统一管理和优化,并可重用。
- 提供XML标签,支持编写动态SQL语句
- 提供映射标签,支持对象与数据库的ORM字段关系映射
MyBatis框架的缺点
- SQL语句编写工作量较大,对开发人员编写SQL语句的功底有一定要求。
- SQL语句依赖于数据库,导致数据库移植性差,不能随意更换数据库。
MyBatis框架适用场合
MyBatis专注于SQL本身,是一个足够灵活的DAO层解决方案。对性能的要求很高,或者需求变化较多的项目,如互联网项目,那么MyBatis将是不错的选择。
MyBatis框架的优缺点及其适用场合相关推荐
- Mybatis框架简介
一.Mybatis框架简介 MyBatis框架是一个开源的数据持久层框架.它的内部封装了通过JDBC访问数据库的操作,支持普通的SQL查询.存储过程和高级映射,几乎消除了所有的JDBC代码和参数的手工 ...
- jdbc,mybatis,hibernate各自优缺点及区别
jdbc,mybatis,hibernate各自优缺点及区别 先比较下jdbc编程和hibernate编程各自的优缺点. JDBC: 我们平时使用jdbc进行编程,大致需要下面几个步骤:1,使用jdb ...
- 1. MyBatis框架介绍
1. MyBatis框架介绍 1. 框架概述 程序开发中框架(framework)往往是对常见功能的封装,可以把框架理解为软件的设计规范或者标准化的组件,好比机械中的螺丝螺母等标准的机械部件 假如你要 ...
- Java--SSH,SSM和Spring Boot框架区别优缺点
一.SSH(Struts + Spring + Hibernate) 1.基本概念 SSH框架是JAVA EE中三种框架所集成,分别是Struts,Spring,Hibernate框架所组成 集成SS ...
- 解析SSM框架的优缺点
一.SSM优缺点应该分开来说的,比如 1)spring 不说了,核心ioc.aop技术,ioc解耦,使得代码复用,可维护性大幅度提升,aop提供切面编程,同样的增强了生产力. 2)spring mvc ...
- Mybatis框架面试典籍30+ | 大别山码将
Mybatis 什么是MyBatis?优缺点及适用场景 Mybatis 是一款优秀的持久层框架,它支持自定义 SQL.存储过程以及高级映射.MyBatis 免除了几乎所有的 JDBC 代码以及设置参数 ...
- MyBatis框架的优点
使用MyBatis的好处 一.MyBatis框架的优点: 1. 与JDBC相比,减少了50%以上的代码量. 2. MyBatis是最简单的持久化框架,小巧并且简单易学. 3. MyBatis灵活,不会 ...
- MyBatis框架的作用
1.什么是框架 框架(Framework)是整个或部分系统的可重用设计,表现为一组抽象构件及构件实例间交互的方法;另一种定义认为,框架是可被应用开发者定制的应用骨架.前者是从应用方面而后者是从目的方面 ...
- SSM三个框架的优缺点。
SSM框架:spring+springmvc+mybatis框架集合: 一.mybatis的优缺点: 优点:a.sql写在xml文件中,便于统一管理和优化,解除sql和程序代码的耦合. b.提供映射标 ...
最新文章
- Alpha阶段项目总结
- 【C 语言】字符串操作 ( 使用 数组下标 操作字符串 | 使用 char * 指针 操作字符串 )
- Win10系统在运行界面cmd出现ipconfig命令无法使用的情况的解决办法!!
- JavaWeb结合七牛云存储搭建个人相册服务
- Web服务安全性和SOA路线图的人为维度
- [Ext JS6] ViewControllers-视图控制器
- 简单web服务器的实现(C++)
- ContextCapture(CC)/Smart3D集群搭建笔记
- 双向三相交错并联DC-DC变换器
- 小米笔记本桌面计算机图标,小米笔记本桌面锁定怎么解除
- cas 计算器 android,GeoGebra CAS计算器
- Minitab中的一些最常用的功能和任务。
- CSS中常用选择器总结
- 基于Proteus学习单片机系列(七)——实时时钟DS1302
- Kafka概述-什么是Kafka?
- systemd的日志存在哪里?
- 科技类毕业论文文献有哪些?
- ACdream原创群赛(11)の风神日华神专场 G - 风之国
- 如何将解压的ISO系统文件重新恢复成ISO系统镜像
- Android开发-优雅的实现动态图片排版(类似微信图片展示效果)
热门文章
- 使用xgboost进行特征选择
- 2021-11-10----韩顺平Java入门第七天
- 使用java完成一个猜数字的小游戏(数据范围在1-100之间)
- 解析数据时候 奇葩属性名字解决方法
- 刘长炯老师的java 学习大草原
- 计算机组装员工资,电脑组装员实习体会感想
- unity把公共方法在Inspector 界面上实现一个按钮点击直接调用的最快最方便的方式
- 查找统计python列表中的重复元素
- 雷达距离分辨力的推导
- Docker启动报错:Job for docker.service failed because the control process exited with error code. See “sy