关于Springboot的@Service注入的方式

1. 最近在写代码过程中发现Service注入的方式原来有这么多种的,所以记录一下这些方式。

2. 最常用的就是这种直接用@AutoWire的方式了:

@Service
public class TestServiceImp implements TestService {
    //
}

@RestController
public class TestController {

    @AutoWired
    private TestService testService;
	
}

3. 当我们用一个interface有多个实现类,然后注入的时候可以这样:

@Service("testService")
public class TestServiceImp implements TestService {
}

@RestController
public class TestController {

    @AutoWired
    private TestService testService; // 这个变量名testService和@Service("")的命名一致
	
}

4. 也可以用@Resource来注入:

@Service("testService")
public class TestServiceImp implements TestService {
}

@RestController
public class TestController {

    @Resource(name = "testService") // 这个值testService和@Service("")的命名一致
    private TestService testService;
	
}

5. 还有,这种简单的方式也是可以的。

@Service
public class TestServiceImp implements TestService {
}

@RestController
public class TestController {

    @AutoWire
    private TestServiceImpl testService;
	
}

 


版权声明:本文为BAStriver原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。