当前位置: 首页 > news >正文

Mybatis介绍

【什么是Mybatis?】

MyBatis 是支持 普通 SQL 查询存储过程高级映射 的优秀持久层框架。MyBatis 消除了几乎所有的 JDBC 代码和参数的手工设置以及对结果集的检索封装。MyBatis 可以使用简单的 XML 或注解用于配置和原始映射,将接口和 Java 的 POJO(Plain Old Java Objects,普通的 Java 对象)映射成数据库中的记录.

JDBC- 》dbutils- 》MyBatis- 》Hibernate

 

 

1.实现sql与Java编码分离。

2.sql由开发人员控制。

3.只需掌握sql。

 

【为什么使用Mybatis?】

1.Mybatis是一个半自动化的持久层框架。

2.JDBC:SQL夹在Java代码模块中,耦合度高导致硬编码内伤。维护不易且实际开发中SQL是有变化的,需要频繁更改。

3.Hibernate:长难复杂的SQL,对于Hibernate也不易处理。内部自动产生SQL,不易做特殊优化。基于全映射的全自动框架,大量字段的POJO进行部分映射时较困难。导致数据库性能下降。

4.对于开发人员,核心SQL还需要自己优化。SQL和Java代码分开,功能边界清晰,一个专注业务,一个专注数据。

 

转载于:https://www.cnblogs.com/zhzcode/p/9781719.html

相关文章:

  • USB数据采集卡:labjack T7、T7 Pro系列的技术特点
  • Mocha测试初探
  • 在线修改ha.proxy配置文件
  • BZOJ 4016: [FJOI2014]最短路径树问题
  • Flask的sqlalchemy SQL练习
  • js通过按钮直接把input或者textarea里的值复制到粘贴板里
  • SpringBoot基础篇配置信息之多环境配置信息
  • Horizon for NSX 服务安装包
  • bootstrap-带下拉菜单的标签页
  • 再下一城:Google 成为 Safari 默认搜索引擎
  • Centos 系统引导损坏修复、密码破解与加密
  • nodejs入门01——第一次给了nodejs
  • WPF C# 多屏情况下,实现窗体显示到指定的屏幕内
  • TCP三次握手和四次挥手以及11种状态
  • 导航栏的隐藏问题
  • 【跃迁之路】【585天】程序员高效学习方法论探索系列(实验阶段342-2018.09.13)...
  • Docker 笔记(2):Dockerfile
  • Laravel深入学习6 - 应用体系结构:解耦事件处理器
  • PHP 程序员也能做的 Java 开发 30分钟使用 netty 轻松打造一个高性能 websocket 服务...
  • Python进阶细节
  • webgl (原生)基础入门指南【一】
  • 名企6年Java程序员的工作总结,写给在迷茫中的你!
  • [Shell 脚本] 备份网站文件至OSS服务(纯shell脚本无sdk) ...
  • #LLM入门|Prompt#3.3_存储_Memory
  • $forceUpdate()函数
  • $var=htmlencode(“‘);alert(‘2“); 的个人理解
  • (2015)JS ES6 必知的十个 特性
  • (52)只出现一次的数字III
  • (Java岗)秋招打卡!一本学历拿下美团、阿里、快手、米哈游offer
  • (ZT)一个美国文科博士的YardLife
  • (初研) Sentence-embedding fine-tune notebook
  • (二)c52学习之旅-简单了解单片机
  • (二)基于wpr_simulation 的Ros机器人运动控制,gazebo仿真
  • (仿QQ聊天消息列表加载)wp7 listbox 列表项逐一加载的一种实现方式,以及加入渐显动画...
  • (附源码)ssm考生评分系统 毕业设计 071114
  • (实战篇)如何缓存数据
  • (原創) 如何優化ThinkPad X61開機速度? (NB) (ThinkPad) (X61) (OS) (Windows)
  • (转) ns2/nam与nam实现相关的文件
  • (自适应手机端)响应式新闻博客知识类pbootcms网站模板 自媒体运营博客网站源码下载
  • .NET Framework .NET Core与 .NET 的区别
  • .NET Framework 4.6.2改进了WPF和安全性
  • .net Stream篇(六)
  • .NET6 命令行启动及发布单个Exe文件
  • .Net各种迷惑命名解释
  • .net生成的类,跨工程调用显示注释
  • .net下简单快捷的数值高低位切换
  • .net中应用SQL缓存(实例使用)
  • @RunWith注解作用
  • [20160902]rm -rf的惨案.txt
  • [20170705]lsnrctl status LISTENER_SCAN1
  • [2018-01-08] Python强化周的第一天
  • [AIGC] 如何建立和优化你的工作流?
  • [android] 看博客学习hashCode()和equals()
  • [bzoj1006]: [HNOI2008]神奇的国度(最大势算法)
  • [C#基础知识]专题十三:全面解析对象集合初始化器、匿名类型和隐式类型