亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? mappingutils.java

?? 一個javabean的轉換與copy非常的好用希望大家好好研究一下
?? JAVA
字號:
/*
 * Copyright 2005-2007 the original author or authors.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
package net.sf.dozer.util.mapping.util;

import java.util.Collections;
import java.util.HashMap;
import java.util.Map;

import net.sf.dozer.util.mapping.MappingException;
import net.sf.dozer.util.mapping.cache.CacheManagerIF;
import net.sf.dozer.util.mapping.converters.CustomConverterContainer;
import net.sf.dozer.util.mapping.fieldmap.Field;
import net.sf.dozer.util.mapping.fieldmap.FieldMap;
import net.sf.dozer.util.mapping.fieldmap.GenericFieldMap;

import org.apache.commons.lang.StringUtils;

/**
 * @author garsombke.franz
 * @author sullins.ben
 * @author tierney.matt
 * 
 */
public class MappingUtils {

  //only making public temporarily while refactoring.  This static data should be relocated
  public static Map storedFactories = Collections.synchronizedMap(new HashMap());
  
  private final CollectionUtils collectionUtils = new CollectionUtils();
  
  public String getClassNameWithoutPackage(Class clazz) {
    Package pckage = clazz.getPackage();
    int pckageIndex = 0;
    if (pckage != null) {
      pckageIndex = pckage.getName().length() + 1;
    }
    return clazz.getName().substring(pckageIndex);
  }

  public boolean isSupportedCollection(Class aClass) {
    boolean collection = false;
    if (collectionUtils.isArray(aClass)) {
      collection = true;
    } else if (collectionUtils.isList(aClass)) {
      collection = true;
    } else if (collectionUtils.isSet(aClass)) {
      collection = true;
    } else if (collectionUtils.isIterator(aClass)) {
      collection = true;
    } else if (collectionUtils.isCollection(aClass)) {
      collection = true;
    }
    return collection;
  }

  public boolean isSupportedMap(Class aClass) {
    return Map.class.isAssignableFrom(aClass);
  }

  public boolean isCustomMapMethod(FieldMap fieldMap) {
    return (fieldMap instanceof GenericFieldMap && ((GenericFieldMap) fieldMap).isCustomMap()) ? true : false;
  }

  /**
   * Check if the given class represents a primitive array, i.e. boolean, byte, char, short, int, long, float, or
   * double.
   */
  public boolean isPrimitiveArray(Class clazz) {
    return boolean[].class.equals(clazz) || byte[].class.equals(clazz) || char[].class.equals(clazz)
        || short[].class.equals(clazz) || int[].class.equals(clazz) || long[].class.equals(clazz)
        || float[].class.equals(clazz) || double[].class.equals(clazz);
  }

  public boolean isPrimitiveOrWrapper(Class aClass) {
    return (aClass.isPrimitive() || Number.class.isAssignableFrom(aClass) || aClass.equals(String.class)
        || aClass.equals(Character.class) || aClass.equals(Boolean.class)
        || java.util.Date.class.isAssignableFrom(aClass) || java.util.Calendar.class.isAssignableFrom(aClass));
  }

  public void throwMappingException(Throwable e) throws MappingException {
    if (e instanceof MappingException) {
      // in this case we do not want to re-wrap an existing mapping exception
      throw (MappingException) e;
    } else {
      throw new MappingException(e);
    }
  }

  public boolean isBlankOrNull(String value) {
    return value == null || value.trim().length() < 1 ? true : false;
  }

  public void addFactories(Map factories) {
    storedFactories.putAll(factories);
  }

  public void isMethodMap(FieldMap fieldMap) {
    boolean methodMap = false;
    if (fieldMap.getSourceField().getTheGetMethod() != null || fieldMap.getSourceField().getTheSetMethod() != null
        || fieldMap.getDestField().getTheGetMethod() != null || fieldMap.getDestField().getTheSetMethod() != null) {
      methodMap = true;
    }
    if (methodMap && fieldMap instanceof GenericFieldMap) {
      ((GenericFieldMap) fieldMap).setMethodMap(true);
    }
  }

  public void isCustomMap(FieldMap fieldMap) {
    boolean customMap = false;
    if (fieldMap.getSourceField().getMapGetMethod() != null || fieldMap.getSourceField().getMapSetMethod() != null
        || fieldMap.getDestField().getMapGetMethod() != null || fieldMap.getDestField().getMapSetMethod() != null) {
      customMap = true;
    }
    if (customMap && fieldMap instanceof GenericFieldMap) {
      ((GenericFieldMap) fieldMap).setCustomMap(true);
    }
  }

  public Throwable getRootCause(Throwable ex) {
    Throwable rootCause = ex;
    while (rootCause.getCause() != null) {
      rootCause = rootCause.getCause();
    }
    return rootCause;
  }

  public String getParentFieldNameKey(String parentSourceField, Object srcObj, String sourceClassName, String srcFieldReadMethodName,
      String destFieldReadMethodName, String srcFieldName, String destFieldName) {
    StringBuffer buf = new StringBuffer(150);
    buf.append(parentSourceField);
    buf.append(System.identityHashCode(srcObj));
    buf.append(sourceClassName);
    buf.append(srcFieldReadMethodName);
    buf.append(destFieldReadMethodName);
    buf.append(srcFieldName);
    buf.append(destFieldName);
    return buf.toString();
  }
 
  public Class getCustomConverterFromContainer(CacheManagerIF cacheMgr, CustomConverterContainer customConverterContainer, Class sourceClass, Class destClass) throws ClassNotFoundException {
    // first test if this top level might just be handled by a customConverter, this is rare
    Class converterClass = null;
    if (customConverterContainer != null) {
      converterClass = customConverterContainer.getConverterByDestinationType(destClass, sourceClass, cacheMgr);
    }
    return converterClass;
  }
  
  public void reverseFields(FieldMap source, FieldMap destination) {
    // reverse the fields
    Field df = new Field(source.getSourceField().getName(), source.getSourceField().getType());
    df.setIndexed(source.getSourceField().isIndexed());
    df.setIndex(source.getSourceField().getIndex());

    Field sf = new Field(source.getDestField().getName(), source.getDestField().getType());
    sf.setIndexed(source.getDestField().isIndexed());
    sf.setIndex(source.getDestField().getIndex());

    destination.setDestField(df);
    destination.setSourceField(sf);

    destination.getDestField().setDateFormat(source.getSourceField().getDateFormat());
    destination.getSourceField().setDateFormat(source.getDestField().getDateFormat());

    destination.getDestField().setTheGetMethod(source.getSourceField().getTheGetMethod());
    destination.getDestField().setTheSetMethod(source.getSourceField().getTheSetMethod());
    destination.getSourceField().setTheGetMethod(source.getDestField().getTheGetMethod());
    destination.getSourceField().setTheSetMethod(source.getDestField().getTheSetMethod());
    destination.getDestField().setKey(source.getSourceField().getKey());
    destination.getSourceField().setKey(source.getDestField().getKey());
    destination.getDestField().setMapGetMethod(source.getSourceField().getMapGetMethod());
    destination.getDestField().setMapSetMethod(source.getSourceField().getMapSetMethod());
    destination.getSourceField().setMapGetMethod(source.getDestField().getMapGetMethod());
    destination.getSourceField().setMapSetMethod(source.getDestField().getMapSetMethod());
    destination.getSourceField().setAccessible(source.getDestField().isAccessible());
    if (StringUtils.isNotEmpty(destination.getMapId())) {
      destination.setMapId(source.getMapId());
    }
    destination.getDestField().setCreateMethod(source.getSourceField().getCreateMethod());
    destination.getSourceField().setCreateMethod(source.getDestField().getCreateMethod());
  }
  
  public boolean validateMap(Class sourceClass, Class destClass, FieldMap fieldMap) {
    if (Map.class.isAssignableFrom(sourceClass) || fieldMap.getSourceField().getMapGetMethod() != null ||
        Map.class.isAssignableFrom(destClass) || fieldMap.getDestField().getMapGetMethod() != null) {
      return true;
    } else {
      return false;
    }
  }
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产麻豆视频一区| 色综合久久天天综合网| 亚洲一区二区视频在线| 久久精品无码一区二区三区| 欧美va亚洲va香蕉在线| 色噜噜狠狠色综合中国| 国产精品一区二区在线观看不卡 | 欧美亚洲国产bt| 国产剧情在线观看一区二区| 五月婷婷欧美视频| 亚洲欧洲综合另类| 国产欧美日韩精品在线| 6080午夜不卡| 欧美日韩国产精品成人| 91麻豆福利精品推荐| 国产精品亚洲成人| 韩国精品久久久| 久久精品国产亚洲一区二区三区| 亚洲一区二区偷拍精品| 曰韩精品一区二区| 国产精品黄色在线观看| 国产午夜精品久久久久久免费视| 欧美一区二区三区免费| 精品视频一区三区九区| 91成人免费电影| 色综合中文字幕| jiyouzz国产精品久久| 高清国产午夜精品久久久久久| 精品亚洲成av人在线观看| 日本中文字幕一区二区视频| 五月综合激情日本mⅴ| 天天综合色天天综合色h| 亚洲妇熟xx妇色黄| 亚洲丰满少妇videoshd| 亚洲一区二区三区四区在线免费观看| 成人欧美一区二区三区视频网页| 国产日韩欧美亚洲| 久久精品一二三| 国产亚洲女人久久久久毛片| 26uuu另类欧美亚洲曰本| 精品久久99ma| www成人在线观看| 国产午夜精品理论片a级大结局| 国产视频一区二区三区在线观看 | 日韩欧美激情四射| 日韩免费观看高清完整版| 日韩免费观看2025年上映的电影| 欧美成人伊人久久综合网| 亚洲精品在线三区| 亚洲国产精品成人综合色在线婷婷 | 欧美电影影音先锋| 欧美一区二区精品久久911| 精品国产sm最大网站| 久久精品网站免费观看| 中文字幕一区二区三区在线不卡| 亚洲欧洲韩国日本视频| 亚洲成av人影院| 久久国产欧美日韩精品| 日韩欧美的一区| 精品国产不卡一区二区三区| 亚洲国产精品99久久久久久久久 | 欧美年轻男男videosbes| 555www色欧美视频| 久久免费国产精品| 综合欧美一区二区三区| 亚洲aaa精品| 国产在线不卡视频| 99视频超级精品| 欧美日韩激情在线| 欧美精品一区二区高清在线观看 | 看电视剧不卡顿的网站| 国产精品888| 欧美性大战久久久| 欧美va亚洲va在线观看蝴蝶网| 国产亚洲一区二区三区四区| 一区二区三区中文字幕电影| 人人精品人人爱| www.久久久久久久久| 欧美欧美午夜aⅴ在线观看| 久久久综合视频| 亚洲国产成人av网| 国产成人在线视频网址| 欧美日韩一区二区三区在线看| 精品国产成人在线影院| 一二三区精品福利视频| 国产精品1区2区3区在线观看| 91成人国产精品| 国产日产欧美一区| 亚洲一区二区免费视频| 国产福利一区二区三区在线视频| 欧美女孩性生活视频| 国产精品久久久久久久午夜片| 日韩精品欧美成人高清一区二区| av不卡一区二区三区| 精品日韩成人av| 亚洲综合999| 国产999精品久久久久久绿帽| 欧美日韩精品专区| 亚洲三级视频在线观看| 国产乱码精品一区二区三区忘忧草 | 欧美日韩精品一区二区天天拍小说| 久久久综合网站| 热久久一区二区| 欧美日韩一区二区三区不卡| 欧美激情一区在线观看| 九九国产精品视频| 91精品在线麻豆| 亚洲国产一区在线观看| 91麻豆产精品久久久久久| 国产精品欧美一区喷水| 国产一区二区视频在线| 日韩欧美一区二区视频| 亚洲成人午夜电影| 欧美优质美女网站| 亚洲素人一区二区| thepron国产精品| 国产精品美女久久久久aⅴ| 国产呦萝稀缺另类资源| 精品国产一区二区三区四区四| 日本aⅴ精品一区二区三区 | 国产精品天天看| 久88久久88久久久| 日韩视频中午一区| 全国精品久久少妇| 91精品午夜视频| 日韩福利视频网| 欧美精品第1页| 日韩国产在线观看一区| 欧美日本视频在线| 亚洲国产日日夜夜| 欧美日韩日日骚| 香港成人在线视频| 欧美色爱综合网| 99精品国产99久久久久久白柏| 欧美国产禁国产网站cc| 懂色av中文一区二区三区| 欧美国产日产图区| 99re成人精品视频| 一区二区三区在线高清| 欧美亚洲综合色| 日韩高清国产一区在线| 日韩欧美视频一区| 国产精品一区专区| 国产精品不卡一区二区三区| aa级大片欧美| 亚洲国产精品久久艾草纯爱| 欧美精品v国产精品v日韩精品 | 久久成人麻豆午夜电影| 精品成人免费观看| 成人激情文学综合网| 国产精品第一页第二页第三页| 色综合色狠狠综合色| 亚洲一级二级三级| 欧美精品自拍偷拍| 久久99在线观看| 国产精品超碰97尤物18| 欧美日韩另类一区| 国内成+人亚洲+欧美+综合在线| 国产色爱av资源综合区| 成人av电影免费在线播放| 亚洲一区日韩精品中文字幕| 91精品国产综合久久香蕉的特点| 极品少妇xxxx偷拍精品少妇| 欧美极品美女视频| 欧美日韩午夜影院| 国产做a爰片久久毛片| 亚洲免费观看高清完整版在线| 欧美日韩国产美| 国产成人综合网| 亚洲成人av在线电影| 久久久久久久一区| 欧洲激情一区二区| 国产在线麻豆精品观看| 亚洲另类一区二区| 日韩视频免费观看高清完整版在线观看| 国产黑丝在线一区二区三区| 亚洲免费观看高清| 精品国产一二三| 久久久久久一二三区| 欧美日韩日日骚| 国产成人av电影免费在线观看| 一区二区三区91| 久久久久国产成人精品亚洲午夜| 在线观看亚洲a| 国产精品亚洲专一区二区三区| 亚洲码国产岛国毛片在线| 日韩欧美在线综合网| 色妞www精品视频| 国产一区高清在线| 亚洲国产三级在线| 国产精品久久久久久久久图文区| 欧美人xxxx| 色综合网站在线| 国产一区二区福利视频| 日韩精品1区2区3区| 亚洲毛片av在线| 国产精品丝袜一区| 精品国产123| 91麻豆精品国产91久久久久| 91麻豆视频网站|