随笔- 348
文章- 6
评论- 117
阅读-
196万
随笔分类 - Mybatis
Mybatis 插入后返回数据库自动增长ID
摘要:MySQL和MSSQL返回主键方法 在personMap.xml中 调用插入方法,将mybatis返回的自动增长ID自动返回给id属性 通过实体对象p.getId():就可以获取插入后该记录的id了 Oracle数据
阅读全文
Mybatis <foreach>标签
摘要:<foreach>标签有循环的功能,可以用来生成有规律的SQL语句,主要属性有: item:表示集合每一个元素进行迭代时的别名 index:表示在迭代过程中,每次迭代到的位置 open:表示该语句已什么开始 separator:表示每次迭代之间以什么符号作为分隔 close:表示该语句已什么结束 c
阅读全文
Mybatis <set>标签
摘要:这里,set 元素会动态前置 SET 关键字,同时也会消除无关的逗号,因为用了条件语句之后很可能就会在生成的赋值语句的后面留下这些逗号。 若你对等价的自定义 trim 元素的样子感兴趣,那这就应该是它的真面目:
阅读全文
Mybatis <where>标签
摘要:如果这些条件没有一个能匹配上将会怎样?最终这条 SQL 会变成这样: 这会导致查询失败。如果仅仅第二个条件匹配又会怎样?这条 SQL 最终会是这样: 这个查询也会失败。这个问题不能简单的用条件句式来解决,如果你也曾经被迫这样写过,那么你很可能从此以后都不想再这样去写了。 MyBatis 有一个简单的
阅读全文
Mybatis choose (when, otherwise)标签
摘要:choose标签是按顺序判断其内部when标签中的test条件出否成立,如果有一个成立,则 choose 结束。当 choose 中所有 when 的条件都不满则时,则执行 otherwise 中的sql。类似于Java 的 switch 语句,choose 为 switch,when 为 case
阅读全文
Mybatis <if>标签
摘要:格式:<if test=""> sql语句 </if> 注意:Mybatis动态SQL单一基础类型参数用if标签时,test中应该用 _parameter 如果是类变量
阅读全文
Mybatis <Sql>标签
摘要:重复的SQL预计永远不可避免,<sql>标签就是用来解决这个问题的 <sql>:定义重复代码 .id:sql代码块的名称 <include>:引用sql代码 refid:需要应用sql代码块的id
阅读全文
Mybatis配置详解
摘要:引用了一个外部db.properties文件,用于配置数据库连接信息,db.properties文件的内容 事务管理器(transactionManager) 在 MyBatis 中有两种类型的事务管理器(也就是 type=”[JDBC|MANAGED]”): 数据源(dataSource) dat
阅读全文
Mybatis3.x与Spring4.x整合
摘要:一、搭建开发环境 1.1、使用Maven创建Web项目 执行如下命令: mvn archetype:create -DgroupId=me.gacl -DartifactId=spring4-mybatis3 -DarchetypeArtifactId=maven-archetype-webapp
阅读全文
Mybatis缓存
摘要:一、MyBatis缓存介绍 正如大多数持久层框架一样,MyBatis 同样提供了一级缓存和二级缓存的支持 一级缓存: 基于PerpetualCache 的 HashMap本地缓存,其存储作用域为 Session,当 Session flush 或 close 之后,该Session中的所有 Cach
阅读全文
Mybatis调用存储过程
摘要:一、提出需求 查询得到男性或女性的数量, 如果传入的是0就女性否则是男性 二、准备数据库表和存储过程 1 create table p_user( 2 id int primary key auto_increment, 3 name varchar(10), 4 sex char(2) 5 );
阅读全文
Mybatis实现关联表查询
摘要:一、一对一关联 1.1、提出需求 根据班级id查询班级信息(带老师的信息) 1.2、创建表和数据 创建一张教师表和班级表,这里我们假设一个老师只负责教一个班,那么老师和班级之间的关系就是一种一对一的关系。 1 CREATE TABLE teacher( 2 t_id INT PRIMARY KEY
阅读全文
Mybatis解决字段名与实体类属性名不相同的冲突
摘要:在平时的开发中,我们表中的字段名和表对应实体类的属性名称不一定都是完全相同的,下面来演示一下这种情况下的如何解决字段名与实体类属性名不相同的冲突。 一、准备演示需要使用的表和数据 CREATE TABLE orders( order_id INT PRIMARY KEY AUTO_INCREMENT
阅读全文
优化MyBatis配置文件中的配置
摘要:一、连接数据库的配置单独放在一个properties文件中 之前,我们是直接将数据库的连接配置信息写在了MyBatis的conf.xml文件中,如下: 1 <?xml version="1.0" encoding="UTF-8"?> 2 <!DOCTYPE configuration PUBLIC
阅读全文
使用MyBatis对表执行CRUD操作
摘要:一、使用MyBatis对表执行CRUD操作——基于XML的实现 1、定义sql映射xml文件 userMapper.xml文件的内容如下: 单元测试类代码如下: 二、使用MyBatis对表执行CRUD操作——基于注解的实现 1、定义sql映射的接口 UserMapperI接口的代码如下: 需要说明的
阅读全文
MyBatis快速入门
摘要:一、Mybatis介绍 MyBatis是一个支持普通SQL查询,存储过程和高级映射的优秀持久层框架。MyBatis消除了几乎所有的JDBC代码和参数的手工设置以及对结果集的检索封装。MyBatis可以使用简单的XML或注解用于配置和原始映射,将接口和Java的POJO(Plain Old Java
阅读全文