62,636
社区成员




List<DeptVO> voList=new ArrayList<DeptVO>();
List<DetPO> poList=dao.list();
DepartmentVO vo=null;
for(DeptPO po:poList){
vo=new DepartmentVO();
BeanUtils.copyProperties(vo, po);
voList.add(vo);
}
public static List copyList (List <? extends Object> poList , Class voClass){
List voList=new ArrayList();
Object voObj =null;
for(Object poObj:poList){
try {
voObj = voClass.newInstance();
} catch (InstantiationException | IllegalAccessException e) {
e.printStackTrace();
}
BeanUtils.copyProperties(poObj, voObj);
voList.add(voObj);
}
System.out.println("1111"+voList.size());
return voList;
}
调用
List<DeptVO> voList=Util.copyList(poList, DeptVO.class);
try{
List<DeptVO> voList=new ArrayList<DeptVO>();
Object po=invocation.proceed(); //调用目标方法
BeanUtils.copyProperties(vo, po);
}
return voList;//将你转换的后的对象返回出去
//通过MethodInterfceptor实现环绕增强,关键代码如下
public Object invoke(MethodInvocation invocation) throws Throwable{
try{
List<DeptVO> voList=new ArrayList<DeptVO>();
Object po=invocation.proceed(); //调用目标方法
BeanUtils.copyProperties(vo, po);
}
}
大概思路就这样,楼主可以测试下/**
* 取得所有对应的bo列表
*
*/
public List getAllPO() {
List boList = new ArrayList();
boList.add(getBO()); // 这里getBO就是你先前set的对象。
return boList;
}