Java Code Examples for org.springframework.cglib.beans.BeanMap

The following examples show how to use org.springframework.cglib.beans.BeanMap. These examples are extracted from open source projects. You can vote up the ones you like or vote down the ones you don't like, and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source Project: we-cmdb   Source File: DynamicEntityHolder.java    License: Apache License 2.0 6 votes vote down vote up
/**
 * Clone given ci data attribute to new one include default fields
 * 
 * @param entityMeta
 * @param fromCiBean
 * @return
 */
public static DynamicEntityHolder cloneDynamicEntityBean(DynamicEntityMeta entityMeta, Object fromCiBean) {
    org.apache.commons.beanutils.BeanMap fromBeanMap = new org.apache.commons.beanutils.BeanMap(fromCiBean);
    DynamicEntityHolder entityHolder = new DynamicEntityHolder(entityMeta);
    for (String attr : entityHolder.getEntityMeta().getAttrs()) {
        FieldNode fieldNode = entityHolder.getEntityMeta().getFieldNode(attr);
        if (fieldNode.isId()) {
            continue;
        }
        /*
         * if(DynamicEntityType.MultiReference.equals(fieldNode.getEntityType())){
         * continue; }
         */
        entityHolder.put(attr, fromBeanMap.get(attr));
    }
    return entityHolder;
}
 
Example 2
Source Project: Lottor   Source File: BeanMapUtils.java    License: MIT License 6 votes vote down vote up
/**
 * 将List<Map<String,Object>>转换为List<T>
 *
 * @param maps
 * @param clazz
 * @return
 * @throws InstantiationException
 * @throws IllegalAccessException
 */
public static <T> List<T>  listToBean(List<Object> maps, Class<T> clazz) throws InstantiationException, IllegalAccessException {
    List<T> list = Lists.newArrayList();
    if (maps != null && maps.size() > 0) {
        Object map;
        T bean;
        for (int i = 0, size = maps.size(); i < size; i++) {
            map = maps.get(i);
            bean = clazz.newInstance();

            BeanMap beanMap = BeanMap.create(bean);
            list.add(bean);
        }
    }
    return list;
}
 
Example 3
Source Project: super-cloudops   Source File: BasedBindSnsHandler.java    License: Apache License 2.0 6 votes vote down vote up
@SuppressWarnings({ "rawtypes", "unchecked" })
@Override
protected String doHandleOAuth2Callback(String provider, String code, OAuth2ApiBinding connect, Map<String, String> connectParams,
		HttpServletRequest request) {
	// Access token
	Oauth2AccessToken ast = connect.getAccessToken(code);
	// User openId
	Oauth2OpenId openId = connect.getUserOpenId(ast);
	// User info
	Oauth2UserProfile profile = connect.getUserInfo(ast.accessToken(), openId.openId());

	// Binding principal id
	String principal = connectParams.get(config.getParam().getPrincipalName());

	// To social connection info
	SocialConnectInfo info = new SocialConnectInfo(provider, principal, openId.openId(), openId.unionId());
	// Extra info
	info.setClientIp(WebUtils2.getHttpRemoteAddr(request));
	info.setReferer(request.getHeader("Referer"));
	info.setUserAgent(request.getHeader("User-Agent"));
	info.setUserProfile(BeanMap.create(profile)); // User info

	// Binding or UnBinding process
	postBindingProcess(info);
	return null;
}
 
Example 4
Source Project: MicroCommunity   Source File: BeanConvertUtil.java    License: Apache License 2.0 6 votes vote down vote up
/**
 * 对象A转为对象B
 * 这个也支持map转bean
 *
 * @param orgBean 原始对象
 * @param dstBean 目标对象类
 * @param <T1>    原始对象
 * @param <T2>    目标对象
 * @return 目标对象
 */
public static <T1, T2> T2 covertBean(T1 orgBean, T2 dstBean) {

    try {
        //BeanUtils.copyProperties(dstBean, orgBean);
        if (orgBean instanceof Map) {
            BeanMap beanMap = BeanMap.create(dstBean);
            //beanMap.putAll((Map)orgBean);
            objectFieldsPutMap(dstBean, beanMap, (Map) orgBean);
            return dstBean;
        }
        final BeanCopier beanCopier = BeanCopier.create(orgBean.getClass(), dstBean.getClass(), true);
        beanCopier.copy(orgBean, dstBean, new Java110Converter());
    } catch (Exception e) {
        e.printStackTrace();
        throw new RuntimeException("bean转换bean失败", e);
    }
    return dstBean;
}
 
Example 5
Source Project: MicroCommunity   Source File: BeanConvertUtil.java    License: Apache License 2.0 6 votes vote down vote up
private static void objectFieldsPutMap(Object dstBean, BeanMap beanMap, Map orgMap) {
    //Field[] fields = dstBean.getClass().getDeclaredFields();
    Field[] fields = FieldUtils.getAllFields(dstBean.getClass());
    for (Field field : fields) {
        if (!orgMap.containsKey(field.getName())) {
            continue;
        }
        Class dstClass = field.getType();
        //System.out.println("字段类型" + dstClass);

        Object value = orgMap.get(field.getName());
        //String 转date
        Object tmpValue = Java110Converter.getValue(value, dstClass);
        beanMap.put(field.getName(), tmpValue);
    }
}
 
Example 6
Source Project: we-cmdb   Source File: DynamicEntityHolder.java    License: Apache License 2.0 5 votes vote down vote up
private DynamicEntityHolder(DynamicEntityMeta entityMeta) {
    this.entityMeta = entityMeta;
    try {
        Constructor<?> entityConst = entityMeta.getEntityClazz().getConstructor();
        entityObj = entityConst.newInstance();
        entityBeanMap = BeanMap.create(entityObj);
    } catch (Exception e) {
        throw new ServiceException(String.format("Failed to create CI entity bean for CI type (%s)", entityMeta.getQulifiedName()));
    }

}
 
Example 7
Source Project: we-cmdb   Source File: BeanMapUtils.java    License: Apache License 2.0 5 votes vote down vote up
public static <T> Map<String, Object> convertBeanToMap(T bean) {
    Map<String, Object> map = Maps.newHashMap();
    if (bean != null) {
        BeanMap beanMap = BeanMap.create(bean);
        for (Object key : beanMap.keySet()) {
            if (beanMap.get(key) != null) {
                map.put(key.toString(), beanMap.get(key));
            }
        }
    }
    return map;
}
 
Example 8
Source Project: we-cmdb   Source File: domainTest.java    License: Apache License 2.0 5 votes vote down vote up
public void testDomain() throws Exception {
//		byte[] domainBuf = AdmMenuDump.generateClzz();
        List<FieldNode> fields = Arrays.asList(new FieldNode(DynamicEntityType.CI, 1, "idAdmMenu", Integer.class, "id_adm_menu", true), new FieldNode(DynamicEntityType.CI, 1, "classPath", String.class, "class_path"),
                new FieldNode(DynamicEntityType.CI, 1, "isActive", Integer.class, "is_active"), new FieldNode(DynamicEntityType.CI, 1, "name", String.class, "name"),
                new FieldNode(DynamicEntityType.CI, 1, "otherName", String.class, "other_name"), new FieldNode(DynamicEntityType.CI, 1, "parentIdAdmMenu", Integer.class, "parent_id_adm_menu"),
                new FieldNode(DynamicEntityType.CI, 1, "remark", String.class, "remark"), new FieldNode(DynamicEntityType.CI, 1, "seqNo", Integer.class, "seq_no"), new FieldNode(DynamicEntityType.CI, 1, "url", String.class, "url"));

        byte[] domainBuf = DynamicEntityGenerator.generate("test/domain/AdmMenu", "adm_menu", fields);

        Class clzz = entityCL.getClass(domainBuf);
        HibernateJpaEntityManagerFactory ciManagerFactory = new HibernateJpaEntityManagerFactory(Arrays.asList(clzz), dataSource, entityCL, datasourceProperties.getSchema());
        EntityManager ciEntityManager = ciManagerFactory.getEntityManagerFactory()
                .createEntityManager();

        Object entity = clzz.newInstance();
        BeanMap beanMap = BeanMap.create(entity);
        beanMap.put("name", "test menu");
        beanMap.put("remark", "test remark");
        beanMap.put("seqNo", 99);
        EntityTransaction transaction = ciEntityManager.getTransaction();
        transaction.begin();
        Object updatedEntity = ciEntityManager.merge(entity);
        System.out.println("id:" + BeanMap.create(updatedEntity)
                .get("idAdmMenu"));
        transaction.commit();

    }
 
Example 9
Source Project: we-cmdb   Source File: DynamicEntityGeneratorTest.java    License: Apache License 2.0 5 votes vote down vote up
@Test
@Ignore
public void operateAdmMenuThenSuccessfully() throws Exception {
    List<FieldNode> fields = Arrays.asList(new FieldNode(DynamicEntityType.CI, 1, "idAdmMenu", Integer.class, "id_adm_menu", true), new FieldNode(DynamicEntityType.CI, 1, "classPath", String.class, "class_path"),
            new FieldNode(DynamicEntityType.CI, 1, "isActive", Integer.class, "is_active"), new FieldNode(DynamicEntityType.CI, 1, "name", String.class, "name"),
            new FieldNode(DynamicEntityType.CI, 1, "otherName", String.class, "other_name"), new FieldNode(DynamicEntityType.CI, 1, "parentIdAdmMenu", Integer.class, "parent_id_adm_menu"),
            new FieldNode(DynamicEntityType.CI, 1, "remark", String.class, "remark"), new FieldNode(DynamicEntityType.CI, 1, "seqNo", Integer.class, "seq_no"), new FieldNode(DynamicEntityType.CI, 1, "url", String.class, "url"));

    byte[] domainBuf = DynamicEntityGenerator.generate("test.domain.AdmMenu", "adm_menu", fields);

    Class clzz = entityCL.getClass(domainBuf);
    HibernateJpaEntityManagerFactory ciManagerFactory = new HibernateJpaEntityManagerFactory(Arrays.asList(clzz), dataSource, entityCL, datasourceProperties.getSchema());
    EntityManager ciEntityManager = ciManagerFactory.getEntityManagerFactory()
            .createEntityManager();

    Object entity = clzz.newInstance();
    BeanMap beanMap = BeanMap.create(entity);
    beanMap.put("name", "test menu");
    beanMap.put("remark", "test remark");
    beanMap.put("seqNo", 99);
    beanMap.put("idAdmMenu", 100);
    EntityTransaction transaction = ciEntityManager.getTransaction();
    transaction.begin();
    Object updatedEntity = ciEntityManager.merge(entity);
    System.out.println("id:" + BeanMap.create(updatedEntity)
            .get("idAdmMenu"));
    transaction.commit();
}
 
Example 10
Source Project: SENS   Source File: ObjectUtil.java    License: GNU General Public License v3.0 5 votes vote down vote up
public static <T> Map<String, Object> beanToMap(T bean) {
    Map<String, Object> map = Maps.newHashMap();
    if (bean != null) {
        BeanMap beanMap = BeanMap.create(bean);
        for (Object key : beanMap.keySet()) {
            map.put(key+"", beanMap.get(key));
        }
    }
    return map;
}
 
Example 11
Source Project: seppb   Source File: WarningHelper.java    License: MIT License 5 votes vote down vote up
default Map<String, Object> beanToMap(@NonNull T t) {
    Map<String, Object> defectMap = Maps.newHashMap();
    BeanMap beanMap = BeanMap.create(t);
    for (Object key : beanMap.keySet()) {
        Object value = valueToDouble(null == beanMap.get(key) ? 0.0001 : beanMap.get(key));
        defectMap.put(String.valueOf(key), value);
    }
    return defectMap;
}
 
Example 12
Source Project: pmq   Source File: AuditUtil.java    License: Apache License 2.0 5 votes vote down vote up
public static Map<String, String> convertMap(Object source) {
    if (source== null) {
        return new HashMap<>();
    }
    BeanMap sourceBeanMap = BeanMap.create(source);
    Map<String, String> sourceFieldMap = new HashMap<>();
    for (Object key: sourceBeanMap.keySet()) {
        sourceFieldMap.put(key.toString(), JsonUtil.toJson(sourceBeanMap.get(key)));
    }
    return sourceFieldMap;
}
 
Example 13
Source Project: web-flash   Source File: BeanUtil.java    License: MIT License 5 votes vote down vote up
/**
* 将对象装换为map
* @param bean
* @return
        */
public static <T> Map<String, Object> beanToMap(T bean) {
    Map<String, Object> map = Maps.newHashMap();
    if (bean != null) {
        BeanMap beanMap = BeanMap.create(bean);
        for (Object key : beanMap.keySet()) {
            map.put(key+"", beanMap.get(key));
        }
    }
    return map;
}
 
Example 14
Source Project: flash-waimai   Source File: BeanUtil.java    License: MIT License 5 votes vote down vote up
/**
* 将对象装换为map
* @param bean
* @return
        */
public static <T> Map<String, Object> beanToMap(T bean) {
    Map<String, Object> map = Maps.newHashMap();
    if (bean != null) {
        BeanMap beanMap = BeanMap.create(bean);
        for (Object key : beanMap.keySet()) {
            map.put(key+"", beanMap.get(key));
        }
    }
    return map;
}
 
Example 15
Source Project: Lottor   Source File: BeanMapUtils.java    License: MIT License 5 votes vote down vote up
/**
 * 将对象装换为map
 *
 * @param bean
 * @return
 */
public static <T> Map<String, Object> beanToMap(T bean) {
    Map<String, Object> map = Maps.newHashMap();
    if (bean != null) {
        BeanMap beanMap = BeanMap.create(bean);
        for (Object key : beanMap.keySet()) {
            if (Objects.nonNull(beanMap.get(key))) {
                map.put(key + "", beanMap.get(key));
            }

        }
    }
    return map;
}
 
Example 16
Source Project: faster-framework-project   Source File: Utils.java    License: Apache License 2.0 5 votes vote down vote up
/**
 * bean转map
 *
 * @param bean 原始bean
 * @param <T>  泛型
 * @return map
 */
public static <T> Map<String, Object> beanToMap(T bean) {
    Map<String, Object> map = new HashMap<>();
    if (bean != null) {
        BeanMap beanMap = BeanMap.create(bean);
        for (Object key : beanMap.keySet()) {
            map.put(key + "", beanMap.get(key));
        }
    }
    return map;
}
 
Example 17
Source Project: super-cloudops   Source File: AbstractSnsHandler.java    License: Apache License 2.0 5 votes vote down vote up
/**
 * After SNS callback handling.<br/>
 *
 * @param provider
 * @param code
 * @param api
 * @param connectParams
 * @param request
 * @return
 */
@SuppressWarnings({ "rawtypes", "unchecked" })
protected String doHandleOAuth2Callback(String provider, String code, OAuth2ApiBinding api, Map<String, String> connectParams,
		HttpServletRequest request) {
	// Access token
	Oauth2AccessToken at = api.getAccessToken(code);
	// User openId
	Oauth2OpenId openId = api.getUserOpenId(at);
	// User info
	Map<String, Object> userProfile = emptyMap();
	try {
		Oauth2UserProfile profile = api.getUserInfo(at.accessToken(), openId.openId());
		userProfile = BeanMap.create(profile);
	} catch (SnsApiBindingException e) { // Ignore?
		log.warn("Could't get OAuth2 userInfo, provider: %s, accessToken: %s, openId: %s, caused by: %s", provider,
				at.accessToken(), openId.openId(), getRootCausesString(e));
	}

	/*
	 * Caching social callback user openId information.(Applicable only to
	 * which=login/client_auth)<br/>
	 * See:xx.realm.Oauth2SnsAuthorizingRealm#doAuthenticationInfo()
	 */
	SocialAuthorizeInfo authInfo = new SocialAuthorizeInfo(provider, openId.openId(), openId.unionId(), userProfile);
	String callbackId = generateCallbackId();
	cacheManager.getIamCache(CACHE_SNSAUTH).put(new CacheKey(getOAuth2CallbackKey(callbackId), 30), authInfo);
	return callbackId;
}
 
Example 18
Source Project: BlogManagePlatform   Source File: BeanUtil.java    License: Apache License 2.0 5 votes vote down vote up
/**
 * map转bean
 * @author Frodez
 * @throws InvocationTargetException
 * @date 2019-02-08
 */
@SneakyThrows
public static <T> T as(Map<String, Object> map, Supplier<T> supplier) {
	Assert.notNull(map, "map must not be null");
	T bean = supplier.get();
	try {
		BeanMap.create(bean).putAll(map);
	} catch (Exception e) {
		log.error("map转bean出现异常,采用安全方式继续...异常消息:{}", e.getMessage());
		//如果出错则采用安全但较慢的方式
		safeAs(map, bean);
	}
	return bean;
}
 
Example 19
Source Project: BlogManagePlatform   Source File: BeanUtil.java    License: Apache License 2.0 5 votes vote down vote up
/**
 * map转bean
 * @author Frodez
 * @throws InvocationTargetException
 * @date 2019-02-08
 */
@SneakyThrows
public static <T> T as(Map<String, Object> map, Class<T> klass) {
	Assert.notNull(map, "map must not be null");
	T bean = ReflectUtil.instance(klass);
	try {
		BeanMap.create(bean).putAll(map);
	} catch (Exception e) {
		log.error("map转bean出现异常,采用安全方式继续...异常消息:{}", e.getMessage());
		//如果出错则采用安全但较慢的方式
		safeAs(map, bean);
	}
	return bean;
}
 
Example 20
Source Project: MicroCommunity   Source File: BeanConvertUtil.java    License: Apache License 2.0 5 votes vote down vote up
/**
 * bean转换为map对象
 *
 * @param orgBean 原始bean
 * @return map对象
 */
public static Map beanCovertMap(Object orgBean) {

    Map<String, Object> map = new HashMap();
    try {
        BeanMap beanMap = BeanMap.create(orgBean);
        for (Object key : beanMap.keySet()) {
            map.put(key + "", beanMap.get(key));
        }
    } catch (Exception e) {
        throw new RuntimeException("bean转换Map失败", e);
    }
    return map;
}
 
Example 21
Source Project: bdf3   Source File: AbstractContextProvider.java    License: Apache License 2.0 5 votes vote down vote up
protected Object getRealContext(Object obj, String dataPath) {
	if (StringUtils.isEmpty(dataPath)) {
		return obj;
	}
	String[] path = dataPath.split("\\.");
	Object target = obj;
	BeanMap beanMap = BeanMap.create(target);
	for (String property : path) {
		target = beanMap.get(property);
	}
	return target;
}
 
Example 22
Source Project: jea   Source File: SoapClient.java    License: Apache License 2.0 5 votes vote down vote up
private Object copytoSoapObject(Object param, Class<?> soapClass)
		throws Exception {
	Object soapObject = soapClass.newInstance();
	if (soapObject instanceof java.lang.String) {
		soapObject = param.toString();
	} else {
		BeanMap beanMap = BeanMap.create(soapObject);
		DynamicDTO dto = (DynamicDTO) param;
		for (String key : dto.properties()) {
			beanMap.put(key, dto.getValue(key));
		}
	}
	return soapObject;
}
 
Example 23
Source Project: jea   Source File: DynamicDTO.java    License: Apache License 2.0 5 votes vote down vote up
public DynamicDTO(BaseModel model){
	generator = new BeanGenerator();
	valueMap = new TreeMap<String, Object>();
	beanObject = model;
	beanMap = BeanMap.create(model);
	valueMap.putAll(beanMap);
}
 
Example 24
Source Project: jea   Source File: DynamicDTO.java    License: Apache License 2.0 5 votes vote down vote up
/**
 * 建议用于SOAP对象的转换,一般的JavaBean请继承BaseDTO或BasePO
 * @param obj
 */
public DynamicDTO(Object obj){
	generator = new BeanGenerator();
	valueMap = new TreeMap<String, Object>();
	beanObject = obj;
	beanMap = BeanMap.create(obj);
	valueMap.putAll(beanMap);
}
 
Example 25
Source Project: jea   Source File: DynamicDTO.java    License: Apache License 2.0 5 votes vote down vote up
public Object getCloneBean() {
	try {
		Object tmpObject = generator.create();
		BeanMap tmpMap = BeanMap.create(tmpObject);
		tmpMap.putAll(valueMap);
		return tmpObject;
	} catch (Exception e) {
		return null;
	}
}
 
Example 26
Source Project: jea   Source File: DynamicDTO.java    License: Apache License 2.0 5 votes vote down vote up
/**
 * 转换器,设置DynamicDTO的属性值到对应的Model对象
 * 
 * @param target
 */
@SuppressWarnings("unchecked")
public void convert(BaseModel target) {
	BeanMap tmp = BeanMap.create(target);
	Iterator<String> keys = tmp.keySet().iterator();
	String key = null;
	while(keys.hasNext()){
		key = keys.next();
		if(beanMap.containsKey(key)){
			StringConverter converter = new StringConverter();
			TypeConverterManager.register(String.class, converter);
			tmp.put(key, TypeConverterManager.convertType(beanMap.get(key), tmp.getPropertyType(key)));
		}
	}
}
 
Example 27
Source Project: mica   Source File: MicaBeanMap.java    License: GNU Lesser General Public License v3.0 4 votes vote down vote up
@Override
protected Object firstInstance(Class type) {
	return ((BeanMap)ReflectUtils.newInstance(type)).newInstance(bean);
}
 
Example 28
Source Project: mica   Source File: MicaBeanMap.java    License: GNU Lesser General Public License v3.0 4 votes vote down vote up
@Override
protected Object nextInstance(Object instance) {
	return ((BeanMap)instance).newInstance(bean);
}
 
Example 29
Source Project: we-cmdb   Source File: DynamicEntityHolder.java    License: Apache License 2.0 4 votes vote down vote up
public DynamicEntityHolder(DynamicEntityMeta entityMeta, Object entityObj) {
    this.entityMeta = entityMeta;
    this.entityObj = entityObj;
    entityBeanMap = BeanMap.create(entityObj);
}
 
Example 30
Source Project: we-cmdb   Source File: DynamicEntityHolder.java    License: Apache License 2.0 4 votes vote down vote up
public BeanMap getEntityBeanMap() {
    return entityBeanMap;
}