通过电子邮件搜索时找不到Spring NamedParameterJdbcTemplate记录

时间:2018-11-07 20:38:36

标签: spring spring-jdbc

我使用的是Spring 5.0.8.RELEASE版本,并且尝试使用NamedParameterJdbcTemplate在具有电子邮件地址的数据库中进行搜索。如果我搜索整个地址都没有结果

getJdbcTemplate().queryForList("SELECT p.* FROM users p WHERE p.email = :email", new MapSqlParameterSource(){{addValue("email", "a.alexandrakis@company.com")}})

如果我将代码更改为此,我将得到预期的结果

getJdbcTemplate().queryForList("SELECT p.* FROM users p WHERE p.email like :email", new MapSqlParameterSource(){{addValue("email", "a.alexandrakis@%")}})

如果将代码更改为此,我将再无结果

getJdbcTemplate().queryForList("SELECT p.* FROM users p WHERE p.email like :email", new MapSqlParameterSource(){{addValue("email", "a.alexandrakis@c%")}})

如果@字符位于字符串上,似乎正在发生某些情况。我是否必须以某种方式逃脱?

谢谢。

1 个答案:

答案 0 :(得分:0)

毕竟没有问题...我一直在寻找具有类似数据的另一个数据库。