query过程都可以进行数据类型自动转换,而且不仅仅按标准命名,还可以支持下划线分隔后拼接成驼峰式字符
完全轻量级.
BeanPropertyRowMapper/ParameterizedBeanPropertyRowMapper ,如果PO和数据库模型的字段完全对应(字段名字一样或者驼峰式与下划线式对应),如果使用JdbcTemplate则可以使用这个RowMapper作为PO和数据库的映射
Spring 2.5 提供了一个便利的RowMapper实现-----BeanPropertyRowMapper
它可自动将一行数据映射到指定类的实例中 它首先将这个类实例化,然后通过名称匹配的方式,映射到属性中去。
例如:属性名称(vehicleNo)匹配到同名列或带下划线的同名列(VEHICLE_NO)。
如果某个属性不匹配则返回属性值为Null;
//用BeanPropertyRowMapper自动匹配
new BeanPropertyRowMapper(User.class)
SpringJDBC BeanPropertyRowMapper 查询的时候 一般的数据库字段都可以正常映射到 bean!
字段 bean属性
USER_NAME --> userName
USER_ID --> userId
但是碰到一些特殊的(暂不考虑命名是否合理)这就映射不上了!
比如:
ORDER_NUM2 --> OrderNum2 (should be orderNum2)
ORDER_NUM_3

BeanPropertyRowMapper是Spring提供的一个用于自动将数据库查询结果映射到Java Bean的工具。它依赖于属性名称与数据库列名的匹配,支持驼峰式和下划线分隔的转换。然而,对于不遵循规则的特殊字段,如ORDER_NUM2和ORDER_NUM_3,映射会失败并返回null。在源码中,initialize方法和underscoreName方法揭示了映射机制,强调了字段名必须能够转换为符合Java Bean规范的成员变量名称。
4908

被折叠的 条评论
为什么被折叠?



