MyBatis
18 篇文章
mybatis
SpringBoot—MyBatis整合多数据源
关于多数据源的配置,前面有JdbcTemplate多数据源配置,那个比较简单,本文来说说MyBatis多数据源的配置。 其实关于多数据源,复杂的就直接上分布式数据库中间件,简单的再考虑多数据源。 工程…
SpringBoot—MyBatis整合
Spring Boot中最简单的数据持久化方案JdbcTemplate,JdbcTemplate虽然简单,但是用的并不多,因为它没有MyBatis方便,在Spring+SpringMVC中整合MyBa…
SpringBoot—JdbcTemplate(多数据源)
多数据源配置也算是一个常见的开发需求,Spring和SpringBoot中,对此都有相应的解决方案,不过一般来说,如果有多数据源的需求,还是建议首选分布式数据库中间件MyCat去解决相关问题,有小伙伴…
SpringBoot—JdbcTemplate(数据持久化)
在Java领域,数据持久化有几个常见的方案,有Spring自带的JdbcTemplate、有MyBatis,还有JPA,在这些方案中,最简单的就是Spring自带的JdbcTemplate了,这个东西…
MyBatis笔记16—逆向工程
由于使用数据表时,我们需要给每一个表都创建对应的实体类,每个实体类都有对应的 Mapper 接口和 Mapper.xml 文件,这些其实都是一些重复的工作,我们可以通过第三方工具来完成。 MyBati…
MyBatis笔记15—查询缓存
Mybatis 一级缓存的作用域是同一个 SqlSession,在同一个 sqlSession 中两次执行相同的 sql 语句,第一次执行完毕会将数据库中查询的数据写到缓存(内存),第二次会从缓存中获…
MyBatis笔记14—一对多查询
一对多查询,也是一个非常典型的使用场景。比如用户和角色的关系,一个用户可以具备多个角色。 首先我们准备三个表: /* Navicat MySQL Data Transfer Source Server…
MyBatis笔记13—一对一查询
在实际开发中,经常会遇到一对一查询,一对多查询等。这里我们先来看一对一查询。 例如:每本书都有一个作者,作者都有自己的属性,根据这个,我来定义两个实体类: public class Book { pr…
MyBatis笔记12—动态 SQL
动态 SQL 动态 SQL 是 MyBatis 中非常强大的一个功能。例如一些常见的查询场景: 查询条件不确定批量插入…. 这些类似需求,我们都可以通过 MyBatis 提供的动态 SQL 来解决。 …
MyBatis笔记11—resultMap+分页
在实际开发中,resultMap 是使用较多的返回数据类型配置。因为实际项目中,一般的返回数据类型比较丰富,要么字段和属性对不上,要么是一对一、一对多的查询,等等,这些需求,单纯的使用 resultT…
MyBatis笔记10—resultType(返回类型)
resultType 是返回类型,在实际开发中,如果返回的数据类型比较复杂,一般我们使用 resultMap,但是,对于一些简单的返回,使用 resultType 就够用了。 resultType 返…
MyBatis笔记9—parameterType(输入的参数类型)
这是一个非常非常高频的面试题,虽然很简单。在面试中,如果涉及到 MyBatis,一般情况下,都是这个问题。 在 MyBatis 中,我们在 mapper 引用变量时,默认使用的是 #,像下面这样: &…
Mybatis—Mapper补充
Mapper 配置的几种方法 <mapper resource=" " /> 使用相对于类路径的资源,即 XML 的定位,从 classpath 开始写。 如: <mapper re…
MyBatis笔记8—typeHandlers
typeHandlers又叫类型处理器,就像在JDBC中,我们在PreparedStatement中设置预编译sql所需的参数或执行sql后根据结果集ResultSet对象获取得到的数据时,需要将数据…
MyBatis笔记7——typeAliases
这个是 MyBatis 中定义的别名,分两种,一种是 MyBatis 自带的别名,另一种是我们自定义的别名。 MyBatis 自带的别名 别名映射的类型_bytebyte_longlong_short…
MyBatis笔记6—配置setting
setting 标签的配置是配置 MyBatis 框架运行时的一些行为的,例如缓存、延迟加载、结果集控制、执行器、分页设置、命名规则等一系列控制性参数,其所有的 setting 配置都放在父标签 se…
MyBatis笔记5—properties(外部配置)
properties 可以用来引入一个外部配置,最近常见的例子就是引入数据库的配置文件,例如我们在 resources 目录下添加一个 db.properties 文件作为数据库的配置文件,文件内容如…
MyBatis笔记4—Mapper的简化
前面我们所写的增删改查是存在问题的。主要问题就是冗余代码过多,模板化代码过多。例如,我想开发一个 UserDao,可能是下面这样: public class UserDao { private Sql…
MyBatis笔记3—增删改查
前面的 HelloWorld ,我们做了一个查询的 Demo,这里我们来看另外四种常见的操作。 增 添加记录,id 有两种不同的处理方式,一种就是自增长,另一种则是 Java 代码传一个 ID 进来,…
MyBatis笔记2—HelloWorld
我们通过一个简单的 HelloWorld 先来看下 MyBatis 的基本用法。 首先来准备一个数据库: CREATE DATABASE /*!32312 IF NOT EXISTS*/`test01…
MyBatis笔记—简介
JDBC 存在的问题 数据库连接创建、释放频繁造成系统资源浪费从而影响系统性能,如果使用数据库连接池可解决此问题。Sql 语句在代码中硬编码,造成代码不易维护,实际应用 sql 变化的可能较大,sql…
Spring笔记13—JdbcTemplate(数据库)
Spring对数据库的操作在jdbc上面做了深层次的封装,使用spring的注入功能,可以把DataSource注册到JdbcTemplate之中。 JdbcTemplate主要提供以下方法: exe…