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

怎么把网站改为正在建设中站长之家站长工具

怎么把网站改为正在建设中,站长之家站长工具,做淘宝客网站备案要怎么写,专做民宿预定的网站标签 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.wooajung.com/news/225.html

相关文章:

  • 网络推广网站建设方案百度代运营
  • 做冷冻食品的网站百度移动排名优化软件
  • 真做的网站吗免费的关键词优化工具
  • 重庆建设网站盘古越日本shopify独立站
  • 众包网站开发seo整站优化推广
  • 广州北京网站建设公司网络推广的方法有
  • 微信小程序论坛seo关键词排行优化教程
  • 网站做有偿广告需要什么有序百度指数查询排行榜
  • 商城的网站统计如何做免费引流微信推广
  • 河北省建设网站锁安装什么驱动护肤品软文推广
  • 舟山网站建设制作搜索引擎google
  • wordpress企业网站开发保健品的营销及推广方案
  • 推荐专业做网站公司线上商城推广软文
  • 酒店做爰视频网站seo需要掌握什么技能
  • 骨干校 建设网站pc端网页设计公司
  • 如何做网站线上监控国际形势最新消息
  • 苏州做网站的怎么注册网站
  • 佛山网站建设 奇锐科技seo优化的主要任务包括
  • 做网站镜像教育培训机构加盟十大排名
  • 互联网网站开发合同范本seo网站推广方法
  • 溧水114网站开发网站建设与管理主要学什么
  • 访问美国网站慢 dns主流搜索引擎有哪些
  • word链接点进去是网站怎么做seo的搜索排名影响因素有
  • 做网站用angular营销方法
  • 如何做搜索网站测试b2b网站排名
  • 网站开发需要多长时间成都关键词自然排名
  • 怎么做农产品垂直网站国外网站seo免费
  • 怎样下载别人网站自己做的视频网站提交入口百度
  • 网站做排名教程百度搜索网站排名
  • 石家庄网站设计建设关键词的选取原则