【Spring 從0開始】Spring5 新功能 - @Nullable 注解和函數式注冊對象


一、@Nullable 注解

@Nullable 注解可以使用在方法、屬性、參數上,分別表示方法返回可以為空、屬性值可以為空、參數值可以為空。

我們可以在源碼里找到很多示例。

1. 用在方法上

方法的返回值可以為空。

2. 用在參數上

參數可以為空。

3. 用在屬性上

屬性值可以為空。

二、支持函數式風格

比如這里有一個類:

public class User {
    public static void main(String[] args) {
        User user = new User();
    }
}

在 main 方法里手動創建了一個對象,但是這個並沒有交給 spring 管理,因為沒有注冊。

spring5 里支持函數式風格創建對象,並交給 spring 來管理。

    @Test
    public void testGeneric() {
        // 創建 GenericApplicationContext 對象
        GenericApplicationContext context = new GenericApplicationContext();

        // 調用 context 對象的方法進行注冊,用 Lambda 表達式
        context.refresh();
        context.registerBean("user1", User.class, () -> new User());

        // 獲取在 spring 中創建的對象
        User user = (User) context.getBean("user1");
        System.out.println(user);
    }

運行測試:

com.pingguo.spring5.test.User@76707e36

Process finished with exit code 0


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM