Browse Source

上传https工具类 代码

shine 9 years ago
parent
commit
9d980c999c

+ 81 - 0
Hos-Framework/src/main/java/com/yihu/ehr/framework/constrant/Constants.java

@ -0,0 +1,81 @@
package com.yihu.ehr.framework.constrant;
/**
 * Created by lingfeng on 2015/6/23.
 */
public class Constants {
    public static final String CREATE_TABLE = " CREATE TABLE ";
    public static final String INSERT_INTO = " INSERT INTO ";
    public static final String ALTER_TABLE = " ALTER TABLE ";
    public static final String DROP_TABLE = " DROP TABLE ";
    public static final String SELECT = " SELECT ";
    public static final String UPDATE = "UPDATE ";
    public static final String DELETE = "DELETE ";
    public static final String FROM = " FROM ";
    public static final String WHERE = " WHERE ";
    public static final String COUNT = " COUNT(*) ";
    public static final String ASTERISK = "*";
    public static final String IN = " IN ";
    public static final String BETWEEN = " BETWEEN ";
    public static final String BEGIN = "begin";
    public static final String END = "end";
    public static final String LIKE = " LIKE ";
    public static final String OR = " OR ";
    public static final String EQUAL_MARK = " = ";
    public static final String NE_MARK = " != ";
    public static final String GREATER_EQUAL_MARK = " >= ";
    public static final String LESS_EQUAL_MARK = " <= ";
    public static final String GREATER_MARK = " > ";
    public static final String LESS_MARK = " < ";
    public static final String SET = " SET ";
    public static final String AND = " AND ";
    public static final String QUESTION_MARK = " ? ";
    public static final String ADD = " ADD ";
    public static final String NOT_NULL = " NOT NULL ";
    public static final String BLANK = " ";
    public static final String PRIMARY_KEY = "PRIMARY_KEY ";
    public static final String PERCENT = "%";
    public static final String LEFT_BRACKET = "(";
    public static final String RIGHT_BRACKET = ")";
    public static final String COMMA = ",";
    public static final String SEMICOLON = ";";
    public static final String COLON = ":";
    public static final String UNION = " UNION ";
    public static final String VALUES = " VALUES ";
    public static final String ORDER_BY = " ORDER BY ";
    public static final String ASC = "ASC";
    public static final String DESC = "DESC";
    public static final String ROW_FORMAT_DYNAMIC = "row_format=dynamic";
    public static final String USERNAME_KEY = "u2akgXkkRRkiiCVR";
    public static final String ACCESS_TOKEN = "accessToken";
    public static final String REFRESH_TOKEN = "refreshToken";
    public static final String TOKEN_FAILD = "tokenFaild";
    public static final String TOKEN_EXPIRED = "tokenExpired";
    public static final String EMPTY = "";
    public static final String CDA_FILE = "CDA_File";
    public static final String STANDARD_ZIP = "standard.zip";
    public static final String DOT = ".";
    public static final String UPDATE_TYPE = "update";
    public static final String DELETE_TYPE = "delete";
    public static final String ADD_TYPE = "add";
    public static final String TABLE_KEY = "id";
    public static final String FAILURE_FLG = "valid";
    public static final String UNDERLINE = "_";
    public static final String STD_PREFIX = "std_";
    public static final String ADAPTER_PREFIX = "adapter_";
    public static final String ORIGIN_PREFIX = "origin_";
    public static final String CODE_STR = "code";
    public static final String VALUE_STR = "value";
    public static final String STANDARD = "standard";
    public static final String OK = "ok";
    public static final String NO = "no";
    public static final Integer NUMBER_ZREO = 0;
    public static final Integer NUMBER_ONE = 1;
    public static final String MYSQL_DRIVER = "com.mysql.jdbc.Driver";
    public static final String ORACLE_DRIVER = "oracle.jdbc.driver.OracleDriver";
    public static final String SQLSERVER_DRIVER = "com.microsoft.sqlserver.jdbc.SQLServerDriver";
    public static final String MYSQL = "mysql";
    public static final String ORACLE = "oracle";
    public static final String SQLSERVER = "sqlserver";
}

+ 41 - 0
Hos-Framework/src/main/java/com/yihu/ehr/framework/exception/ApiException.java

@ -0,0 +1,41 @@
package com.yihu.ehr.framework.exception;
import com.yihu.ehr.framework.constrant.ErrorCode;
/**
 * @author Sand
 * @version 1.0
 * @created 2015.12.20 16:05
 */
public class ApiException extends RuntimeException {
    private static final long serialVersionUID = 1464313464798414L;
    private ErrorCode errCode;
    private String errMsg;
    public ErrorCode getErrorCode() {
        return errCode;
    }
    public void setErrCode(ErrorCode errCode) {
        this.errCode = errCode;
    }
    public String getErrMsg() {
        return errMsg;
    }
    public void setErrMsg(String errMsg) {
        this.errMsg = errMsg;
    }
    public ApiException(ErrorCode errCode) {
        this.errCode = errCode;
    }
    public ApiException(ErrorCode errCode, String errMsg) {
        this.errCode = errCode;
        this.errMsg = errMsg;
    }
}

+ 218 - 0
Hos-Framework/src/main/java/com/yihu/ehr/framework/util/sql/BeanTransformer.java

@ -0,0 +1,218 @@
package com.yihu.ehr.framework.util.sql;
import org.hibernate.transform.ResultTransformer;
import javax.persistence.Column;
import java.beans.BeanInfo;
import java.beans.IntrospectionException;
import java.beans.Introspector;
import java.beans.PropertyDescriptor;
import java.lang.reflect.Field;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
import java.sql.SQLException;
import java.sql.Timestamp;
import java.util.Arrays;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
 * @created Airhead 2015/12/26.
 */
public class BeanTransformer<T> implements ResultTransformer {
    private final Class<T> mapClass;
    public Map<String, String> columnToProperty;
    public Map<String, String> propertyToColumn;
    public BeanTransformer(Class<T> mapClass) {
        this.mapClass = mapClass;
        this.initColumnsToProperties();
        this.initPropertiesToColumns();
    }
    public Object transformTuple(Object[] tuple, String[] aliases) {
        try {
            PropertyDescriptor[] props = this.propertyDescriptors();
            int[] col2Pro = this.mapColumnsToProperties(aliases, props);
            return this.createBean(tuple, mapClass, props, col2Pro);
        } catch (Exception e) {
            e.printStackTrace();
        }
        return null;
    }
    @Override
    public List transformList(List list) {
        return list;
    }
    protected T newInstance(Class<T> c) throws Exception {
        try {
            return c.newInstance();
        } catch (InstantiationException | IllegalAccessException e) {
            throw new Exception("Cannot create " + c.getName() + ": " + e.getMessage());
        }
    }
    protected int[] mapColumnsToProperties(String[] aliases, PropertyDescriptor[] props) throws SQLException {
        int[] col2Pro = new int[aliases.length];
        Arrays.fill(col2Pro, -1);
        for (int col = 0; col < aliases.length; ++col) {
            String columnName = aliases[col];
            String propertyName = this.columnToProperty.get(columnName.toUpperCase());
            for (int i = 0; i < props.length; ++i) {
                if (propertyName.equals(props[i].getName())) {
                    col2Pro[col] = i;
                    break;
                }
            }
        }
        return col2Pro;
    }
    private T createBean(Object[] tuple, Class<T> type, PropertyDescriptor[] props, int[] col2Pro) throws Exception {
        T bean = this.newInstance(type);
        for (int i = 0; i < col2Pro.length; ++i) {
            int realIndex = col2Pro[i];
            if (realIndex != -1) {
                Object value = tuple[i];
                PropertyDescriptor prop = props[realIndex];
                this.callSetter(bean, prop, value);
            }
        }
        return bean;
    }
    private void callSetter(Object target, PropertyDescriptor prop, Object value) throws Exception {
        Method setter = prop.getWriteMethod();
        if (setter == null) {
            return;
        }
        Class<?>[] params = setter.getParameterTypes();
        try {
            // convert types for some popular ones
            if (value instanceof java.util.Date) {
                final String targetType = params[0].getName();
                if ("java.sql.Date".equals(targetType)) {
                    value = new java.sql.Date(((java.util.Date) value).getTime());
                } else if ("java.sql.Time".equals(targetType)) {
                    value = new java.sql.Time(((java.util.Date) value).getTime());
                } else if ("java.sql.Timestamp".equals(targetType)) {
                    Timestamp tsValue = (Timestamp) value;
                    int nanos = tsValue.getNanos();
                    value = new Timestamp(tsValue.getTime());
                    ((Timestamp) value).setNanos(nanos);
                }
            } else {
//                if (value instanceof String && params[0].isEnum()) {
//                    value = Enum.valueOf(params[0].asSubclass(Enum.class), (String) value);
//                }
            }
            // Don't call setter if the value object isn't the right type
            if (this.isCompatibleType(value, params[0])) {
                setter.invoke(target, new Object[]{value});
            } else {
                throw new Exception(
                        "Cannot set " + prop.getName() + ": incompatible types, cannot convert "
                                + value.getClass().getName() + " to " + params[0].getName());
                // value cannot be null here because isCompatibleType allows null
            }
        } catch (IllegalArgumentException | IllegalAccessException | InvocationTargetException e) {
            throw new SQLException(
                    "Cannot set " + prop.getName() + ": " + e.getMessage());
        }
    }
    private void initColumnsToProperties() {
        columnToProperty = new HashMap<>();
        Field[] fields = mapClass.getDeclaredFields();
        for (Field f : fields) {
            Column column = f.getAnnotation(Column.class);
            if (column == null) {
                continue;
            }
            String columnName = column.name();
            String propertyName = f.getName();
            columnToProperty.put(columnName.toUpperCase(), propertyName);
        }
    }
    private void initPropertiesToColumns() {
        propertyToColumn = new HashMap<>();
        Field[] fields = mapClass.getDeclaredFields();
        for (Field f : fields) {
            Column column = f.getAnnotation(Column.class);
            if (column == null) {
                continue;
            }
            String columnName = column.name();
            String propertyName = f.getName();
            propertyToColumn.put(propertyName,columnName.toUpperCase());
        }
    }
    private PropertyDescriptor[] propertyDescriptors() throws Exception {
        BeanInfo beanInfo = null;
        try {
            beanInfo = Introspector.getBeanInfo(mapClass);
        } catch (IntrospectionException e) {
            throw new Exception("Bean introspection failed: " + e.getMessage());
        }
        return beanInfo.getPropertyDescriptors();
    }
    private boolean isCompatibleType(Object value, Class<?> type) {
        // Do object check first, then primitives
        if (value == null || type.isInstance(value)) {
            return true;
        } else if (type.equals(Integer.TYPE) && value instanceof Integer) {
            return true;
        } else if (type.equals(Integer.TYPE) && value instanceof Long) {
            return true;
        } else if (type.equals(Long.TYPE) && value instanceof Long) {
            return true;
        } else if (type.equals(Double.TYPE) && value instanceof Double) {
            return true;
        } else if (type.equals(Float.TYPE) && value instanceof Float) {
            return true;
        } else if (type.equals(Short.TYPE) && value instanceof Short) {
            return true;
        } else if (type.equals(Byte.TYPE) && value instanceof Byte) {
            return true;
        } else if (type.equals(Character.TYPE) && value instanceof Character) {
            return true;
        } else if (type.equals(Boolean.TYPE) && value instanceof Boolean) {
            return true;
        }
        return false;
    }
}

+ 106 - 0
Hos-Framework/src/main/java/com/yihu/ehr/framework/util/sql/RequestParamTransformer.java

@ -0,0 +1,106 @@
package com.yihu.ehr.framework.util.sql;
import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.yihu.ehr.framework.constrant.ErrorCode;
import com.yihu.ehr.framework.exception.ApiException;
import com.yihu.ehr.framework.util.operator.StringUtil;
import org.apache.commons.lang3.StringUtils;
import org.apache.commons.lang3.math.NumberUtils;
import java.io.IOException;
import java.util.*;
/**
 * @created Airhead 2015/12/29.
 */
public class RequestParamTransformer {
    public static final String SEPARATOR_FIELD = ",";
    public static final String SEPARATOR_KEYVALUE = ":";
    public static Map<String, Object> parseQuery(String query) throws ApiException {
        HashMap<String, Object> queryMap = new HashMap<String, Object>();
        if (StringUtils.isEmpty(query)) {
            return queryMap;
        }
        for (String cond : StringUtils.split(query, SEPARATOR_FIELD)) {
            String[] kv = StringUtils.split(cond, SEPARATOR_KEYVALUE);
            if (kv.length != 2) {
                throw new ApiException(ErrorCode.InvalidParameterFormat);
            }
            String key = kv[0];
            String value = kv[1];
            queryMap.put(key, value);
        }
        return queryMap;
    }
    public static List<String> parseField(String fields) {
        List<String> fieldList = new ArrayList<String>();
        if (StringUtils.isEmpty(fields)) {
            return fieldList;
        }
        String[] filters = StringUtils.split(fields, SEPARATOR_FIELD);
        return Arrays.asList(filters);
    }
    public static List<String> parseSortBy(String sortBy) {
        List<String> sortList = new ArrayList<String>();
        if (StringUtils.isEmpty(sortBy)) {
            return sortList;
        }
        String[] fields = StringUtils.split(sortBy, SEPARATOR_FIELD);
        return Arrays.asList(fields);
    }
    public static List<String> parseOrder(String order) {
        List<String> orderList = new ArrayList<String>();
        if (StringUtils.isEmpty(order)) {
            return orderList;
        }
        String[] fields = StringUtils.split(order, SEPARATOR_FIELD);
        return Arrays.asList(fields);
    }
    public static Long parseLimit(String limit) {
        if (StringUtils.isEmpty(limit)) {
            return -1L;
        }
        return NumberUtils.toLong(limit);
    }
    public static Long parseOffset(String offset) {
        if (StringUtils.isEmpty(offset)) {
            return 0L;
        }
        return NumberUtils.toLong(offset);
    }
    public static Map parseJsonToMap(String condition) {
        ObjectMapper objectMapper = new ObjectMapper();
        HashMap<String, String> map = new HashMap<String, String>();
        if (!StringUtil.isEmpty(condition)) {
            try {
                JsonNode jsonNode = objectMapper.readTree(condition);
                Iterator<String> fileNames = jsonNode.fieldNames();
                while (fileNames.hasNext()) {
                    String fieldName = fileNames.next();
                    String value = jsonNode.get(fieldName).asText();
                    map.put(fieldName, value);
                }
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
        return map;
    }
}

+ 317 - 0
Hos-Framework/src/main/java/com/yihu/ehr/framework/util/sql/SqlCreator.java

@ -0,0 +1,317 @@
package com.yihu.ehr.framework.util.sql;
import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.node.JsonNodeType;
import com.yihu.ehr.framework.constrant.Constants;
import com.yihu.ehr.framework.util.operator.CollectionUtil;
import com.yihu.ehr.framework.util.operator.StringUtil;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
 * Created by lingfeng on 2015/6/23.
 */
public class SqlCreator {
    private String tableName;
    private List<String> itemList;
    private List<String> itemValueList;
    private List<String> conditionList;
    private List<String> orderList;
    private Map<String, Object> keyValueMap;
    private BeanTransformer transformer;
    public SqlCreator(Class tClass) {
        keyValueMap = new HashMap<>();
        conditionList = new ArrayList<>();
        itemList = new ArrayList<>();
        itemValueList = new ArrayList<>();
        orderList = new ArrayList<>();
        transformer = new BeanTransformer(tClass);
    }
    public String insertData() {
        StringBuilder sqlBuffer = new StringBuilder();
        sqlBuffer.append(Constants.INSERT_INTO + tableName + Constants.LEFT_BRACKET);
        for (String item : itemList) {
            sqlBuffer.append(item + Constants.COMMA);
        }
        sqlBuffer.deleteCharAt(sqlBuffer.length() - 1);
        sqlBuffer.append(Constants.RIGHT_BRACKET + Constants.VALUES + Constants.LEFT_BRACKET);
        for (String item : itemValueList) {
            sqlBuffer.append(item + Constants.COMMA);
        }
        sqlBuffer.deleteCharAt(sqlBuffer.length() - 1);
        sqlBuffer.append(Constants.RIGHT_BRACKET + Constants.SEMICOLON);
        return sqlBuffer.toString();
    }
    public String insertData(String tabelName, JsonNode jsonNode) {
        setTableName(tabelName);
        for (Object key : transformer.columnToProperty.keySet()) {
            String property = StringUtil.toString(transformer.columnToProperty.get(key));
            JsonNode propertyJsonNode = jsonNode.get(property);
            if (propertyJsonNode != null) {
                itemList.add(StringUtil.toString(key));
                itemValueList.add(Constants.COLON + property);
                setKeyValueMapByType(property, propertyJsonNode, keyValueMap);
            }
        }
        return insertData();
    }
    public void setKeyValueMapByType(String property, JsonNode propertyJsonNode, Map<String, Object> keyValueMap) {
        JsonNodeType jsonNodeType = propertyJsonNode.getNodeType();
        if (jsonNodeType.equals(JsonNodeType.STRING)) {
            keyValueMap.put(property, propertyJsonNode.asText());
        } else if (jsonNodeType.equals(JsonNodeType.NUMBER)) {
            keyValueMap.put(property, propertyJsonNode.asInt());
        } else {
            keyValueMap.put(property, null);
        }
    }
    public String countData(String tabelName) {
        StringBuilder sqlBuffer = new StringBuilder();
        setTableName(tabelName);
        sqlBuffer.append(Constants.SELECT);
        sqlBuffer.append(Constants.COUNT);
        sqlBuffer.append(Constants.FROM + tableName);
        if (!CollectionUtil.isEmpty(conditionList)) {
            sqlBuffer.append(Constants.WHERE);
            sqlBuffer.append("1=1" + Constants.AND);
            for (String condition : conditionList) {
                sqlBuffer.append(condition + Constants.AND);
            }
            sqlBuffer.delete(sqlBuffer.length() - 4, sqlBuffer.length() - 1);
        }
        return sqlBuffer.toString();
    }
    public String selectData(String tabelName) {
        setTableName(tabelName);
        for(Object key : transformer.columnToProperty.keySet()){
            itemList.add(StringUtil.toString(key));
        }
        return selectData();
    }
    public String selectData() {
        StringBuilder sqlBuffer = new StringBuilder();
        sqlBuffer.append(Constants.SELECT);
        for (String item : itemList) {
            sqlBuffer.append(item + Constants.COMMA);
        }
        sqlBuffer.deleteCharAt(sqlBuffer.length() - 1);
        sqlBuffer.append(Constants.FROM + tableName);
        if (!CollectionUtil.isEmpty(conditionList)) {
            sqlBuffer.append(Constants.WHERE);
            sqlBuffer.append("1=1" + Constants.AND);
            for (String condition : conditionList) {
                sqlBuffer.append(condition + Constants.AND);
            }
            sqlBuffer.delete(sqlBuffer.length() - 4, sqlBuffer.length() - 1);
        }
        if (!CollectionUtil.isEmpty(orderList)) {
            for (String order : orderList) {
                sqlBuffer.append(order);
            }
            sqlBuffer.delete(sqlBuffer.length() - 1, sqlBuffer.length());
        }
        return sqlBuffer.toString();
    }
    public String updateDataByTableKey(String tabelName, JsonNode jsonNode) {
        setTableName(tabelName);
        StringBuilder sqlBuffer = new StringBuilder();
        sqlBuffer.append(Constants.UPDATE + tableName + Constants.SET);
        Map columnToProperty = transformer.columnToProperty;
        for (Object key : columnToProperty.keySet()) {
            String property = StringUtil.toString(columnToProperty.get(key));
            if (!property.equals(Constants.TABLE_KEY)) {
                sqlBuffer.append(key + Constants.EQUAL_MARK + Constants.COLON + property + Constants.COMMA);
                setKeyValueMapByType(property, jsonNode.get(property), keyValueMap);
            }
        }
        sqlBuffer.deleteCharAt(sqlBuffer.length() - 1);
        Object tableKey = columnToProperty.get(Constants.TABLE_KEY.toUpperCase());
        sqlBuffer.append(Constants.WHERE + Constants.TABLE_KEY + Constants.EQUAL_MARK + Constants.COLON + tableKey);
        String property = StringUtil.toString(tableKey);
        setKeyValueMapByType(property, jsonNode.get(property), keyValueMap);
        return sqlBuffer.toString();
    }
    public String betweenCondition(String item, Object value1, Object value2) {
        String condition = item + Constants.BETWEEN + Constants.BEGIN + item + Constants.AND + Constants.END + item;
        keyValueMap.put(Constants.BEGIN + item, value1);
        keyValueMap.put(Constants.END + item, value2);
        conditionList.add(condition);
        return condition;
    }
    public String greaterAndEqualCondition(String item, Object value) {
        String condition = item + Constants.GREATER_EQUAL_MARK + Constants.COLON + item;
        keyValueMap.put(item, value);
        conditionList.add(condition);
        return condition;
    }
    public String greaterCondition(String item, Object value) {
        String condition = item + Constants.GREATER_MARK + Constants.COLON + item;
        keyValueMap.put(item, value);
        conditionList.add(condition);
        return condition;
    }
    public String lessAndEqualCondition(String item, Object value) {
        String condition = item + Constants.LESS_EQUAL_MARK + Constants.COLON + item;
        keyValueMap.put(item, value);
        conditionList.add(condition);
        return condition;
    }
    public String lessCondition(String item, Object value) {
        String condition = item + Constants.LESS_MARK + Constants.COLON + item;
        keyValueMap.put(item, value);
        conditionList.add(condition);
        return condition;
    }
    public String equalCondition(String item, Object value) {
        String column = StringUtil.toString(transformer.propertyToColumn.get(item));
        String condition = column + Constants.EQUAL_MARK + Constants.COLON + item;
        keyValueMap.put(item, value);
        conditionList.add(condition);
        return condition;
    }
    public String inCondition(String item, Object value) {
        String column = StringUtil.toString(transformer.propertyToColumn.get(item));
        String condition = column + Constants.IN + Constants.LEFT_BRACKET + Constants.COLON + item + Constants.RIGHT_BRACKET;
        keyValueMap.put(item, value);
        conditionList.add(condition);
        return condition;
    }
    public String equalConditionQue(String item, Object value) {
        String column = StringUtil.toString(transformer.propertyToColumn.get(item));
        String condition = column + Constants.EQUAL_MARK + Constants.QUESTION_MARK;
        keyValueMap.put(item, value);
        conditionList.add(condition);
        return condition;
    }
    public String likeOrCondition(String item1, String item2, Object value) {
        if (!StringUtil.isEmpty(value)) {
            String column1 = StringUtil.toString(transformer.propertyToColumn.get(item1));
            String column2 = StringUtil.toString(transformer.propertyToColumn.get(item2));
            String condition = Constants.LEFT_BRACKET + column1 + Constants.LIKE + Constants.COLON + item1
                    + Constants.OR + column2 + Constants.LIKE + Constants.COLON + item2 + Constants.RIGHT_BRACKET;
            value = Constants.PERCENT + value + Constants.PERCENT;
            keyValueMap.put(item1, value);
            keyValueMap.put(item2, value);
            conditionList.add(condition);
            return condition;
        } else {
            return Constants.EMPTY;
        }
    }
    public String likeCondition(String item, Object value) {
        String column = StringUtil.toString(transformer.propertyToColumn.get(item));
        String condition = column + Constants.LIKE + Constants.COLON + item;
        value = Constants.PERCENT + value + Constants.PERCENT;
        keyValueMap.put(item, value);
        conditionList.add(condition);
        return condition;
    }
    public String neCondition(String item, Object value) {
        String column = StringUtil.toString(transformer.propertyToColumn.get(item));
        String condition = column + Constants.NE_MARK + Constants.COLON + item;
        keyValueMap.put(item, value);
        conditionList.add(condition);
        return condition;
    }
    public String order(String item, Object value) {
        String column = StringUtil.toString(transformer.propertyToColumn.get(item));
        String order;
        if (CollectionUtil.isEmpty(orderList)) {
            order = Constants.ORDER_BY + column + Constants.BLANK + value + Constants.COMMA;
        } else {
            order = column + Constants.BLANK + value + Constants.COMMA;
        }
        orderList.add(order);
        return order;
    }
    public String getTableName() {
        return tableName;
    }
    public void setTableName(String tableName) {
        this.tableName = tableName;
    }
    public List<String> getItemList() {
        return itemList;
    }
    public void setItemList(List<String> itemList) {
        this.itemList = itemList;
    }
    public List<String> getItemValueList() {
        return itemValueList;
    }
    public void setItemValueList(List<String> itemValueList) {
        this.itemValueList = itemValueList;
    }
    public List<String> getConditionList() {
        return conditionList;
    }
    public void setConditionList(List<String> conditionList) {
        this.conditionList = conditionList;
    }
    public Map<String, Object> getKeyValueMap() {
        return keyValueMap;
    }
    public void setKeyValueMap(Map<String, Object> keyValueMap) {
        this.keyValueMap = keyValueMap;
    }
    public List<String> getOrderList() {
        return orderList;
    }
    public void setOrderList(List<String> orderList) {
        this.orderList = orderList;
    }
    public BeanTransformer getTransformer() {
        return transformer;
    }
    public void setTransformer(BeanTransformer transformer) {
        this.transformer = transformer;
    }
}