自動注入

惊朝發表於2024-04-27

建構函式注入:

public class CartServiceImpl extends ServiceImpl<CartMapper, Cart> implements ICartService {
    private RestTemplate restTemplate;
    public CartServiceImpl(RestTemplate restTemplate) { //  上面這行和本行加起來相當於@Autowired,解決了@Autowired波浪線問題
        this.restTemplate = restTemplate;
    }
}

建構函式存在一個問題,就是當有其它的不需要注入的變數的時候,它也會在建構函式里面初始化,為了解決這個問題(不能用@AllArgsConstructor註解哦),只需要給需要注入的變數加上final修飾,並加上@RequiredArgsConstructor註解,也可以實現自動注入:

@RequiredArgsConstructor
public class CartServiceImpl extends ServiceImpl<CartMapper, Cart> implements ICartService {
    private RestTemplate restTemplate;
}

相關文章