ibatis中ProbeFactory.getProbe()类 list 转 map
来源:互联网 发布:mac 忘记开机密码 编辑:程序博客网 时间:2024/06/16 09:25
private static final Probe PROBE = ProbeFactory.getProbe();
ProbeFactory.getProbe() 是主要的方法,来源于ibatis API ,记录此工具类
1、getValueList(List<E> list, String valueProp) 此方法可以将List<object> object 对象 中某一个元素取出来重新组成List 数组
2、listforListMap(List<E> list,String keyProp, String valueProp) 此方法 List<Object> object 对象中某一个元素 当做key 如果 valueProp = null 则 object 为对应map 的value值 ,反之,object 元素中另一个元素 充当map value值
3、listforListMap(List<E> list,String keyProp, String valueProp) 与第2个类似,不同点是map 的value值对应的是List
/** * <pre> * 批量获取map中的值 * </pre> * * @param <K> * @param <V> * @param keys * @param source * @return */public static <K, V> List<V> getAllFormMap(List<K> keys, Map<K, V> source) {List<V> values = Collections.emptyList();if (keys != null && !keys.isEmpty() && source != null&& !source.isEmpty()) {values = new ArrayList<V>();for (K k : keys) {values.add(source.get(k));}}return values;}/** * * <pre> * 从List中获取valueProp组成一个新的list * </pre> * * @param <E> * @param list * @param valueProp * @return */public static <E, K> List<K> getValueList(List<E> list, String valueProp) {List<K> valueList = Collections.emptyList();if (CollectionUtils.isNotEmpty(list)) {list.removeAll(nullCollection());valueList = new ArrayList<K>(list.size());for (E e : list) {@SuppressWarnings("unchecked")K value = (K) PROBE.getObject(e, valueProp);valueList.add(value);}}return valueList;}/** * * <pre> * 用list生成一个map,keyProp 为指定的key,valueProp 为指定是value * </pre> * * @param <K> * @param <V> * @param <E> * @param list * @param keyProp * @param valueProp * @return */@SuppressWarnings("unchecked")public static <K, V, E> ConcurrentHashMap<K, V> listforMap(List<E> list, String keyProp,String valueProp) { ConcurrentHashMap<K, V> map = new ConcurrentHashMap<K, V>();if (CollectionUtils.isNotEmpty(list)) {list.removeAll(nullCollection());for (E object : list) {K key = (K) PROBE.getObject(object, keyProp);Object value = null;if (StringUtils.isEmpty(valueProp)) {value = object;} else {value = PROBE.getObject(object, valueProp);}if(null != key) {map.put(key, (V) value);}}}return map;}/** * * <pre> * list 生成一个Map<K,List<V>> * </pre> * * @param <K> * @param <V> * @param <E> * @param list * @param keyProp * @param valueProp * @return */@SuppressWarnings("unchecked")public static <K, V, E> Map<K, List<V>> listforListMap(List<E> list,String keyProp, String valueProp) {Map<K, List<V>> map = Collections.emptyMap();if (CollectionUtils.isNotEmpty(list)) {list.removeAll(nullCollection());map = new HashMap<K, List<V>>(list.size());V value = null;for (E object : list) {K key = (K) PROBE.getObject(object, keyProp);if (StringUtils.isEmpty(valueProp)) {value = (V) object;} else {value = (V) PROBE.getObject(object, valueProp);}List<V> values = map.get(key);if (values == null) {values = new ArrayList<V>();}values.add(value);map.put(key, values);}}return map;}
0 0
- ibatis中ProbeFactory.getProbe()类 list 转 map
- ibatIS中返回结果map 并使用list获取
- java中 list 转 map
- Ibatis中sqlmap参数map中还需要套list的情况如何写?
- Ibatis中sqlmap参数map中还需要套list的情况如何写?
- ibatis中返回Map类型
- list转map工具类
- list中时map转json格式
- java中map、list转json
- java中map ,list转json
- Map中取list
- ibatis中直执行sql,返回存储Map的List类型
- Ibatis Vo 中含有List<String>
- List<map>转List<bean>
- java 中List转为Map
- jstl中list嵌套map
- java 中 Map 和 List
- Java中 List、Set、Map
- Linux&&Mac 自动增加CSDN访问量
- 前台传后台参数,一行代码ok
- 【字符串】Decode Ways
- javaee学习之路(十四)JSP编程实例
- 关于mutating method sent to immutable object异常(ios小错误集锦,不定时更新)
- ibatis中ProbeFactory.getProbe()类 list 转 map
- unity3d跨平台原理
- 关于16进制到二进制的转换
- Ubuntu 设置环境变量
- myeclipse案例
- 一个基本java类的运行顺序
- The Compiler (关于编译的点点滴滴)
- 看看老外的开源项目
- OJ 系列之分解字符串