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;
}