当前位置: 首页 > news >正文

网站建好了还需要什么维护莆田建设网站建站

网站建好了还需要什么维护,莆田建设网站建站,宁波seo企业网络推广,营销型企业网站建设价格动态SQL是MyBatis的强大特性之一&#xff0c;能够完成不同条件下不同的sql拼接。参考官方文档&#xff1a;https://mybatis.org/mybatis-3/zh/dynamic-sql.html<if>标签看这个场景&#xff0c;有必填字段 和 非必填字段 &#xff0c;当字段不确定是否传入的时候&#xff…

动态SQL是MyBatis的强大特性之一,能够完成不同条件下不同的sql拼接。

参考官方文档:https://mybatis.org/mybatis-3/zh/dynamic-sql.html

<if>标签

看这个场景,有必填字段 和 非必填字段 ,当字段不确定是否传入的时候,程序员如何实现呢?

  • insert into user(name,age,brithday) values(?,?,?);

  • insert into user(name,age) values (?,?);

如上面的两个sql语句,当我们选择不同内容进行插入的时候,要使用不同的sql语句,而总不能每一种情况都写一遍吧?这时候我们就可以通过<if>标签 进行实现

if标签语法
<if test="birthday != null">//if后是birthday
</if>

这些标签 是 MyBatis提供给我们的,在xml文件实现,如下面代码:

<trim>标签

如果上述的所有字段都是非必填项,那么都不填的情况下,只使用上述的<if>标签,那么就会导致报错,这时候就需要<trim>标签来配合使用了。<trim>标签会根据你传递的参数去决定是否要生成。

<trim>标签的属性:

• prefix(前缀):最前面的一个字符,插入时通常是 (

• suffix(后缀):最后面的一个字符,插入时通常是

• suffixOverrides(前缀覆盖):表示整个语句块要去除掉的前缀

prefixOverrides(后缀覆盖):表示整个语句块要去除掉的后缀,插入时通常是 ' , ' 如下面图片所示,这样的话他会自动去掉 photo后面的 , 如果photo为null则会自动去掉 password后面的

在以上 sql 动态解析时,会将第一个 <trim> 部分做如下处理:

  • 基于 prefix 配置,开始部分加上 (

  • 基于 suffix 配置,结束部分加上 )

  • 多个 <if>组织的语句都以 , 结尾,在最后拼接好的字符串还会以 , 结尾,会基于 suffixO

  • Overrides 配置去掉最后一个 ,

  • 注意 <if test=“username != null”> 中的 createTime 是传入对象的属性

<where>标签

  • 传入的用户对象,根据属性做 where 条件查询,用户对象中属性不为 null 的,都为查询条件。

  • 如果条件里没有传递任何关于判断的内容,那么会自动不添加where限制,是一个动态的生成。

  • 会根据你传递的参数,来决定是否要生成where

特征:

  • 通常配合 <if> 一块使用

  • <where>标签只能去除最前面的 and 关键字。

  • <where> 标签 如果里面没有内容,那么就不会生成 where内容

  • <where> 标签 本身可以看做等价于 <trim prefix="where" prefixOverrides="and">

<set>标签

特征:

  • 通常配合 <if> 一块使用

  • <set>标签只能去除最后一个 ' , '

  • <set> 标签 如果里面没有内容,会产生报错

  • <set> 标签 本身可以看做等价于 <trim prefix="set" suffixOverrides=",">

<foreach>标签

对集合进行遍历的时候使用这个标签
  • collection:绑定方法参数中的集合,如 List,Set,Map或数组对象

  • item:遍历时的每一个对象

  • open:语句块开头的字符串

  • close:语句块结束的字符串

  • separator:每次遍历之间间隔的字符串

使用情景:

1.使用的环境案例
delete from user where id in (1,2,3,4,5);
--当我们需要批量删除数据应该怎么实现?就可以使用<foreach>标签2.使用<foreach>进行实现
--假设有一个List  List<Integer> list = new ArrayList<>(); 里面有1,2,3,4,5 
--下面就是使用<foreach>构造的代码
--  arr就是数组  item就代表数组里的内容 和foreach循环类似
--  open就相当于trim里的prefix   close就相当于后缀suffix   separator分割符
<delete id="deleteByIds">delete from articlewhere id in<foreach collection="arr" item="item" open="(" close=")" separator=",">#{item}</foreach>
</delete>

http://www.yayakq.cn/news/313217/

相关文章:

  • 网站网页设计尺寸wordpress版本下载
  • wordpress下载5.0.3网站做优化需要多少钱
  • 网站优化塔山双喜电影视频网站怎么做
  • 网站建设公司石家庄爱美眉网站源码
  • 泗洪建设局网站百度员工收入工资表
  • 常见的网站推广途径云南建投第十建设有限公司网站
  • 用vs2012做网站宁津做网站
  • 绵阳网站建设 经开区成都住建局官网怎么查询楼盘剩余房
  • 网站首页html代码的标签阳西县网络问政平台公众号
  • 简述jsp网站开发的环境配置过程环球贸易网
  • 潍坊网站制作怎么做公司做搜索引擎优化
  • 招聘网站开发实训报告微信小程序开发工具怎么用
  • 做网站推广需要做什么网站服务费做管理费用
  • 免费网站申请域名com绿植网站怎么做
  • 博物馆网站 建设方案柠檬网络科技网站建设
  • 网站建设的关键细节个人租用境外服务器
  • 网站流量下降原因哪有宝安网站推广
  • h5建设网站网站seo关键词排名
  • 重庆市建设网站首页做网站 pc端与手机端兼容
  • 电商的推广方式企业网站优化服务主要围绕哪些要素
  • 网站规划与建设 试卷南京建设网站排名
  • 石家庄哪里有网站推广百度seo公司
  • 宣城做网站公司百度指数大数据分享平台
  • 域名网站教程网站制作语言
  • 网站服务器和空间的区别wordpress怎么导入xml
  • 公司 备案 网站名称长沙网建站
  • 为什么织梦做的网站容易被攻击渭南建设网站
  • 查内部券的网站是怎么做的做网站要用到的技术
  • 搜索的网站后大拇指分享数量不见了建网站和做微信哪个好
  • 怎么查看网站有没有做ssl全国企业信息网上公示系统