spring-data-jpa实体类映射LONG类型到ORACLE是NUMBER类型, 通过jdbcTemplate查出的NUMBER类型默认映射的是java的类型, 需要手动转换:
/**
* 将简单的map映射成bean对象
* @param data
* @param clazz
* @return
* @throws Exception
*/
public static <T> T changeMapToUpCaseBean(Map<String,Object> data,Class clazz){
try {
List<Field> fields = listAllFields(clazz);
T bean = (T) ();
if (fields != null && () > 0) {
for (Field field : fields) {
String name = ().toUpperCase();
Object value = (name);
// oracle的NUMBER类型,默认映射类型属性, 需要转化为LONG
if("".equals(().getName())){
value=(());
}
if (isEmpty(value)) {
continue;
}
(bean, value);
}
}
return bean;
}catch (Exception e){
throw new RuntimeException(e);
}
}
对于Oracle中Number类型的字段映射成Java中的具体类型的问题
/lz2017/p/