Mybatis的介绍和基本使用

【MyBatis】MyBatis介绍及基本使用 MyBatis介绍及基本使用 前言 关于MyBatis,其实去年学习的时候就开始使用了,不过当时由于刚开始学习框架,对一些东西的理解不是很好,所有在学习MyBatis的时候,虽然有想法想把笔记整理出来作为博客发布,但是一直不敢动手,一方面是对MyBatis的使用不是很熟悉,另一方面是懒吧,囧,这几天趁着有时间重新回顾了MyBaits并且加上接触一些项目,所以就把学习的过程笔记整理出来。 ... 阅读详情

1 数据库操作框架的历程

1.1 JDBC

JDBC(Java Data Base Connection,Java数据库连接)是用于执行SQL语句的Java API,可以作为多种数据库提供统一访问,它由一组用Java语言编写的类和接口组成。

JDBC提供了一种基准,据此可以构建更高级的工具和接口,使数据库开发人员能够编写数据库应用程序。

  • 优点:运行期:快捷。高效
  • 缺点:编辑器:代码量大、繁琐异常处理,不支持数据库跨平台

1.2 DBUtils

1.3 Hibernate

Hibernate 是由 Gavin King 于 2001 年创建的开放源代码的对象关系框架。它强大且高效的构建具有关系对象持久性和查询服务的 Java 应用程序。

Hibernate 将 Java 类映射到数据库表中,从 Java 数据类型中映射到 SQL 数据类型中,并把开发人员从 95% 的公共数据持续性编程工作中解放出来。

Hibernate 是传统 Java 对象和数据库服务器之间的桥梁,用来处理基于 O/R 映射机制和模式的那些对象。

优势:

  • Hibernate 使用 XML 文件来处理映射 Java 类别到数据库表格中,并且不用编写任何代码。
  • 为在数据库中直接储存和检索 Java 对象提供简单的 APIs。
  • 如果在数据库中或任何其它表格中出现变化,那么仅需要改变 XML 文件属性。
  • 抽象不熟悉的 SQL 类型,并为我们提供工作中所熟悉的 Java 对象。
  • Hibernate 不需要应用程序服务器来操作。
  • 操控你数据库中对象复杂的关联。
  • 最小化与访问数据库的智能提取策略。
  • 提供简单的数据询问。

劣势:

  • hibernate的完全封装导致无法使用数据的一些功能。
  • Hibernate的缓存问题。
  • Hibernate对于代码的耦合度太高。
  • Hibernate寻找bug困难。
  • Hibernate批量数据操作需要大量的内存空间而且执行过程中需要的对象太多

1.4 JDBCTemplate

JdbcTemplate针对数据查询提供了多个重载的模板方法,你可以根据需要选用不同的模板方法。如果你的查询很简单,仅仅是传入相应SQL或者相关参数,然后取得一个单一的结果,那么你可以选择如下一组便利的模板方法。

优点:运行期:高效、内嵌Spring框架中、支持基于AOP的声明式事务
缺点:必须于Spring框架结合在一起使用、不支持数据库跨平台、默认没有缓存

2 Mybatis

MyBatis 是一款优秀的持久层框架,它支持自定义 SQL、存储过程以及高级映射。MyBatis 免除了几乎所有的 JDBC 代码以及设置参数和获取结果集的工作。MyBatis 可以通过简单的 XML 或注解来配置和映射原始类型、接口和 Java POJO(Plain Old Java Objects,普通老式 Java 对象)为数据库中的记录。

优点

  • 与JDBC相比,减少了50%的代码量
  • 最简单的持久化框架,简单易学
  • SQL代码从程序代码中彻底分离出来,可以重用
  • 提供XML标签,支持编写动态SQL
  • 提供映射标签,支持对象与数据库的ORM字段关系映射

缺点

  • SQL语句编写工作量大,熟练度要高
  • 数据库移植性比较差,如果需要切换数据库的话,SQL语句会有很大的差异
Mybatis同时支持多种数据库(oracle 和MySQL) 这里说下对多种数据库的支持,不是多个数据源。 这里要用到mybatis的databaseId。如下: <select id="isExist" resultType="Boolean" databaseId="mysql"> SELECT EXISTS(SELECT 1 FROM `${db}`.test_table WHER 阅读详情

相关推荐

Mybatis插件介绍

Mybatis Generator MyBatipse

遇卿 8804

mybatis连接mysql数据库步骤_框架学习系列 mybatis 第一篇 mybatis简介&原生jdbc连接分析...

框架学习系列 mybatis 第一篇 mybatis简介&原生jdbc连接分析凯哥Java 凯哥java本节主要内容1:mybatis的介绍2:原始jdbc问题分析3:JDBC演变成mybatis的过程4:总结&下节预告本文是《凯哥陪你学系列-框架学习之mybatis框架学习》中第一篇 mybatis简介&原生jdbc连接分析声明:本文系凯哥Java(www.kaigej...

weixin_33295214的博客 530

Mybatis框架介绍及使用

Mybatis框架介绍及使用 1、什么是Mybatis 1 、mybatis就是一个封装来jdbc的持久层框架,它和hibernate都属于ORM框架,但是具体的说,hibernate是一个完全的orm框架,而mybatis是一个不完全的orm框架; 2 、Mybatis让程序员只关注sql本身,而不需要去关注如连接的创建、statement的创建等操作。 3、 Myba...

qq_22583741的博客 5万+

MyBatis基本介绍和连接数据库操作

MyBatis以及框架的认知 一,框架的概念 1,框架是一个提供了可重用的公共的成品。 二,主流框架的介绍 1,Struts2框架 2,Hibernate框架 3,Spring框架 4,SpringMVC框架 5,MyBatis框架 三MyBatis介绍及其环境搭建 (一,数据持久化概念) 1数据持久化是将内存中的数据模型转换为存储模型,以及将存储模型转换为内存中的数据模型 的统称。 (二,MyB...

weixin_45650198的博客 258

WorkBuddy Skill赋能HYSYS与Comsol:AI工作台下的仿真自动化实践

AI Agent正将工业软件自动化带向新高度。在工程仿真领域,流程模拟与多物理场分析常因重复性操作而效率低下,Aspen HYSYS的批量工况调整、Comsol的参数扫描与网格重构均属此类。WorkBuddy这类AI工作台通过Skill将软件二次开发能力封装为可插拔技能包,利用HYSYS的COM/OLE接口和Comsol的Java API,实现自然语言指令到自动化执行的转变。其技术价值在于降低自动化门槛、沉淀工程经验,并支持日志审计与异常重试。在实际应用中,无论化工流程的灵敏度分析,还是激光焊接、移动网格等

weixin_29055699的博客 295

深入解析LVDS电平标准在LCD屏接口设计中的关键作用

本文深入解析了LVDS电平标准在LCD屏接口设计中的核心作用。文章不仅阐释了LVDS低电压差分信号的工作原理、关键电气参数及抗噪优势,还详细对比了VESA与JEIDA两种主流数据格式,并提供了从PCB布局布线到信号调试的实战避坑指南,是确保高速、稳定显示的关键技术参考。

weixin_28419039的博客 333

【MyBatis】MyBatis的介绍和基本使用

本文介绍了Java数据库操作框架MyBatis的历程和使用。文章首先讲述了JDBC的基本概念和特点,阐述了其在使用中的优缺点,例如编码量大和异常处理繁琐。在对比JDBC和MyBatis之后,文中介绍了其他数据库操作技术如DBUtils、Hibernate、Spring JDBC和Spring Data JPA。然后详述了MyBatis的组件和结构,并提出其作为半自动ORM框架的优缺点。最后,文章以步骤形式说明了如何搭建和使用MyBatis项目,并对如何通过XML和注解实现基本的数据库增删改查操作进行了描述。

小七的博客 1111

如何在STM32上5分钟搞定nanopb协议传输?附完整代码示例

本文提供了在STM32微控制器上快速集成nanopb协议传输的实战指南。通过详细的步骤,从.proto文件定义、代码生成到STM32CubeIDE项目移植,帮助开发者利用nanopb这一轻量级Protocol Buffers C语言实现,在5分钟内构建高效、跨平台的嵌入式设备通信框架,并附有完整的代码示例。

jwt8token的博客 837

MyBatis-Plus介绍及基本使用

MyBatis-Plus介绍及基本使用

墨鸦的博客 1万+

使用电荷放大器处理压电加速度计输出

电阻器 R p模拟传感器的绝缘电阻,为产生的电荷创建泄漏路径。在此图中,顶部波形显示传感器产生的电荷,而底部波形显示电荷放大器的输出。这需要具有大输入阻抗的放大级,以防止产生的电荷通过与传感元件并联的放大器的输入阻抗泄漏。换句话说,电荷放大器补偿传感器产生的电荷 q p ,反馈电容器 C F中具有相反极性的等量电荷。因此,任何与传感器并联的绝缘电阻,如电缆的绝缘电阻或传感器的漏电电阻Rp,都不能流过电流。漂移是指电荷放大器输出在一段时间内发生的变化,而不是由被测物理参数的变化(我们讨论的加速度)引起的。

weixin_45260069的博客 3900

商品标签识别系统:基于YOLO系列的深度学习实现

随着零售行业的快速发展和自动化需求的增长,商品标签识别技术变得越来越重要。本文详细介绍了一个完整的商品标签识别系统,该系统基于YOLO系列目标检测算法(包括YOLOv5、YOLOv8和YOLOv10),采用PySide6构建用户界面,并提供完整的训练代码和数据集处理方案。该系统能够准确识别商品标签中的关键信息,如价格、条形码、生产日期等,为零售自动化、库存管理和智能结算提供技术支持。

YOLO 348

MyBatis的介绍和基本使用

MyBatis 是一款优秀的持久层框架/半自动的ORM,它支持自定义 SQL、存储过程以及高级映射。MyBatis 免除了几乎所有的 JDBC 代码以及设置参数和获取结果集的工作。MyBatis 可以通过简单的 XML 或注解来配置和映射原始类型、接口和 Java POJO(Plain Old Java Objects,普通老式 Java 对象)为数据库中的记录。

Zhuxiaoyu_91的博客 954

分区补光与ISP图像调节技术

在安防监控场景中,逆光、强光、明暗不均(如门口 / 窗边的 “阴阳脸” 画面)是导致图像细节丢失的核心问题。分区补光技术通过对画面不同亮度区域精准补光,解决 “局部过曝 / 欠曝” 难题;ISP(图像信号处理器)图像调节技术则通过算法优化,提升画面色彩、对比度与细节。二者协同可实现 “硬件补光 + 算法优化” 的双重增强,是低功耗摄像机实现高清画质的关键技术组合。分区补光与 ISP 图像调节技术:原理、协同方案及安防监控应用案例。一、核心技术原理解析。

AIoT深度探索者 | 嵌入式系统架构师 深耕物联网(IoT)与人工智能(AI)融合技术,聚焦​​边缘计算、图像开发、低功耗通信协议​​,致力于智能硬件,关注我获取最新技术文章信息与海量资源~ 728

MyBatis基本介绍

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

weixin_71917170的博客 1604

北斗导航 | 2023 PTTI会议论文 2023 ITM会议论文 2022 ION GNSS+ 会议论文下载:ION 美国导航学会

2023 国际技术会议(ITM) 2023 精密时间和时间间隔系统和应用会议(PTTI) 2022 美国导航学会国际会议(ION GNSS +)

尘世冰封的专栏 4610

室内温度控制仿真(Simulink+PLC)

本篇博客将会带领大家解读Simulink自带的仿真模型(Thermal Model of a House),之后再讨论PLC控制系统控制环境温度的一些经验方法

RXXW_Dor的博客 3458

Mybatis 基本使用介绍

环境搭建 需要的pom依赖 <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.36</version> </dep...

tiger-guo 156

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

框架介绍,Mybatis介绍,使用JDBC的缺点,如何使用Mybatis

框架的介绍 框架的搭配 SSH:Spring,Struts2,Hibernate SSM:Spring,SpringMVC ,Mybatis 什么是框架 框架也是一个项目,但是他是一个半成品,框架给我们提供了很多功能,我们需要使用这些功能。 学习框架:学习这些功能怎么使用,了解他们底层实现,学习API(方法)。 Jar包导入方式 方式一:手动导入 去官网中下...

蚂蚁 729

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

MyBatis 和 MyBatis-Plus 介绍及适用场景

介绍MyBatis是一个优秀的持久层框架,它支持自定义 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数及获取结果集的工作。与 Hibernate 这种全自动 ORM 框架不同,MyBatis 允许开发者通过简单的 XML 或注解来配置和映射原生类型接口和 Java POJO(Plain Old Java Objects)到数据库中的记录。特点简单易用:MyBatis 使 SQL 的编写和管理更加方便,开发者可以直接编写 SQL 查询。灵活性高。

qq_42631788的博客 1249

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

MyBatis的入门介绍

MyBatis的入门介绍MyBatis的介绍MyBatis的历史由来MyBatis的基本信息MyBatis的背景介绍MyBatis的特点MyBatis的总体流程MyBatis的功能结构MyBatis的框架结构关键名词解释SqlSessionFactorySqlSession MyBatis的介绍 MyBatis的历史由来 MyBatis原本是apache的一个开源项目iBatis, 2010年这...

无聊的大鱼 1257

Mybatis介绍

MyBatis是一个持久层框架,用来优化JDBC的编写。注册驱动,打开连接动态拼接sql的字符串的拼接手动设置参数手动封装结果导入Maven依赖,mybatis、mysql的jdbc的驱动定义实体类编写mybatis的核心配置文件。(从之前的项目复制或者从官网获取不用背下来)编写mybatis中mapper的映射文件。(需要在核心配置文件中注册)获取SqlSessionFactory获取SqlSession,可以配置自动提交事务,默认是手动提交事务。执行sql。

FFFFFAAAAC的博客 801

Mybatis基本介绍

Mybatis介绍 1、Mybatis介绍   MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache software foundation 迁移到了google code,并且改名为MyBatis,实质上Mybatis对ibatis进行一些改进。   MyBatis是一个优秀的持久层框架,它对jdbc的操作数据库的过程进行封装,使开发者只需要关...

88
上一篇: JVM垃圾收集器
下一篇: Apache使用RewriteMap
.NET跨平台
博客等级 码龄15年 6066粉丝 738原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值