我在方法后得到空的日志服务。
我使用了@ Component,@ ComponentScan,@ Service和@Configuration,但是没有一个起作用。
这是我的监听器类
@Component
public class LogOrder {
private static LogService logService;
@Autowired
public void setLogService(LogService logService) {
LogOrder.logService = logService;
}
@PostUpdate
private void after(Order order) {
logService.log("Logged");
}
}
这是我的实体课
@EntityListeners(LogOrder.class)
@Entity
public class Order{
}
这是LogService接口及其实现
public interface LogService {
void send("");
}
@Service(value = "logService")
public class LogServiceImpl implements LogService {
private final SomeOtherService someOtherService;
@Autowired
public LogServiceImpl(SomeOtherService someOtherService) {
this.someOtherService = someOtherService;
}
public void send(String someText) {
SomeTemplate someTemplate = someOtherService.someTemplate();
someTemplate.convertAndSend(someText);
}
}
我该怎么办才能使LogService不为null。
最佳答案
您正在尝试自动连接静态字段。
private static LogService logService;
从属性中删除静态。