天天看点

java 反射get set 值

/**
     *动态列属性的继承  更新子节点属性
     * @param businessLevel2ColumnMap   业务级别和列的map映射
     * @param businessLevel 业务级别
     * @return  子节点
     */
    private ProductNode doExtendDynamic(ProductNode parent, ProductNode child, Map<String, List<String>> businessLevel2ColumnMap, String businessLevel) {
        for(String column : businessLevel2ColumnMap.get(businessLevel)){
            String objName = "com.gantang.prd.mstdata.extension.model.ProductNodeExt";
            try {
                Class clazz= Class.forName(objName);
                Field field=clazz.getDeclaredField(column);
                field.setAccessible(true);
                field.set(child.getProductNodeExt(), field.get(parent.getProductNodeExt()));
                field.setAccessible(false);
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
        return child;
    }