近期由于学校安排实训,学习ssm框架,无奈只能从头学。在遇到mybatis查询时出现了一些问题。在使用mybatis模糊查询的时候无法查询数据,list本应返回多条数据,结果却是空集。
<select id="findUserByName" parameterType="java.lang.String" resultType="pojo.User">
SELECT * FROM USER WHERE username LIKE '%${value}%'
</select>
sql语句没错,但是有SQL注入风险,改为
<select id="findUserByName" parameterType="java.lang.String" resultType="pojo.User">
SELECT * FROM USER WHERE username LIKE CONCAT(CONCAT('%',#{username}),'%')
</select>
但是在执行的时候发现list为空
此时看一下你的sqlMap.xml配置文件
你的数据库url上没有配置字符编码集,导致SQL语句在mybatis无法执行,改正后
<property name="url" value="jdbc:mysql://localhost:3306/p_information?characterEncoding=utf-8" />
此时再运行
问题解决!