码迷,mamicode.com
首页 > 其他好文 > 详细

【代码小记】无

时间:2015-01-30 14:41:58      阅读:114      评论:0      收藏:0      [点我收藏+]

标签:

【转换字段名为get/set方法名】

    /**
     * 给Object对象设置某属性值
     * @param obj Object
     * @param columnName String
     * @param value Object
     * @return
     */
    public Boolean setPropertyByColumn(Object obj,String columnName,Object value) {
        try {
            if (obj!=null && columnName!=null) {
                java.lang.reflect.Method set = obj.getClass().getDeclaredMethod(
                        transColumn2GetOrSetMethodName(columnName,"set"), value.getClass());
                set.invoke(obj, value);
                return true;
            } else {
                return false;
            }
        } catch (Exception e) {
            return false;
        }
    }
    
    /**
     * 根据列名获取对应的get或set方法名
     * @param column String
     * @param setOrget String
     * @return
     */
    public String transColumn2GetOrSetMethodName(String column,String setOrget){
        if (column==null || setOrget==null) {
            return null;
        }
        if (setOrget.matches("set|get")) {
            String[] colps = column.toLowerCase().split("_");
            String methodName = "set";
            for (int i = 0; i < colps.length; i++) {
                if (colps[i].length() > 1) {
                    methodName += new String(colps[i].substring(0, 1).toUpperCase());
                    methodName += new String(colps[i].substring(1));
                } else {
                    methodName += new String(colps[i].toUpperCase());
                }
            }
            return methodName;
        } else {
            System.out.println("param setOrget must be set or get.");
return null; } }
/** * 获取Object某属性值 * @param obj Object * @param columnName String * @return */ public Object getPropertyByColumn(Object obj,String columnName) { try { if (obj!=null && columnName!=null) { java.lang.reflect.Method get = obj.getClass().getDeclaredMethod( transColumn2GetOrSetMethodName(columnName,"get")); return get.invoke(obj); } else { return null; } } catch (Exception e) { return null; } }

 

【代码小记】无

标签:

原文地址:http://www.cnblogs.com/justbeginning/p/4261913.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!