myBatis数据库常用标签
<sql id=””></sql>:封装sql语句,被其他sql调用
<include refid=””></include>:调用封装sql
<if test=” title_name != null”>AND title_name =#{titleName}</if>:判断标签,
<choose></choose>:相当于java中的switch语句。当when条件满足时,输出when条件中的语句,可以有多个when语句。当when条件不满足时,输出otherwise中的语句,myBatis会自动忽略首个and或or,where1=1当条件都等于null是查全表
select * from from_name where 1=1
<choose>
<when test=” title_name != null”>
AND title_name =#{titleName}
</when>
<otherwise>
AND title_name =#{titleName}
</otherwise>
</choose>
<set></set>:主要用于更新操作,作用是在包含的语句前输出第一个set,如果包含的语句是以逗号结尾的,会忽略该逗号,如果set的内容为空,会报错,使用set可以动态的更新sql
update from_name
<set>
<if test=”title != null”> title = #{title},</if>
<if test = “content != null”> content = #{content},</if>
<if test= “name != null AND name != ‘’ ”>name=#{name}</if>
</set>
where id=#{id}
<trim></trim>:在自己包含的内容前加上前缀或后缀,与之对应的属性是prefix和suffix,可以把包含内容的首部某些内容覆盖既忽略,也可以把尾部某些内容覆盖,与之对应的属性是prefixOverrides和suffixOverrides,通常使用trim代替where
select * from from_name
<trim prefix=”where”prefixOverrides=”and | or”>
<if test = “title != null”>AND title=#{title}</if>>
<if test= “name != null”>AND name=#{name}</if>
</trim>
<foreach></foreach>:循环,它可以在sql中进行迭代一个集合,主要属性:
item:表示集合每次迭代时属性的别名,在list和数组中是对象,在map中是value。该参数是必须的
collection:集合用array代替为主键
list<?>对象默认用list代替为主键
map对象用map代替为主键
当参数为某个对象的字段时:
如果User有属性List ids。入参是User对象,那么这个collection = "ids"
如果User有属性Ids
ids;其中Ids是个对象,Ids有个属性List id;入参是User对象,那么collection
= "ids.id"。该参数是必须的
open:代码开始符,一般和close一起合用open=”(” close=”)”可选
close:代码关闭符,一般和close一起合用open=”(” close=”)”可选
separator:元素之间的分割符,例如在in()时,separato=”,”会自动在元素中间使用“,”隔开,避免手动输入sql错误。该参数可选
index:在list和数组中是元素的序号,在map中是key。该参数可选
删除例子
delete from
from_name id in
<foreach item
=“id”collection=”array”open=”(” separator = “,” close = “)”>
#{id}
</foreach>
myBatis数据库常用标签的更多相关文章
- [刘阳Java]_MyBatis_映射文件的常用标签总结_第5讲
MyBatis中常用标签的总结,简单给出自己的总结 MyBatis映射文件中的标签使用介绍1.<select>:用于编写查询语句用的标签 id:表示当前<select>标签的唯 ...
- MyBatis - 常用标签与动态Sql
MyBatis常用标签 ● 定义sql语句:select.insert.delete.update ● 配置JAVA对象属性与查询结构及中列明对应的关系:resultMap ● 控制动态sql拼接:i ...
- [Mybatis]Mybatis 常用标签及功能整理
Mybatis中生成动态SQL的标签有四类,分别是: if choose (when, otherwise) trim (where, set) foreach 1.if 当需要动态生成where条件 ...
- 9.mybatis动态SQL标签的用法
mybatis动态SQL标签的用法 动态 SQL MyBatis 的强大特性之一便是它的动态 SQL.如果你有使用 JDBC 或其他类似框架的经验,你就能体会到根据不同条件拼接 SQL 语句有多么 ...
- Mybatis中常用的SQL
1.BaseResultMap <resultMap id="BaseResultMap" type="com.stylefeng.guns.common.pers ...
- mapper.xml中的常用标签
mybatis的mapper xml文件中的常用标签 https://blog.csdn.net/qq_41426442/article/details/79663467 SQL语句标签 1.查询语句 ...
- 9月5日网页基础知识 通用标签、属性(body属性、路径、格式控制) 通用标签(有序列表、无序列表、常用标签)(补)
网页基础知识 一.HTML语言 HTML语言翻译汉语为超文本标记语言. 二.网页的分类 1.静态页面:在静态页面中修改网页内容实际上就是修改网页原代码,不能从后台操作,数据来只能来源于原于代码.静态网 ...
- mybatis的foreach标签
今天写sql发现了一点问题,乱弄了好久算是搞定了.关于mybatis的批量插入使用foreach插入形式为: insert into role_privilege( role_id, privileg ...
- 01: html常用标签
目录: 1.1 web开发的三把利器介绍 1.2 网页头部head标签中几个常用标签 1.3 html常用标签归类 1.4 input系列标签 1.5 HTML其他标签 1.1 web开发的三把利器介 ...
随机推荐
- 【ThinkPHP框架学习 】(1) --- thinkphp 3.2.3 验证码验证使用教程分享
框架版本:ThinkPHP框架 thinkphp 3.2.3 生成验证码 下面是最简单的方式生成验证码: $Verify = new \Think\Verify(); $Verify-> ...
- Leetcode题解(十二)
33.Search in Rotated Sorted Array 题目 这道题目如果没有其他要求,直接遍历一遍就可以知道答案,但是,题目给出了是排序了数组,但是数组有可能经过了旋转得到,其解题思路仍 ...
- Problem X
Problem Description Recently, iSea went to an ancient country. For such a long time, it was the most ...
- Air Raid
Air Raid Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Subm ...
- Codeforces 378B. Parade
B. Parade time limit per test 1 second memory limit per test 256 megabytes input standard input outp ...
- linux-rmdir
linux-rmdir rmdir命令用于删除空目录,删除的目录的里面必须无任何东西,有点鸡肋的命令 从下面先建立了一个a文件夹. 命令: rmdir a,即可删除这个空目录,ls 就找不到这个文件夹 ...
- javascript 中parseInt 的用法
<!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8 ...
- KODExplorer可道云-轻松搭建属于自己/团队的私有云网盘服务
如今国内各大网盘关停的也快差不多,百度网盘限速严重.国外大牌的如 Dropbox 或 Google Drive又在长城之外,在各种VPN都被封禁的大背景下,科学上网也困难重重,麻烦到要死.那么,除了购 ...
- 获取对象属性(key)组成的数组 Object.keys( obj ).md
Object.keys() 方法会返回一个由给定对象的自身可枚举属性组成的数组,数组中属性名的排列顺序和使用 for...in 循环遍历该对象时返回的顺序一致 (两者的主要区别是 一个 for-in ...
- 在昆明网络SEO的走向站外的优化该何去何从?
昨天大概讲了SEO的站内优化,今天我们来讲讲网站站外的优化. 站外主要以第三平台为主,其中包含站外推广:常规推广.外链建设:利用第三方平台优化关键词排名: 1.博客平台,现在有好多博客平台是很不错的, ...