This question might seem a little odd. Suppose I have a Service which I want to use in a Utility class that has some static methods. The Service is a Spring bean, so naturally I
You have no choice. If you want to initialize a static
field of a class, you will have to let Spring create an instance of that class and inject the value.
A little advice. There really isn't any reason for you to be using static
methods in this case. If you want a singleton utility, just make your bean have singleton
scope.
You can't autowire static field.
But you can make a little workaround:
@Component
public class JustAClass{
private static Service service;
@Autowired
private Service tmpService;
@PostConstruct
public void init() {
service = tmpService;
}
}
Note, that you have to declare this class as "Component" to inject tmpService