spring boot core

漫漫长路</>發表於2024-11-13

1.

最快的例子

Coach介面

package com.example18.example_18;

public interface Coach {
    String getDailyWorkout();
}

CricletCoach 類對介面的實現

package com.example18.example_18;

import org.springframework.stereotype.Component;

@Component
public class CricketCoach  implements  Coach{

    @Override
    public String getDailyWorkout() {
        return "Practice fast bowling for 15";
    }
}

DemoCotroller控制器,構建函式的注入

package com.example18.example_18;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
public class DemoController {
    private Coach myCoach;

    @Autowired
    public  DemoController(Coach theCoach){
        myCoach = theCoach;
    }
    @GetMapping("/dailvworkout")
    public String getDailyWorkout(){
        return myCoach.getDailyWorkout();
    }
}

執行結果

2. 如果你有很多不同的類對Coach介面實現,比如你要指定CricletCoach ,你要在前面加上

@Qualifier("cricketCoach")

另外一個可替代方案,不要Qualifier,加上 @Primary

3. 延遲bean初始化

這裡全域性配置

或者使用@lazy

4. bean的生命週期,作用域singleton

上面加上@Scope就是false了

5.方法的配置

@postConstruct

@PreDestroy

6.開發流程

建立 配置類

定義一個@Bean方法

將bean注入我們的控制器中

在 Spring 中,@Configuration 註解用於定義一個配置類,這個類主要用於配置和管理 Bean。被 @Configuration 註解的類會被 Spring 容器識別並用來生成 Bean,這些 Bean 可以在整個應用中作為單例使用。

可以把Bean加上id

這裡使用

相關文章