首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏好好学习

    MyBatis常用特性运用

    概要 今天我们接着来学习MyBatis的一些常用特性,包括别名,类型处理器,动态SQL 如何使用MyBatis 在本小节,我将通过一个例子介绍MyBatis 中一些常用特性的运用,包括类型处理器,动态SQL 别名 MyBatis 中有个比较好用的特性就是别名,这是为了减少在配置文件中配置实体类的全限定名的冗余。运用如下: 首先在MyBatis的配置文件中配置别名: <! MyBatis 内置了很多类型处理器(typeHandlers),详细可以参考MyBatis官方文档,对枚举类的处理的是通过EnumTypeHandler和EnumOrdinalTypeHandler两个处理器来处理了 在这里插入图片描述 动态SQL的使用 MyBatis的强大特性之一便是它的动态SQL,主要是处理 根据不同条件拼接SQL语句,例如拼接时添加必要的空格,去掉列表中的最后一列的逗号,MyBatis的动态SQL 在这里插入图片描述 参考文献 MyBatis 3官方文档 mybatis枚举自动转换(通用转换处理器实现) 源代码 https://github.com/XWxiaowei/MyBatisLearn/tree

    56230发布于 2021-08-18
  • 来自专栏吴伟祥

    Mybatis 3.5新特性——Optional支持

    Mybatis 3.5 发布有段时间了,终于支持了 Optional ,这么实用的特性,竟然还没人安利……于是本文出现了。 文章比较简单,但非常实用,因为能大量简化恶心的判空代码。 至于 Optional 怎么使用,本文不作赘述——JDK 12都发布了,你要我普及JDK 8的”新特性”吗?大家自行百度吧,百度很多了。关键词:Java 8 Optional 。 思考 Mybatis 已支持 Optional ,Mybatis Spring Boot Starter 也已跟进,引入如下依赖即可: 1 2 3 4 5 <dependency> <groupId >org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version> 2.0.0</version> </dependency> 然而,Mybatis 的配套设施尚未跟进—— 官方提供的 Mybatis Generator 插件还未跟进,这意味着目前使用该插件生成的代码依然不会返回

    2.6K00发布于 2019-04-18
  • 来自专栏JAVA相关

    一、MyBatis简介:MyBatis历史、MyBatis特性、和其它持久化层技术对比、Mybatis下载依赖包流程

    @toc一、MyBatis简介1.1 MyBatis历史MyBatis最初是Apache的一个开源项目iBatis, 2010年6月这个项目由Apache Software Foundation迁移到了 1.2 MyBatis特性MyBatis 是支持定制化 SQL、存储过程以及高级映射的优秀的持久层框架MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集MyBatis可以使用简单的 ,则去镜像网站中下载没有,则去中央仓库中下载本人其他相关文章链接1.一、MyBatis简介:MyBatis历史、MyBatis特性、和其它持久化层技术对比、Mybatis下载依赖包流程2.二、搭建MyBatis 采用xml方式,验证CRUD(增删改查操作)3.三、MyBatis核心配置文件详解4.四、MyBatis获取参数值的两种方式(重点)5.五、MyBatis的增删改查模板(参数形式包括:String、对象 )9.九、MyBatis动态SQL10.十、MyBatis的缓存11.十一、MyBatis的逆向工程12.十二、MyBatis分页插件

    45000编辑于 2025-03-10
  • 来自专栏CSDN博客专栏

    SSM第六讲 MyBatis的高级特性

    MyBatis的高级特性 1 学习目标 1,理解Mybatis多对多关系 2,掌握Mybatis的延迟加载 3,掌握Mybatis缓存 4,掌握逆向工程生成mapper和实体类 2 Mybatis DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis 2.3.7 解决方案 2.3.7.1 解决1: 查看mybatis官网 http://www.mybatis.org/mybatis-3/zh/configuration.html 打开页面,找到settings B. mybatis无法实现细粒度的缓存管理,当你查询大量数据的时候而且将数据存储到mybatis二级缓存中的时候,但是一旦队一个数据操作增加,删除,修改,这里二级缓存就全部清空,而mybatis无法实现对这里单个信息的修改

    1.1K10发布于 2020-09-27
  • 来自专栏A周立SpringCloud

    我最喜欢的Mybatis 3.5新特性!超实用!

    Mybatis 3.5 发布有段时间了,终于支持了 Optional ,这么实用的特性,竟然还没人安利……于是本文出现了。 新特性比较简单,但非常实用,因为能大量简化恶心的判空代码。 至于 Optional 怎么使用,本文不作赘述——JDK 12都发布了,你要我普及JDK 8的”新特性”吗?大家自行百度吧,百度很多了。关键词:Java 8 Optional 。 思考 Mybatis 已支持 Optional ,Mybatis Spring Boot Starter 也已跟进,引入如下依赖即可: <dependency> <groupId>org.mybatis.spring.boot > 然而,Mybatis 的配套设施尚未跟进—— •官方提供的 Mybatis Generator 插件还未跟进,这意味着目前使用该插件生成的代码依然不会返回 Optional ,例如 selectByPrimaryKey •国内最流行的第三方Mybaits增强 Mybatis通用Mapper[1] ,及其配套的 通用Mapper专用生成器[2] 都尚未支持Optional ,笔者提Issue,详见:建议支持Optional

    79330发布于 2019-07-10
  • 来自专栏技术分享

    深入MyBatis的动态SQL:概念、特性与实例解析

    MyBatis 是一个优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。 动态 SQL 的主要特性条件判断:通过 <if> 元素,可以根据条件判断来动态地添加或删除 SQL 语句的某部分。 迭代处理:MyBatis 还支持对集合进行迭代处理,生成 IN 语句等复杂的 SQL 逻辑。 动态SQL的实例演示我们通过一个栗子来演示如何在MyBatis中使用动态SQL,来让我们更好的理解动态SQL,运用动态SQL。 MyBatis会根据传入的条件动态地生成SQL语句并执行查询操作,最后返回满足条件的用户列表。

    96810编辑于 2024-08-04
  • 来自专栏mall学习教程

    MyBatis特性动态SQL真香!

    当我们使用MyBatis的时候,需要在mapper.xml中书写大量的SQL语句。当我们使用MyBatis Generator(MBG)作为代码生成器时,也会生成大量的mapper.xml文件。 其实从MBG 1.3.6版本以后,MyBatis官方已经推荐使用Dynamic SQL,使用这一新特性基本就不用写mapper.xml文件了,使用起来非常方便,推荐给大家! 使用Dynamic SQL就好比是使用Java的方式来操作MyBatis。 Dynamic SQL具有如下特性: 类型安全:可以确保参数类型和数据库字段类型相匹配; 富有表现力:语句的构建方式可以清楚地传达其含义; 使用灵活:可以使用and,or和nested条件的任意组合来构建 MyBatis官方代码生成工具给力!》

    9K10发布于 2021-01-06
  • 来自专栏用户3206217的专栏

    【RuoYi-Eggjs】:多数据库与 MyBatis 特性详解

    【RuoYi-Eggjs】:多数据库与MyBatis特性详解在企业级应用开发中,数据库的选择往往需要根据项目规模、性能需求、部署环境等因素灵活调整。 GitHub:https://github.com/undsky/RuoYi-Eggjs核心特性多数据库支持项目原生支持三种主流数据库:数据库插件适用场景MySQLruoyi-eggjs-mysql生产环境首选 DOCTYPEmapperPUBLIC"-//mybatis.org//DTDMapper3.0//EN""http://mybatis.org/dtd/mybatis-3-mapper.dtd"><mappernamespace 相关链接ruoyi-eggjsruoyi-eggjs-mybatis-MyBatisXMLSQL映射插件ruoyi-eggjs-mysql-MySQL数据库插件ruoyi-eggjs-pgsql-PostgreSQL

    11810编辑于 2026-01-11
  • 来自专栏IT技术订阅

    MyBatis工作原理、高级特性及整合到spring boot的步骤

    架构层次 MyBatis 分为三个主要层次: 1. 核心处理层(Core Processing Layer): - 这一层包含了MyBatis的核心逻辑,包括: - **配置解析**:读取和解析`mybatis-config.xml`和各个 关键流程 MyBatis的主要工作流程如下: 1. MyBatis的设计理念在于简化开发者对JDBC的操作,同时保持高度的灵活性和可控性。 MyBatis 的高级特性主要包括以下几个方面: 1. 配置MyBatis 如果使用了Mapper XML文件,需要在配置类中指定其扫描路径。

    78610编辑于 2024-04-15
  • 来自专栏IT技术订阅

    Hibernate技术原理、高级特性、大数据处理及与Mybatis对比

    Hibernate高级特性 Hibernate的高级特性包括但不限于事务管理、并发控制(如悲观锁和乐观锁)、拦截器、事件监听、延迟加载、批处理等。下面是一些相关特性的Java代码示例: 1. Hibernate 和 MyBatis对比 Hibernate 和 MyBatis 是两个非常流行且功能强大的 Java ORM 框架,它们的主要区别在于设计理念、灵活性和易用性等方面: 1. - MyBatis则是一种半自动的持久层框架,它强调 SQL 显式化和灵活性。 - MyBatis因为允许开发者直接编写 SQL,所以在复杂查询、性能优化和针对性的数据库操作上有更高的灵活性,可以针对特定的数据库特性进行深度优化。 3. - MyBatis 更适合那些对性能要求较高、SQL 查询复杂多变、数据库操作需要精细化控制的项目,特别在互联网项目中,往往面临大量的查询优化和数据处理需求。

    69210编辑于 2024-04-25
  • 来自专栏全栈开发日记

    MyBatis(认识MyBatis

    MyBatis是什么? MyBatis曾经的名字是iBatis,2010年时将源码托管到google code,同时改名MyBatis,2013年时MyBatis又迁移到Github,它是Java的一个数据持久层框架。 MyBatis是阿里巴巴这种大企业的御用框架,在小企业中的火热程度也是可想而知。 使用MyBatis有哪些优势? 以及SQL语句存在的硬编码的问题等都可以使用MyBatis解决。 /github.com/mybatis/mybatis-3/releases 找到要下载的版本,下载后将两个依赖包加入项目的构建路径中即可使用。

    60320编辑于 2022-05-13
  • 来自专栏用户1337634的专栏

    MyBatis & MyBatis Plus

    使用MyBatis-Plus后可以摆脱大部分此类简单的CRUD操作(通用Mapper也可以)。 DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd 位置配置 mybatis-plus.config-location=classpath:mybatis-config.xml 主键配置: @TableId 与数据库没有对应关系的字段:@TableField (exist = false) typeHandler 全局配置 mybatis-plus.type-handlers-package=com.kuaima.kuaima.utils.mybatis.handler 参考 MyBatis-Plus官网 MybatisPlus与Mapper技术选型 mybatis-plus思维导图,让mybatis-plus不再难懂 mybatis plus TableField typehandler

    4.1K31发布于 2019-03-27
  • 来自专栏coderidea

    简化数据库操作与提升效率:MyBatis Plus的主要特性和功能

    Mybatis-Plus 是一款 MyBatis 的增强工具包,简化 CRUD 操作。启动加载 XML 配置时注入单表 SQL 操作 ,为简化开发工作、提高生产率而生。 演示例子:https://gitee.com/baomidou/mybatis-plus-samples 官方文档:https://baomidou.com/ MyBatis Plus(简称为MyBatis +)是基于 MyBatis 框架的增强工具,旨在简化 MyBatis 的使用并提供更多的便利功能。 MyBatis Plus 的一些主要特性和功能: 简化的 CRUD 操作:MyBatis Plus 提供了一些内置的方法和注解,使得进行常见的 CRUD(增删改查)操作更加简单和便捷。 总的来说,MyBatis Plus 在 MyBatis 的基础上提供了更多的便利功能和简化的 API,可以帮助开发者更高效地进行数据库操作和持久化工作。

    71940编辑于 2023-09-07
  • 来自专栏编程

    MyBatis一、MyBatis简介

    经过多年的发展和改进,MyBatis逐渐成为一个独立、灵活且功能强大的数据访问框架,并在Java Web开发社区中获得了广泛的应用和认可。 MyBatis 特性 1. 批量更新和延迟加载:MyBatis还支持批量更新和延迟加载等特性,进一步优化了数据访问性能。 3. 这种易于集成的特性使得MyBatis在各种规模和类型的项目中都能得到广泛应用。 4. 其他特性 结果映射:MyBatis支持将查询结果映射为Java对象、Map等形式,使得开发者可以方便地处理查询结果。 综上所述,MyBatis凭借其灵活性、易用性、性能优化、易于集成、支持多种数据库和插件机制等特性,成为了Java开发中常用的持久层框架之一。

    65110编辑于 2024-10-28
  • 来自专栏全栈开发日记

    MyBatis(如何使用MyBatis

    MyBatis是什么? DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3 -- 指定数据源 type:是否使用数据库连接池 pooled是mybatis内置的数据库连接池 mybatis内置的连接池不好用,但是spring可以代替管理数据源可以使用 DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd 别名可以在全局配置文件中声明,一些常见的Java数据类型MyBatis都有提供有别名,可自行百度学习。

    62420编辑于 2022-05-13
  • 来自专栏墨白的Java基地

    Mybatis系列】Mybatis入门

    简介 image.png 什么是 MybatisMyBatis 是一款优秀的持久层框架,它支持自定义 SQL、存储过程以及高级映射。 Mybatis 历史 Mybatis 是 Apache 软件基金会下的一个开源项目, 前身是 ibatis 框架。 那么用了 Mybatis 之后,只需要自己提供 SQL 语句,其他的工作,诸如建立连接 Statement, JDBC相关异常处理等等都交给 Mybatis 去做了,那些重复性的工作 Mybatis 也给做掉了 框架原理 image.png 图说: 1、Mybatis 配置文件 SqlMapConfig.xml :此文件作为 mybatis 的全局配置文件,定义了 mybatis 运行的基础环境信息,如数据库链接信息等 DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-

    81810编辑于 2022-03-08
  • 来自专栏编程

    MyBatis二、搭建 MyBatis

    MyBatis二、搭建 MyBatis 开发环境 IDE:IDEA2024.1 构建工具:Maven3.8.8 MySQL版本:MySQL8 MyBatis版本:MyBatis3.5.7 MyBatis配置文件 配置文件格式:MyBatis的配置文件(如mybatis-config.xml)需要按照MyBatis的规范进行编写,确保各项配置正确无误。 版本兼容性 MyBatis版本:确保使用的MyBatis版本与MySQL版本兼容。虽然大多数情况下不同版本的MyBatis都能与MySQL正常工作,但最好还是使用经过验证的兼容版本组合。 DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd

    51210编辑于 2024-10-28
  • 来自专栏全栈程序员必看

    mybatismybatis面试题

    mybatis的基本工作流程 1.读取配置文件,配置文件包含数据库连接信息和Mapper映射文件或者Mapper包路径。 SqlSessionFactory建立SqlSession,目的执行sql语句,SqlSession是过程级,一个方法中建立,方法结束应该关闭 4.当用户使用mapper.xml文件中配置的的方法时,mybatis 什么是MyBatis的接口绑定,有什么好处 接口映射就是在IBatis中任意定义接口,然后把接口里面的方法和SQL语句绑定,我们通过直接调用接口方法 例如: UserMapper userMapper 什么情况下用注解绑定,什么情况下用xml绑定 当Sql语句比较简单时候,用注解绑定, 当SQL语句比较复杂时候,用xml绑定,一般用xml绑定的比较多 MyBatis实现一对一有几种方式 讲下MyBatis的缓存 MyBatis的缓存分为一级缓存和二级缓存, 一级缓存放在session里面,默认就有,二级缓存放在它的命名空间里,默认是打开的, 使用二级缓存属性类需要实现Serializable

    84210编辑于 2022-08-24
  • 来自专栏android技术

    MyBatis--初入MyBatis

    SQL语句的编写 一、MyBatis的依赖导入 1. Maven导入MyBatis依赖 Maven中心地址:https://mvnrepository.com/ Maven中心搜索mybatis,这边根据个人习惯,使用热度高的版本 将上面标签复制到工程 -- https://mvnrepository.com/artifact/org.mybatis/mybatis --> <dependency> <groupId >org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.5.7</version DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis

    53610编辑于 2022-05-13
  • Mybatis学习:Mybatis缓存配置

    MyBatis缓存配置数据库 一级缓存、二级缓存、三级缓存 一级缓存:在维持一个会话时,查询获取的数据会存放在一级缓存中,下次使用从缓存中获取。 (查询缓存 如redis)二级缓存的使用场景: 1.以查询为主的应用,尽可能少的增、删、改操作; 2.业务以单表操作为主; 3.表与表之间的关联尽可能少;MyBatis如何配置二级缓存第一步: 在mybatis-config.xml (默认是打开的)xml 代码解读复制代码<settings><setting name="cacheEnable" value="true"/></settings>第二步:在映射文件中进行配置 由于Mybatis 读写)集成Redis缓存特点:存取缓存使用了序列化和反序列 所以实体类要实现Serializable接口 第一步:添加项目依赖xml 代码解读复制代码<dependency><groupId>org.mybatis.caches </groudId><artifactId>mybatis-redis</artifactId><version>1.0.0-beta2</version></dependency>第二步:配置redis

    49010编辑于 2025-01-07
领券