【Mybatis】 自动映射
【Mybatis】 自动映射Metadatatitle: 【Mybatis】 自动映射
date: 2023-01-21 12:17
tags:
- 行动阶段/完成
- 主题场景/组件
- 笔记空间/KnowladgeSpace/ProgramSpace/ModuleSpace
- 细化主题/Module/Mybatis
categories:
- Mybatis
keywords:
- Mybatis
description: 【Mybatis】 自动映射
【Mybatis】 自动映射正如你在前面一节看到的,在简单的场景下,MyBatis 可以为你自动映射查询结果。但如果遇到复杂的场景,你需要构建一个结果映射。 但是在本节中,你将看到,你可以混合使用这两种策略。让我们深入了解一下自动映射是怎样工作的。
当自动映射查询结果时,MyBatis 会获取结果中返回的列名并在 Java 类中查找相同名字的属性(忽略大小写)。 这意味着如果发现了 ID 列和 id 属性,MyBatis 会将列 ID 的值赋给 id 属性。
通常数据库列使用大写字母组成的单词命名,单词间 ...
【Mybatis】 结果映射
【Mybatis】 结果映射Metadatatitle: 【Mybatis】 结果映射
date: 2023-01-21 11:37
tags:
- 行动阶段/完成
- 主题场景/组件
- 笔记空间/KnowladgeSpace/ProgramSpace/ModuleSpace
- 细化主题/Module/Mybatis/XML映射器
categories:
- Mybatis
keywords:
- Mybatis
description: 【Mybatis】 结果映射
【Mybatis】 结果映射resultMap 元素是 MyBatis 中最重要最强大的元素。它可以让你从 90% 的 JDBC ResultSets 数据提取代码中解放出来,并在一些情形下允许你进行一些 JDBC 不支持的操作。实际上,在为一些比如连接的复杂语句编写映射代码的时候,一份 resultMap 能够代替实现同等功能的数千行代码。ResultMap 的设计思想是,对简单的语句做到零配置,对于复杂一点的语句,只需要描述语句之间的关系就行了。
之前你已经见过简单映射语句的示例,它们没 ...
【Mybatis】 参数
【Mybatis】 参数Metadatatitle: 【Mybatis】 参数
date: 2023-01-21 11:32
tags:
- 行动阶段/完成
- 主题场景/组件
- 笔记空间/KnowladgeSpace/ProgramSpace/ModuleSpace
- 细化主题/Module/Mybatis/XML映射器
categories:
- Mybatis
keywords:
- Mybatis
description: 【Mybatis】 参数
【Mybatis】 参数之前见到的所有语句都使用了简单的参数形式。但实际上,参数是 MyBatis 非常强大的元素。对于大多数简单的使用场景,你都不需要使用复杂的参数,比如:
<select id="selectUsers" resultType="User">
select id, username, password
from users
where id = #{id}
</select>
上面的这个示例说明了一个非常简单的命名参数映射。鉴于参数类型(para ...
【Mybatis】 Sql
【Mybatis】 SqlMetadatatitle: 【Mybatis】 Sql
date: 2023-01-21 11:30
tags:
- 行动阶段/完成
- 主题场景/组件
- 笔记空间/KnowladgeSpace/ProgramSpace/ModuleSpace
- 细化主题/Module/Mybatis/XML映射器
categories:
- Mybatis
keywords:
- Mybatis
description: 【Mybatis】 Sql
【Mybatis】 Sql这个元素可以用来定义可重用的 SQL 代码片段,以便在其它语句中使用。 参数可以静态地(在加载的时候)确定下来,并且可以在不同的 include 元素中定义不同的参数值。比如:
<sql id="userColumns"> ${alias}.id,${alias}.username,${alias}.password </sql>
这个 SQL 片段可以在其它语句中使用,例如:
<select id="selectUsers" result ...
【Mybatis】 Insert, Update, Delete
【Mybatis】 Insert, Update, DeleteMetadatatitle: 【Mybatis】 Insert, Update, Delete
date: 2023-01-21 11:20
tags:
- 行动阶段/完成
- 主题场景/组件
- 笔记空间/KnowladgeSpace/ProgramSpace/ModuleSpace
- 细化主题/Module/Mybatis/XML映射器
categories:
- Mybatis
keywords:
- Mybatis
description: 【Mybatis】 Insert
【Mybatis】 Insert, Update, Delete数据变更语句 insert,update 和 delete 的实现非常接近
<insert
id="insertAuthor"
parameterType="domain.blog.Author"
flushCache="true"
statementType="PREPARED"
keyProperty=""
keyCol ...
【Mybatis】 Select
【Mybatis】 SelectMetadatatitle: 【Mybatis】 Select
date: 2023-01-21 11:09
tags:
- 行动阶段/完成
- 主题场景/组件
- 笔记空间/KnowladgeSpace/ProgramSpace/ModuleSpace
- 细化主题/Module/Mybatis/XML映射器
categories:
- Mybatis
keywords:
- Mybatis
description: 【Mybatis】 Select
【Mybatis】 Select查询语句是 MyBatis 中最常用的元素之一——光能把数据存到数据库中价值并不大,还要能重新取出来才有用,多数应用也都是查询比修改要频繁。 MyBatis 的基本原则之一是:在每个插入、更新或删除操作之间,通常会执行多个查询操作。因此,MyBatis 在查询和结果映射做了相当多的改进。一个简单查询的 select 元素是非常简单的。比如:
<select id="selectPerson" parameterType="int" resul ...
Mybatis
MybatisMetadatatitle: Mybatis
date: 2023-01-21 10:50
tags:
- 行动阶段/完成
- 主题场景/组件
- 笔记空间/KnowladgeSpace/ProgramSpace/ModuleSpace
- 细化主题/持久层
- 细化主题/Module/Mybatis
categories:
- Mybatis
keywords:
- Mybatis
description: MyBatis 是一款优秀的持久层框架,它支持自定义 SQL、存储过程以及高级映射。MyBatis 免除了几乎所有的 JDBC 代码以及设置参数和获取结果集的工作。MyBatis 可以通过简单的 XML 或注解来配置和映射原始类型、接口和 Java POJO(Plain Old Java Objects,普通老式 Java 对象)为数据库中的记录。
【Mybatis】 基础undefined
【Mybatis】 XML 映射器undefined
【Mybatis】 Java APIundefined
【Mybatis】 SQL 语句构建 ...
【Mybatis】 简介
【Mybatis】 简介Metadatatitle: 【Mybatis】 简介
date: 2023-01-21 10:47
tags:
- 行动阶段/完成
- 主题场景/组件
- 笔记空间/KnowladgeSpace/ProgramSpace/ModuleSpace
- 细化主题/Module/Mybatis/基础
categories:
- Mybatis
keywords:
- Mybatis
description: 【Mybatis】 简介
【Mybatis】 简介MyBatis 是一款优秀的持久层框架,它支持自定义 SQL、存储过程以及高级映射。MyBatis 免除了几乎所有的 JDBC 代码以及设置参数和获取结果集的工作。MyBatis 可以通过简单的 XML 或注解来配置和映射原始类型、接口和 Java POJO(Plain Old Java Objects,普通老式 Java 对象)为数据库中的记录。
【Shiro Bug】 与 devtools 冲突
【Shiro Bug】 与 devtools 冲突Metadatatitle: 【Shiro Bug】 与 devtools 冲突
date: 2023-01-20 10:55
tags:
- 行动阶段/完成
- 主题场景/组件
- 笔记空间/KnowladgeSpace/ProgramSpace/ModuleSpace
- 细化主题/Module/Shiro/问题
categories:
- Shiro
keywords:
- Shiro
description: 【Shiro Bug】 与 devtools 冲突
【Shiro Bug】 与 devtools 冲突如果项目中引入了spring-boot-devtools会发生报错
java.lang.ClassCastException: com.common.pojo.UserEntity cannot be cast to com.common.pojo.UserEntity
同类型无法强转。原因是shiro-redis使用的类加载器与其他类的类加载器不同,要解决这个问题有两种办法。1).直接移除de ...
【Shiro SpringCloud】 实现
【Shiro SpringCloud】 实现Metadatatitle: 【Shiro SpringCloud】 实现
date: 2023-01-20 10:51
tags:
- 行动阶段/完成
- 主题场景/组件
- 笔记空间/KnowladgeSpace/ProgramSpace/ModuleSpace
- 细化主题/Module/Shiro/SpringCloud + Shiro
categories:
- Shiro
keywords:
- Shiro
description: 【Shiro SpringCloud】 实现
【Shiro SpringCloud】 引入依赖<dependency>
<groupId>org.apache.shiro</groupId>
<artifactId>shiro-spring</artifactId>
<version>1.3.2</version>
<exclusions>
...