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

枝江市住房和城乡建设局网站二级域名免费发放

枝江市住房和城乡建设局网站,二级域名免费发放,苏州长尾词seo排名优化,app优化排名动态 SQL 1. if 标签2. trim 标签3. where 标签4. set 标签5. foreach 标签 1. if 标签 if 标签有很多应用场景, 例如: 在用户进行注册是有些是必填项有些是选填项, 这就会导致前端传入的参数不固定如果还是将参数写死就很难处理, 这时就可以使用 if 标签进行判断 <insert …

动态 SQL

  • 1. if 标签
  • 2. trim 标签
  • 3. where 标签
  • 4. set 标签
  • 5. foreach 标签

1. if 标签

if 标签有很多应用场景, 例如: 在用户进行注册是有些是必填项有些是选填项, 这就会导致前端传入的参数不固定如果还是将参数写死就很难处理, 这时就可以使用 if 标签进行判断

    <insert id="dynamicAdd">insert into userinfo (username,password<if test="photo != null">,photo</if>)values (#{username},#{password}<if test="photo != null">,#{photo}</if>)</insert>

当传入的参数为 null 时就不会进入 if 标签内, photo 就会为默认值而不是 null.

2. trim 标签

之前的插⼊⽤户功能,只是有⼀个 photo 字段可能是选填项,如果所有字段都是⾮必填项,就考虑使⽤< trim >标签结合< if >标签,对多个字段都采取动态⽣成的⽅式.
< trim >标签中有如下属性:

  • prefix:表示整个语句块,以prefix的值作为前缀
  • suffix:表示整个语句块,以suffix的值作为后缀
  • prefixOverrides:表示整个语句块要去除掉的前缀
  • suffixOverrides:表示整个语句块要去除掉的后缀
<insert id="dynamicAdd2">insert into userinfo<trim prefix="(" suffix=")" suffixOverrides=","><if test="username != null">username,</if><if test="password != null">password,</if><if test="photo != null">photo,</if></trim>values<trim prefix="(" suffix=")" suffixOverrides=","><if test="username != null">username = #{username},</if><if test="password != null">password = #{password},</if><if test="photo != null">photo = #{photo},</if></trim></insert>

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

  • 基于 prefix 配置,开始部分加上 (
  • 基于 suffix 配置,结束部分加上 )
  • 多个 组织的语句都以 , 结尾,在最后拼接好的字符串还会以 , 结尾,会基于 suffixOverrides 配置去掉最后⼀个 ,

3. where 标签

传⼊的⽤户对象,根据属性做 where 条件查询,⽤户对象中属性不为 null 的,都为查询条件.如:user.username 为 “a”,则查询条件为 where username=“a”;

 <select id="selectByProm" resultType = "com.example.demo.entity.Userinfo">select * from userinfo<where><if test="username != null">username = #{username}</if><if test="password != null">and password = #{password}</if><if test="photo != null">and photo = #{photo}</if></where></select>

当第一个条件不成立时 where 标签会自动去掉后续成立条件开头的 and
< where >标签也可以使⽤ < trim prefix=“where” prefixOverrides=“and”> 替换.

4. set 标签

根据传⼊的⽤户对象属性来更新⽤户数据,可以使⽤< set >标签来指定动态内容.

<update id="dynamicUpdate">update userinfo<set><if test="username != null">username = #{username},</if><if test="password != null">password = #{password},</if><if test="photo != null">photo = #{photo},</if></set>where id = #{id}</update>

set 标签会自动去掉最后一个 ,
< set >标签也可以使⽤ < trim prefix=“set” suffixOverrides=“,”>代替

5. foreach 标签

对集合进⾏遍历时可以使⽤该标签. < foreach >标签有如下属性:

  • collection:绑定⽅法参数中的集合,如 List,Set,Map或数组对象
  • item:遍历时的每⼀个对象
  • open:语句块开头的字符串
  • close:语句块结束的字符串
  • separator:每次遍历之间间隔的字符串

示例:根据多个用户 id 来删除⽂章数据

<delete id="deleteByIds">delete from  userinfowhere id in<foreach collection="ids" item="id" open="(" close=")" separator=",">#{id}</foreach></delete>
http://www.yayakq.cn/news/929750/

相关文章:

  • 顺义免费网站建设几个好用的在线网站
  • 微信长图的免费模板网站个人备案网站放什么手续
  • 福建省百川建设发展有限公司网站网站建设费用报价
  • 建站网址大全国外常用的seo站长工具
  • 电子商务网站规划与设计要点营销网站
  • 成都彩蝶花卉网站建设案例官方网站查询叉车证
  • wordpress手机分享插件下载海口网站建设优化公司
  • 百度竞价网站谁做建站行业新闻
  • 做汽车新闻哪个网站好苏州网站建设软件
  • 六安网站个人的网站怎么备案
  • wordpress适合大型网站吗div布局在线音乐网站设计
  • 安康做网站哪家好进销存十大软件
  • 柳江区城乡住房建设局网站建设银行住房租赁品牌
  • html家乡网站设计模板seo优化网站建设
  • 网站建设推广服务网络推广与推广
  • 首页%3e新闻%3e正文 网站怎么做wordpress ie8 html5
  • 旅游网站管理系统php店铺推广软文范例
  • 手机网站建设找哪家好福田蒙派克10座
  • 个人网站如何做即时支付开发网站如何选需要注意什么问题
  • 做网站设计用什么软件wordpress模板中添加短代码
  • 马云做的国外的网站叫什么名字深圳建设工程中标公示
  • 申请的网站怎么建设低价格网站建设
  • 弹幕网站用什么做如何成立一个房产网站
  • 有些网站下方只有版权没有ICP跨境电商运营主要做什么
  • 网站服务器 内容更新装修平台哪个口碑最好
  • wordpress网站示例制作链接的app的软件有哪些
  • 重庆做网站公司哪家比较好广西住房和城乡建设厅网站
  • 网站开发项目简介湖南长沙景点
  • WordPress怎么修改网站登陆地址广州 网站开发 公司
  • 网站开发报价方案西部数码网站管理助手 ftp密码