J2SE-字符串

该博客围绕J2SE中的字符串展开,虽具体内容需点击链接查看,但可推测会涉及J2SE环境下字符串的特性、操作等信息技术相关内容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

当deveui什么都不输,传到后台的是空串"",因为js中是这样写的
var deveui = $("#dev_lc_deveui").val(); //是空串""
注意:var deveui; //是undefined,传到后台是null

过滤条件
<if test='p.deveui != null'>
 AND t.DEVEUI = #{p.deveui, jdbcType=VARCHAR} 
</if>
由于没有加空串判断,所以出现了AND t.DEVEUI = ?结果查不到值

SELECT
  t.DEVEUI    AS deveui,
  t.DEVTYPE   AS devType,
  t.ORDNO     AS ordNo,
  t.CLAANO    AS claaNo,
  t.DEVSTATUS AS devStatus,
  t.OPTIME    AS opTime,
  t.REMARK    AS remark,
  t.PROJECTID AS projectid,
  t.ADDRESS   AS address,
  t.GPSLAT    AS gpslat,
  t.GPSLNG    AS gpslng,
  t.GPSALT    AS gpsalt
FROM osmdb.t_osm_dev t
WHERE 1 = 1
    AND t.DEVEUI = ?
ORDER BY t.CLAANO, t.ORDNO, t.DEVEUI
LIMIT ? OFFSET ?

加了空串判断,则deveui不会出现
<if test='p.deveui != null and p.deveui != ""'>
SELECT
  t.DEVEUI    AS deveui,
  t.DEVTYPE   AS devType,
  t.ORDNO     AS ordNo,
  t.CLAANO    AS claaNo,
  t.DEVSTATUS AS devStatus,
  t.OPTIME    AS opTime,
  t.REMARK    AS remark,
  t.PROJECTID AS projectid,
  t.ADDRESS   AS address,
  t.GPSLAT    AS gpslat,
  t.GPSLNG    AS gpslng,
  t.GPSALT    AS gpsalt
FROM osmdb.t_osm_dev t
WHERE 1 = 1
ORDER BY t.CLAANO, t.ORDNO, t.DEVEUI
LIMIT ? OFFSET ?

-----------------------------------------------------------------------------
点击修改,把以前remark的值删了,什么都不输入,进行update,传到后台的是空串"",
UPDATE osmdb.t_osm_dev t
SET t.DEVTYPE = ?,
  t.ORDNO = ?,
  t.CLAANO = ?,
  t.DEVSTATUS = ?,
  t.OPTIME = ?
WHERE t.DEVEUI = ?
由于被osmDev.remark != ""过滤
<if test='osmDev.remark != null and osmDev.remark != "" '>
	t.REMARK = #{osmDev.remark, jdbcType=VARCHAR}, 
</if>
没有出现在update语句中

去掉osmDev.remark != "",则remark出现
UPDATE osmdb.t_osm_dev t
SET t.DEVTYPE = ?,
  t.ORDNO = ?,
  t.CLAANO = ?,
  t.DEVSTATUS = ?,
  t.OPTIME = ?,
  t.REMARK = ?
WHERE t.DEVEUI = ?
----------------------------------------------------------------------------------
点击修改,把以前remark的值删了,输入一大堆空格,进行update,传到后台的是空串"   ",
后台过滤条件
<if test='osmDev.remark != null and osmDev.remark != "" '>
	t.REMARK = #{osmDev.remark, jdbcType=VARCHAR}, 
</if>
结果过滤不掉,说明""和"    "不是一个东西
----------------------------------------------------------------------------------
当输入"",过滤条件
<if test='osmDev.remark != null and osmDev.remark != "" '>
	t.REMARK = #{osmDev.remark, jdbcType=VARCHAR}, 
</if>
我本以为会被过滤掉,结果没有,把""保存进去了
传到后台的参数是"""",说明这不是空串,所以没有过滤掉



https://blog.youkuaiyun.com/th_datou/article/details/39477157

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ZHOU_VIP

您的鼓励将是我创作最大的动力!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值