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

贵阳手机网站建设费用郑州seo顾问热狗网

贵阳手机网站建设费用,郑州seo顾问热狗网,什么网站做禽苗的多,dede网站根目录标签 if标签 当提交的表单中有些为非必填项&#xff0c;用户并没有上传这些属性的值&#xff0c;那么程序可以上传NUll&#xff0c;也可以用if标签判断用户有没有上传这个值 <if test"参数!null">操作 </if>其中test中填写一条语句&#xff0c;如果得…

标签

if标签

当提交的表单中有些为非必填项,用户并没有上传这些属性的值,那么程序可以上传NUll,也可以用if标签判断用户有没有上传这个值

<if test="参数!=null">操作
</if>

其中test中填写一条语句,如果得到true,就执行下面的操作,否则就不执行

例如,添加username,password和photo属性
UserMapper

int add2(UserInfo userInfo);

UserMapper.xml:
需要注意逗号的位置,如果photo未传输数值,那么形成的句子就是username,password,不会有语法问题

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

UserMapperTest:

@Test
void add2() {UserInfo userInfo = new UserInfo();userInfo.setUsername("zhangsan");userInfo.setPhoto(null);userInfo.setPassword("333");int result = userMapper.add2(userInfo);System.out.println(result);
}

可以看到,当photo并没有传值时,生成的JDBC语句中就没有photo
在这里插入图片描述

trim标签

如果所有的属性都是非必填项,那么逗号的位置就很难确定了,因此可以使用trim标签来拼接字符串

<trim prefix="前缀内容" suffix="后缀内容" prefixOverrides="去除前缀相关值" suffixOverrides="去除后缀相关值"></trim>
  • prefix会在最前面添加内容
  • suffix会在最后面添加内容
  • prefixOverrides则是如果最后一个字符是指定值,就去掉该值(例如prefixOverrides=“,”,那么如果最前面是逗号就会去除最前面的逗号)
  • suffixOverrides则是去除最后面的值
    一般来说,trim会搭配if标签来使用,例如下面这个场景:username,password,photo都是非必填项

UserMapper:

int add3(UserInfo userInfo);

UserMapper.xml
这里会自动添加(),并且如果最后是逗号,会删除这个逗号

<insert id="add3">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},</if><if test="password != null">#{password},</if><if test="photo != null">#{photo},</if></trim></insert>

UserMapperTest:

@Test
void add3() {UserInfo userInfo = new UserInfo();userInfo.setUsername("lisi");userInfo.setPhoto(null);userInfo.setPassword("444");int result = userMapper.add2(userInfo);System.out.println(result);
}

可以看到确实去除了password后面的逗号(也就是最后一个字符)
在这里插入图片描述

where标签

用来查找相关信息,会生成where的语句

  • where标签一般也是配合if来使用
  • where标签会自动帮助我们删除最前面的and关键字
  • where标签中如果没有内容,那么就不会产生where的关键字
    也就是说,下面这两种写法都是可以的,只不过where的写法更加简介
<select id="getListByParam" 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></where>
</select>
<select id="getListByParam" resultType="com.example.demo.entity.UserInfo">select * from userinfo<trim prefix="where" prefixOverrides="and"><if test="username!=null">username = #{username}</if><if test="password!=null">and password = #{password}</if></trim>
</select>

在这里插入图片描述

set标签

用来更改属性的值,会自动生成set语句

  • set标签一般配合if标签使用
  • set标签会自动去除最后一个逗号(英文)
<update id="update2">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>

也可以使用trim来完成这段代码
在这里插入图片描述

foreach标签

当我们需要大批量进行操作时,可以在代码中使用for循环,也可以直接在sql中进行批量操作,具体方法就是使用in()
语法格式:

<foreach collection="集合变量" open="前缀" close="后缀" item="集合中变量名" separator="分隔符">操作
</foreach>

例如,要删除大量指定id的用户信息:
UserMapper:

int deleteById(List<Integer> ids);

UserMapper.xml:

<delete id="deleteById">delete from userinfo where id in<foreach collection="ids" open="(" close=")" item="id" separator=",">#{id}</foreach>
</delete>

UserMapperTest:

@Test
void deleteById() {List<Integer> ids = new ArrayList<>();ids.add(1);ids.add(2);ids.add(3);int result = userMapper.deleteById(ids);System.out.println(result);
}

在这里插入图片描述

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

相关文章:

  • 3d模型免费素材网站做外汇看哪些网站数据
  • 做网站 套用模板之后用什么改dm建站系统
  • 万户网站制作电影网站建设模板
  • 信誉比较好的网上做任务的网站编辑网站绑定
  • 装饰网站建设多少钱商城定制开发
  • 省交通建设质安监督局网站网站建设公司官方网站
  • 易签到网站开发设计学做招投标的网站有哪些
  • 简述网站开发的几个步骤南宁网络推广外包
  • 免费网站安全软件大全免费下载安装上海建设工程 U盘登录哪个网站
  • 河南住房和城乡建设部网站注册个人公司流程及费用
  • 做网站优化的教程模拟电脑游戏的app
  • 省博物馆网站建设网站建设公司财务预算
  • 网站主体负责人必须是法人吗wordpress 发布文章主动推送百度
  • 网站平台建设的实训报告南宁企业官网seo
  • 建立一个网站大约要多少钱厂房网络推广平台
  • 成都网站建设福州赣州网站建设资讯
  • 如何获取网站根目录镜像网站如何做排名
  • 泰兴市网站建设网站推广的目的和意义
  • 网站建设系十堰吉安营销型网站优化营销
  • 黑龙江住房城乡建设厅网站广州一建筑外墙脚手架坍塌
  • 淘口令微信网站怎么做系统网站建设ppt模板
  • 建站网站wordpress自动上传外链图片
  • 网络公司专业做网站网站开发各小组互评表
  • 加快公司网站建设贵州 网站建设
  • 网站需要写哪些内容吗h5制作方法和步骤
  • 包头网站优化北京网站建设第一
  • 品牌企业网站建设公司腾讯企业网页设计
  • 佛山制作网站开发公司关键词优化到首页怎么做到的
  • 购物网站设计需要哪些模块网站怎么做地图导航
  • 网站结构图怎么做江西高端网站定制