亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

java 對象參數(shù)去空格方式代碼實(shí)例

 更新時(shí)間:2019年10月16日 15:07:45   作者:全力以赴001  
這篇文章主要介紹了java 對象參數(shù)去空格方式代碼實(shí)例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下

這篇文章主要介紹了java 對象參數(shù)去空格方式代碼實(shí)例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下

import java.lang.reflect.Field;
import java.lang.reflect.Method;

public class Test {

  /**
   * 去掉bean中所有屬性為字符串的前后空格
   *
   * @param bean
   * @throws Exception
   */
  public static void beanAttributeValueTrim(Object bean) throws Exception {
    if (bean != null) {
      //獲取所有的字段包括public,private,protected,private
      Field[] fields = bean.getClass().getDeclaredFields();
      for (int i = 0; i < fields.length; i++) {
        Field f = fields[i];
        if (f.getType().getName().equals("java.lang.String")) {
          String key = f.getName();
          //獲取字段名
          Object value = getFieldValue(bean, key);

          if (value == null)
            continue;

          setFieldValue(bean, key, value.toString().trim());
        }
      }
    }
  }

  /**
   * 利用反射通過get方法獲取bean中字段fieldName的值
   *
   * @param bean
   * @param fieldName
   * @return
   * @throws Exception
   */
  private static Object getFieldValue(Object bean, String fieldName)
      throws Exception {
    StringBuffer result = new StringBuffer();
    String methodName = result.append("get")
        .append(fieldName.substring(0, 1).toUpperCase())
        .append(fieldName.substring(1)).toString();

    Object rObject = null;
    Method method = null;

    @SuppressWarnings("rawtypes")
    Class[] classArr = new Class[0];
    method = bean.getClass().getMethod(methodName, classArr);
    rObject = method.invoke(bean, new Object[0]);

    return rObject;
  }

  /**
   * 利用發(fā)射調(diào)用bean.set方法將value設(shè)置到字段
   *
   * @param bean
   * @param fieldName
   * @param value
   * @throws Exception
   */
  private static void setFieldValue(Object bean, String fieldName, Object value)
      throws Exception {
    StringBuffer result = new StringBuffer();
    String methodName = result.append("set")
        .append(fieldName.substring(0, 1).toUpperCase())
        .append(fieldName.substring(1)).toString();

    //利用反射調(diào)用bean.set方法將value設(shè)置到字段
    @SuppressWarnings("rawtypes")
    Class[] classArr = new Class[1];
    classArr[0] = "java.lang.String".getClass();
    Method method = bean.getClass().getMethod(methodName, classArr);
    method.invoke(bean, value);
  }

}

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • 以實(shí)例簡介Java中線程池的工作特點(diǎn)

    以實(shí)例簡介Java中線程池的工作特點(diǎn)

    這篇文章主要介紹了以實(shí)例簡介Java中線程池的工作特點(diǎn),線程池是Java實(shí)現(xiàn)多線程編程的基礎(chǔ),需要的朋友可以參考下
    2015-09-09
  • SpringBoot編譯target目錄下沒有resource下的文件踩坑記錄

    SpringBoot編譯target目錄下沒有resource下的文件踩坑記錄

    這篇文章主要介紹了SpringBoot編譯target目錄下沒有resource下的文件踩坑記錄,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-08-08
  • PowerJob的ProcessorLoader工作流程源碼解讀

    PowerJob的ProcessorLoader工作流程源碼解讀

    這篇文章主要為大家介紹了PowerJob的ProcessorLoader工作流程源碼解讀,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-12-12
  • MyBatis根據(jù)條件批量修改字段的方式

    MyBatis根據(jù)條件批量修改字段的方式

    這篇文章主要介紹了MyBatis根據(jù)條件批量修改字段的方式,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-02-02
  • Mybatis如何傳入多個(gè)參數(shù)的實(shí)現(xiàn)代碼

    Mybatis如何傳入多個(gè)參數(shù)的實(shí)現(xiàn)代碼

    這篇文章主要介紹了Mybatis如何傳入多個(gè)參數(shù)的實(shí)現(xiàn)代碼,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-12-12
  • 以Json形式的數(shù)據(jù)格式實(shí)現(xiàn)JMeter參數(shù)化

    以Json形式的數(shù)據(jù)格式實(shí)現(xiàn)JMeter參數(shù)化

    本文以小項(xiàng)目學(xué)院管理系統(tǒng)為例,給大家分享以Json形式的數(shù)據(jù)格式實(shí)現(xiàn)JMeter參數(shù)化的相關(guān)知識,包括添加元件操作步驟及使用用戶參數(shù)組件實(shí)現(xiàn)參數(shù)化的方法,感興趣的朋友跟隨小編一起看看吧
    2021-05-05
  • Springboot異常日志輸出方式

    Springboot異常日志輸出方式

    這篇文章主要介紹了Springboot異常日志輸出方式,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-12-12
  • BeanUtils.copyProperties復(fù)制屬性失敗的原因及解決方案

    BeanUtils.copyProperties復(fù)制屬性失敗的原因及解決方案

    這篇文章主要介紹了BeanUtils.copyProperties復(fù)制屬性失敗的原因及解決方案,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-08-08
  • MyBatis批量插入的三種方式比較總結(jié)

    MyBatis批量插入的三種方式比較總結(jié)

    由于項(xiàng)目需要生成多條數(shù)據(jù),并保存到數(shù)據(jù)庫當(dāng)中,所以就用到了MyBatis批量插入,下面這篇文章主要給大家介紹了關(guān)于MyBatis批量插入的三種方式的相關(guān)資料,需要的朋友可以參考下
    2021-08-08
  • 使用Jitpack發(fā)布開源Java庫的詳細(xì)流程

    使用Jitpack發(fā)布開源Java庫的詳細(xì)流程

    這篇文章主要介紹了使用Jitpack發(fā)布開源Java庫的詳細(xì)流程,本文通過圖文實(shí)例代碼相結(jié)合給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-02-02

最新評論