原因是因为spring对象的创建都是以单例模式创建的,但是websocket的创建是spring启动是创建一次,然后每一个用户连接,都会创建一次webscket对象,所以当你启动项目时,你想要注入的对象已经注入进去,但是当用户连接是,新创建的websocket对象没有你要注入的对象,所以会报NullPointerException
private static PlanningAirspaceUtil planningAirspaceUtil;
@Autowired
public void setChatService(PlanningAirspaceUtil planningAirspaceUtil) {
WebSocketServer.planningAirspaceUtil = planningAirspaceUtil;
}