溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

BeanUtils.copyProperties()參數的賦值順序實例分析

發(fā)布時間:2021-09-01 12:01:10 來源:億速云 閱讀:159 作者:chen 欄目:開發(fā)技術

本篇內容主要講解“BeanUtils.copyProperties()參數的賦值順序實例分析”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“BeanUtils.copyProperties()參數的賦值順序實例分析”吧!

目錄
  • BeanUtils.copyProperties()參數的賦值順序

  • BeanUtils.copyProperties初體驗,及其參數含義解釋

    • 用處

    • 案例: 創(chuàng)建一個源類:source

    • 創(chuàng)建一個目標target源類

    • 創(chuàng)建測試類test

    • ignoreProperties參數

    • 案例

    • 案例測試

BeanUtils.copyProperties()參數的賦值順序

BeanUtils.copyProperties(x,y)有兩個不同的jar包,引入不同的包,賦值的順序不一樣。

分別是:

org.springframework.beans.BeanUtils
org.apache.commons.beanutils.BeanUtils

引入 1 的話,是將 x 賦值給 y

引入 2 的話,是將 y 賦值給 x

BeanUtils.copyProperties初體驗,及其參數含義解釋

用處

BeanUtils.copyProperties是org.springframework.beans.BeanUtils;包下得一個用于對象間得屬性賦值,避免了常規(guī)操作得一個個get再set屬性值,非常好用

案例: 創(chuàng)建一個源類:source

 private String username;
    private String password;
    private String email;

    public String getUsername() {
        return username;
    }

    public void setUsername(String username) {
        this.username = username;
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }

    public String getEmail() {
        return email;
    }

    public void setEmail(String email) {
        this.email = email;
    }

    @Override
    public String toString() {
        return "book{" +
                "username='" + username + '\'' +
                ", password='" + password + '\'' +
                ", email='" + email + '\'' +
                '}';
    }
}

創(chuàng)建一個目標target源類

 private String username;
    private String password;
    private String email;

    public String getUsername() {
        return username;
    }

    public void setUsername(String username) {
        this.username = username;
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }

    public String getEmail() {
        return email;
    }

    public void setEmail(String email) {
        this.email = email;
    }

    @Override
    public String toString() {
        return "book{" +
                "username='" + username + '\'' +
                ", password='" + password + '\'' +
                ", email='" + email + '\'' +
                '}';
    }
}

創(chuàng)建測試類test

import com.sdqj.system_integration.domain.book;
import com.sdqj.system_integration.domain.book2;
import org.springframework.beans.BeanUtils;

public class test {
    public static void main(String[] args) {
        book bo=new book();
        bo.setEmail("1111");
        bo.setPassword("222");
        bo.setUsername("333");
        book2 bo2=new book2();
        BeanUtils.copyProperties(bo,bo2);
        System.out.println(bo.toString());
        System.out.println(bo2.toString());
    }
}

結果展示:

BeanUtils.copyProperties()參數的賦值順序實例分析

ignoreProperties參數

ignoreProperties參數意思是忽略某個參數,使其不被復制,可寫多個被忽略得參數

案例

import com.sdqj.system_integration.domain.book;
import com.sdqj.system_integration.domain.book2;
import org.springframework.beans.BeanUtils;

public class test {
    public static void main(String[] args) {
        book bo=new book();
        bo.setEmail("1111");
        bo.setPassword("222");
        bo.setUsername("333");
        book2 bo2=new book2();
        BeanUtils.copyProperties(bo,bo2,"username","password");
        System.out.println(bo.toString());
        System.out.println(bo2.toString());
    }

結果展示:

BeanUtils.copyProperties()參數的賦值順序實例分析

還有源代碼中得Class<?> editable參數,不太了解其中得含義,但只能放target(目標類)

案例測試

 public static void main(String[] args) {
        book bo=new book();
        bo.setEmail("1111");
        bo.setPassword("222");
        bo.setUsername("333");
        book2 bo2=new book2();
        BeanUtils.copyProperties(bo,bo2,book2.class);
        System.out.println(bo.toString());
        System.out.println(bo2.toString());
    }

結果如下:

BeanUtils.copyProperties()參數的賦值順序實例分析

到此,相信大家對“BeanUtils.copyProperties()參數的賦值順序實例分析”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續(xù)學習!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI