我数据库返回的是`c_area_name`,java的vo字段是`cAreaName`,结果浏览器请求返回的是`careaName`我该怎么解决才能让浏览器请求的返回cAreaName
时间: 2023-12-06 07:45:24 浏览: 83
可以使用Java的反射机制来实现将`c_area_name`转换为`cAreaName`。具体实现可以参考以下代码:
```
import java.lang.reflect.Field;
import java.util.Arrays;
public class Main {
public static void main(String[] args) {
String columnName = "c_area_name";
String fieldName = toCamelCase(columnName);
System.out.println(fieldName); // 输出 cAreaName
// 使用反射将 c_area_name 转换为 cAreaName
try {
Class<?> clazz = Vo.class;
Field field = clazz.getDeclaredField(fieldName);
System.out.println(field.getName()); // 输出 cAreaName
} catch (NoSuchFieldException e) {
e.printStackTrace();
}
}
public static String toCamelCase(String columnName) {
StringBuilder sb = new StringBuilder();
Arrays.stream(columnName.split("_"))
.filter(s -> s.length() > 0)
.forEach(s -> sb.append(s.substring(0, 1).toUpperCase())
.append(s.substring(1).toLowerCase()));
return sb.toString();
}
}
class Vo {
private String cAreaName;
}
```
使用反射可以获取字段名为`cAreaName`的Field对象,然后就可以对这个字段进行操作了。
阅读全文