问题描述
- java查询数据库数据转为XML文件实体属性多时的问题
-
现在是查出数据库数据是list集合,通过遍历list获取Custinfo,如果实体中有很多属性那么就要写很多次getxxx()感觉这样繁琐很浪费时间,有什么方法不通过getXxx()可以把Custinfo属性中对应的数据库的数据循环加到xml文件中,目的是想减少实体中有很多属性时写getXxx(),这个想法是不是行不通?
解决方案
为什么要转为xml文件,,别人都是转为json,,
解决方案二:
你想想框架是怎么根据你的Bean对象自动把数据库的数据匹配后赋值进去的。
看看java映射相关的东西,通过映射是可以做到的。
我自己之前为了不重载对象的toString方法实现类似的toString效果,写了个小工具。
我没看过框架的源码具体是怎么实现的,所有我写的映射是不太好的。
但是至少满足了我目前的需求
public static <E> void showObject(E obj){
System.out.println("start show Object");
if(obj == null){
System.out.println("obj == null");
}else{
Class<? extends Object> c = obj.getClass();
Field[] fields = c.getDeclaredFields();
String cName = c.getName();
System.out.print(cName.substring(cName.lastIndexOf(".")+1)+"[");
for(Field field : fields){
field.setAccessible(true);
String f = field.toString().substring(field.toString().lastIndexOf(".")+1);
try {
System.out.print(f+"="+field.get(obj)+", ");
} catch (IllegalArgumentException e) {
e.printStackTrace();
} catch (IllegalAccessException e) {
e.printStackTrace();
}
}
System.out.println("]");
}
System.out.println("end show Object");
}
时间: 2024-11-01 07:32:37