websocket注入service对象的方法

在websocket中无法使用spring的注解注入bean对象,可能是它底层实现的时候不受spring管理,跟junit一个道理在junit测试里面也是无法使用注入bean方式注入进来,但是使用springboot开发的话,就可以了,springboot应该是管理这个websocket可以直接注入的.
不止是注入service对象,注入所有对象都得这么弄,还是第一种方法方便点,第一种和第二种的区别就是,第一种是获取到tomcat在初始化spring容器时的那个对象然后获取的bean对象,第二种是又实例化了一个spring容器获取的bean对象,所以第一种肯定性能好.
第一种,通过ContextLoader获取,直接在上面声明或者方法中获取都可以,
websocket注入service对象的方法

private Ops_chatService chat = (Ops_chatService) ContextLoader.getCurrentWebApplicationContext().getBean(“ops_chatServiceImpl”);

第二种,通过加载spirng配置文件,加载完之后再获取bean,这种性能较差,不建议使用 ,
ApplicationContext ac = new ClassPathXmlApplicationContext(“application.xml”);
Ops_chatServicee bean = (Ops_chatService)ac.getBean(“ops_chatServiceImpl”);
上面是SSM注入的方式
Springboot注入方式又不同,将要注入的service设置成静态的变量,然后在配置类中注入进去.

websocket注入service对象的方法
websocket注入service对象的方法

原文链接:https://blog.****.net/kxj19980524/article/details/85108047