public void autowire(Object o, Map<String, String> map) throws Exception {
// 获得map 所有key
Set<String> keys = map.keySet();
// 获得Object中所有属性
// 获得Class对象
Class c = o.getClass();
// 获得所有属性
Field[] fields = c.getDeclaredFields();
for (Field field : fields) {
// 获得属性名称
String fieldName = field.getName();
// 判断属性名称是否存在于map的key
if (map.containsKey(fieldName)) {
// 完成属性封装
String value = map.get(fieldName);
// 修改私有属性可见性
field.setAccessible(true);
field.set(o, value);
自动装配的底层实现
猜你喜欢
转载自mmk12333.iteye.com/blog/1745081
今日推荐
周排行