DAO层封装 3 like 字符串的小问题

在使用getJdbcTemplate 拼接SQL语句查询的时候需要注意使用如下方式:

if (!StringUtils.isEmpty(datagridDemoParam.getName())) {
	sqlSb.append("AND NAME LIKE ? ");
	sqlArgs.add("%" + datagridDemoParam.getName() + "%");
}


1、其中StringUtils是import org.springframework.util.StringUtils; 就自带了isEmpty方法,包括了判断为空和空字符串,可直接使用,不需要自己再写util类

这里也可以注意一点,spring已经为我们封装好了很多好用的方法,其实不需要自己再写一大堆utils,在需要使用这些工具的时候,先查一下spring或者其他框架是否已经提供这种方法是个好习惯,正所谓站在巨人的肩膀上


2、LIKE字符串 需要写成"AND NAME LIKE ? " 然后参数"%" + datagridDemoParam.getName() + "%"。
而不能写成"AND NAME LIKE %?% " 否则会报
java.sql.SQLException: 无效的列索引


你可能感兴趣的:(DAO)