MySQL Date 类型字段查询无结果
异常背景
- Dubbo 接口入口为DTO 类,DAO层接口入参为Map,调用 BeanUtils接口将 DTO 转为 Map
- 单元测试时预先在Navicat中查询有返回值,但程序运行过程中却无返回值
异常分析
- Debbug 模式打印运行时的SQL语句
SELECT
*
FROM
db_rule
WHERE
1 = 1
AND gmt_create <= "Mon Jan 21 10:36:07 CST 2019"
ORDER BY
id DESC
LIMIT 0,
15
- 时间入参变为了CST格式字符串而非Date(java.sql.Date)
异常原因
BeanUtilsBean beanUtilsBean = new BeanUtilsBean(new ExtConvertUtilsBean());
DateConverter converter = new DateConverter();