Bean属性行映射器不会将字段与变量匹配

时间:2014-02-15 07:55:28

标签: spring javabeans

我正在使用bean属性ro wmapper来匹配我的数据库列名和变量来执行select * from table to data class。但是如果列名是这样的,其后面的数字是下划线:

WEEK_7DAYS,我的POJO中的属性名称为week7days。但这不匹配,没有值设置为周和天。我也试过了周7天。那也行不通。如何匹配它。请帮忙。

谢谢, Sreenivas

3 个答案:

答案 0 :(得分:2)

具体来说,这个场景处理数字前面的下划线..

失败条件: 示例:WEEK_7DAYS - > getWeek7Days()

奇怪的是,Spring尝试在camelCased方法签名的下划线中添加以获得结果集中的键。

在你的情况下,Spring会猜测getWeek7Days()会转换为类似WEEK7_DAYS的东西,并且在任何情况下都不会尝试在数字前放置下划线。

如果您希望正确处理您的方法,则必须保留由数字处理的任何下划线。

您的成功方法名称为getWeek_7days()

答案 1 :(得分:1)

在查询中使用别名:

select t.id, t.WEEK_7DAYS as week7days from mytable t

答案 2 :(得分:0)

我建议您将表字段名称更改为WEEK_7_DAYS,或将POJO中的属性名称更改为week7days。小心小写和大写。