国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

java bean 對象屬性復制框架BeanMapping-01-入門案例

hot_pot_Leo / 1523人閱讀

摘要:項目簡介用于對象屬性賦值。示例代碼對象的定義其中對象和對象的屬性是相同的。名稱年齡生日字符串列表屬性賦值測試案例我們構建的屬性,然后調用類似于和,并驗證結果符合我們的預期。

項目簡介

Bean-Mapping 用于 java 對象屬性賦值。

項目中經常需要將一個對象的屬性,賦值到另一個對象中。

常見的工具有很多,但都多少不夠簡潔,要么不夠強大。

特性

支持對象屬性的淺拷貝

變更日志
變更日志
快速開始 準備

JDK1.8 及其以上版本

Maven 3.X 及其以上版本

maven 項目依賴

    com.github.houbb
    bean-mapping-core
    0.0.1
核心類說明 BeanUtil

提供一個簡單的靜態方法 copyProperties。

/**
 * 復制屬性
 * 將 source 中的賦值給 target 中名稱相同,且可以賦值的類型中去。類似于 spring 的 BeanUtils。
 * @param source 原始對象
 * @param target 目標對象
 */
public static void copyProperties(final Object source, Object target)
測試代碼參考

詳情參見 bean-mapping-test 模塊下的測試代碼。

示例代碼 對象的定義

BaseSource.java & BaseTarget.java

其中 BaseSource 對象和 BaseTarget 對象的屬性是相同的。

public class BaseSource {

    /**
     * 名稱
     */
    private String name;

    /**
     * 年齡
     */
    private int age;

    /**
     * 生日
     */
    private Date birthday;

    /**
     * 字符串列表
     */
    private List stringList;
    
    //getter & setter
}
屬性賦值測試案例

我們構建 BaseSource 的屬性,然后調用

BeanUtil.copyProperties(baseSource, baseTarget);

類似于 spring BeanUtils 和 Apache BeanUtils,并驗證結果符合我們的預期。

    /**
     * 基礎測試
     */
    @Test
    public void baseTest() {
        BaseSource baseSource = buildBaseSource();
        BaseTarget baseTarget = new BaseTarget();
        BeanUtil.copyProperties(baseSource, baseTarget);

        // 斷言賦值后的屬性和原來相同
        Assertions.assertEquals(baseSource.getAge(), baseTarget.getAge());
        Assertions.assertEquals(baseSource.getName(), baseTarget.getName());
        Assertions.assertEquals(baseSource.getBirthday(), baseTarget.getBirthday());
        Assertions.assertEquals(baseSource.getStringList(), baseTarget.getStringList());
    }

    /**
     * 構建用戶信息
     * @return 用戶
     */
    private BaseSource buildBaseSource() {
        BaseSource baseSource = new BaseSource();
        baseSource.setAge(10);
        baseSource.setName("映射測試");
        baseSource.setBirthday(new Date());
        baseSource.setStringList(Arrays.asList("1", "2"));
        return baseSource;
    }

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/73387.html

相關文章

  • Spring筆記01_下載_概述_監聽器

    摘要:簡單來說,是一個輕量級的控制反轉和面向切面的容器框架。變成的支持提供面向切面編程,可以方便的實現對程序進行權限攔截,運行監控等功能。用于反射創建對象,默認情況下調用無參構造函數。指定對象的作用范圍。 1.Spring介紹 1.1 Spring概述 Spring是一個開源框架,Spring是于2003 年興起的一個輕量級的Java 開發框架,由Rod Johnson 在其著作Expert...

    reclay 評論0 收藏0
  • Spring IOC知識點一網打盡!

    摘要:使用的好處知乎的回答不用自己組裝,拿來就用。統一配置,便于修改。 前言 只有光頭才能變強 回顧前面: 給女朋友講解什么是代理模式 包裝模式就是這么簡單啦 單例模式你會幾種寫法? 工廠模式理解了沒有? 在刷Spring書籍的時候花了點時間去學習了單例模式和工廠模式,總的來說還是非常值得的! 本來想的是刷完《Spring 實戰 (第4版)》和《精通Spring4.x 企業應用開發實戰》...

    djfml 評論0 收藏0
  • 慕課網_《Spring入門篇》學習總結

    摘要:入門篇學習總結時間年月日星期三說明本文部分內容均來自慕課網。主要的功能是日志記錄,性能統計,安全控制,事務處理,異常處理等等。 《Spring入門篇》學習總結 時間:2017年1月18日星期三說明:本文部分內容均來自慕課網。@慕課網:http://www.imooc.com教學示例源碼:https://github.com/zccodere/s...個人學習源碼:https://git...

    Ververica 評論0 收藏0
  • java bean 對象屬性復制框架BeanMapping-release_0.0.2-注解支持

    摘要:只有同時生效時,才會發生賦值。具體的生效實現類型轉換默認不進行轉換為了確保轉換的確定性靈活性。對象中指定這個屬性,不會改變對象的屬性值和類型。 BeanMapping 為了更加靈活的指定映射方式,0.0.2 版本引入了 @BeanMapping 注解。 注解的定義 注解定義在 bean-mapping-api 模塊中,bean-mapping-core 會默認引入此模塊。 packag...

    leap_frog 評論0 收藏0
  • Java Bean Validation

    摘要:表達式語言依賴關系提供對變量插值的支持,允許在違規消息中使用表達式。這是當相應屬性的值未通過驗證時通常會呈現的消息。任何違反對象中定義的約束的行為都將作為返回。案例結論本文重點介紹了標準的簡單傳遞,并使用注釋和說明了驗證的基礎知識。 案例概述 在這本文中,我們將介紹使用標準框架驗證Java bean的基礎知識 - JSR 380,也稱為Bean Validation 2.0。 當然,驗...

    Imfan 評論0 收藏0

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<