三狼戏獒
2019-02-23 16:50
讲师的各种convert方法不是很冗余,为什么建个util,传递泛型进行转换?
T convertTFromPojo(Classclazz, Object pojoBean)一开始我也这么想,后来发现用泛型能解决简单的转换过程,如果转换过程不是简单的BeanUtils.copyProperties 需要拼接方式不一样就行不通了,可以看一下用户和用户密码,商品和商品库存,不是简单的复制
你那都反射起来了,更浪费系统资源
我说的是代码复用,问题跟分层没关系,分层本身就是需要的。N个方法的入参和出参拥有一致的逻辑,不该合并吗?
public static <T> T convertTFromPojo(Class<T> clazz, Object pojoBean) {
if (pojoBean == null) {
return null;
}
try {
T target = clazz.newInstance();
BeanUtils.copyProperties(pojoBean, target);
return target;
} catch (Exception e) {
logger.error("convertTFromPojo is error-->", e);
}
return null;
}
这个数据分层 在复杂的大型项目中是很必要的。
使用泛型不能保证每个属性的之间转换成功,包括包装类型。讲师使用的分层开发这样写便于后期维护,也提高安全性
SpringBoot构建电商基础秒杀项目
49065 学习 · 954 问题
相似问题