websocket连接mysql_websocket 使用 spring 的service层 ,进而调用里面的 dao层 来操作数据库 ,包括redis、mysql等通用...

1.前言

描述一下今天用websocket踩得坑  ---》空指针异常!

我想在websocket里面使用service 层的接口,从中获取数据库的一些信息  ,

使用 @Autowired 注解 接口  ,报错 空指针异常  !!!

查过资料才发现 ,websocket 无法使用注解注入bean ,因为每一次websocket的握手连接就像是new了一个对象,对是全新的

2.网上查找的代码 测试无法使用,截图留下笔记

然后去百度 博客 寻找解决答案  ,基本都是要重写  ApplicationContextAware 接口的方法  ,

测试发现仍然报空指针异常,抓取异常内容甚至为空找不到异常原因。。。

网上 提供的代码截图 :

2899c7548a6ba4fb4fff2856009ff197.png

使用方法:

6df4ac0da1655e1f9ae2cb65a7b818b8.png

报错结果;

80258e15252581d9ff36c658f085abba.png

3 .真正的解决办法  :

使用 ContextLoader.getCurrentWebApplicationContext().getBean( 【服务名称.class】);  即可

69e55db6e9772c380a2474eadb0e9eee.png

就这么简单,效率还高 !!!

测试截图:

a73fb1fa7c824ba917c3f52453e91142.png

但是有一个注意的地方,经过测试  这里的 getbean()方法里面只能使用 service的接口名,并且以 【 service名称.class 】 为key才可以, 无法使用  【serviceImpl.class】

并且  字符串 key也无法使用  【“service”】 【 “serviceImpl” 】都不能使用

原因不知道  ,百度 、博客都找不到关于这个的资料  ,以此为记录!

-------------------------

幸好 ,可以正常使用  ,感动的要哭

-------------------------

这得感谢一位博主的知识分享  ,原址  :https://blog.csdn.net/kxj19980524/article/details/85108047

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/508292.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

世上最简单的mysql_最简单易懂的mysql安装教程

今天安装MySQL花了蛮长时间的,感觉坑还是挺多的,写遍文章总结一下。一、安装1.解压zip包到安装目录先从MySQL官网 下载mysql最新的免安装版压缩包解压之后变成这个样子:里面的文件是这个样子下面开始了,请注意2.配置文件在安装目录…

aix系统升级失败提示java_AIX系统补丁升级失败处理

问题描述:现网一台IBM P550小型机,初始版本通过oslevel –r命令检查为5300-02,在IBM官方网站下载5300-06补丁并升级到5300-06后系统报错,缺少sysmgt.websm.apps 5.3.0.60,sysmgt.websm.rte 5.3.0.60两个文件问题处理&a…

java arraylist char,Java基础学习笔记六 Java基础语法之类和ArrayList详解

引用数据类型引用数据类型分类,提到引用数据类型(类),其实我们对它并不陌生,如使用过的Scanner类、Random类。我们可以把类的类型为两种:第一种,Java为我们提供好的类,如Scanner类,Random类等&a…

matlab 数值解 期权顶级啊,潮盈期权院高胜率交易技巧系列之二----期权交易策略及基于MATLAB统计套利介绍...

主题:高胜率交易技巧系列之二----期权交易策略及基于MATLAB统计套利介绍会场流程:13:30--14:00:参会嘉宾到场签名14:00--14:45:期权知识14:45--15:25:期权交易策略使用15:25--15:35:茶歇15:35--16:35&#…

php的用例图箭头怎么画,需求中如何画用例图 - china008的个人空间 - OSCHINA - 中文开源技术交流社区...

UML用例图用例图主要用来图示化系统的主事件流程,它主要用来描述客户的需求,即用户希望系统具备的完成一定功能的动作,通俗地理解用例就是软件的功能模块,所以是 设计系统分析阶段的起点,设计人员根据客户的需求来创建…

oracle学习数据,Oracle从入门到精通的学习笔记

本次知识点:1.认识SQL的介绍2.掌握scott用户的数据结构3.查询语句之简单查询1.SQL:SQL是指结构化查询语言,在80年代的时候,基本存在80多种数据库,每一种数据库都有自己的的操作命令,也就导致了程序员从一个数据库到另一个数据库的转化时变的极为麻烦,基本就要从新学习.在70年代…

强行更改linux服务器时间,加强Linux服务器安全的20项建议

一般情况下用 Linux 做桌面在默认配置下是很安全的,我在一定程度上同意这个说法(很值得商榷的话题)。不过 Linux 内置的安全模型和工具做得确实很到位,用户只需进行简单的调整和自定义就可以加强 Linux 服务器安全。与恶意用户做斗争对于所有 Linux 系统…

linux终端提示符含义,Linux:终端提示符 (prompt) 不如期生效原因

前言先来简单介绍下, prompt是什么鬼? 顾名思义就是提示符的意思, 看起来和我们遥远, 但实际上只要是每个接触shell的童鞋, 都有看到, 那就是我们在输命令时前面的那串提示符.例如:当然, 这个样式是可以修改的, 这就涉及到我们的PS1和PS2了, 有经验或者以前有设置过的童鞋估计…

skyeye linux qt,ARM仿真器SkyEye的安装及使用

SkyEye是一个开源软件(OpenSource Software)项目,中文名字是"天目"。SkyEye的目标是在通用的Linux和Windows平台上实现一个纯软件集成开发环境,模拟常见的嵌入式系统,可在SkyEye上运行μCLinux以及μC/OS-II等,以及各种…

2g 双核电脑 linux,9208)(奔腾双核E5200/2G/320G)电脑详细技术

处理器型:intel 酷睿2双核 p7350 intel 酷睿2双核 p7450 intel 酷睿2双核 t6600 intel 奔腾双核t4300 intel 奔腾双核 t4400 intel 赛扬双核 t1600 intel 赛扬双核 t3000操作系统:windowsvista home basic dos标配内存:1gb 2gb 硬盘容量&…

linux apache 大文件,Apache下error.log文件太大的处理方法

Apache下error.log文件太大的处理方法2019年05月03日| 萬仟网网络运营| 我要评论清除error.log、access.log并限制apache日志文件大小的方法 有个客户反映vps网站打不开,登录系统检查下,客户是win2003系统,发现放置网站文件的清除error.log、…

c语言程序设计实践课选题,c语言程序设计实践实验题目

c语言程序设计实践实验题目 绥化学院程序设计实践实验报告范例 参考1实验题目:循环结构程序设计实验目的:1.熟悉 VC6.0 的运行环境,掌握 C 程序的执行方法;2.掌握三种基本数据类型、部分运算符号和常用函数;3.掌握三种…

c语言上机指导答案清华,第一章自测练习答案清华大学c语言习题实验指导及课程设计...

第一章自测练习答案清华大学c语言习题实验指导及课程设计 第一章 自测练习参考答案 一.简答题 1.源程序是程序员创建的,目标程序是编译器创建的,可执行程序是连接器创建的。 2.步骤如下:1)说明程序需求&…

k6前级效果器怎么用_新手学习电吉他,效果器应选择单块还是综合?

作为一个新手来说,我建议一开始先选择综合型效果器。这里我们先简单介绍下综合效果器与单块效果器。综合效果器可以理解为多个单块的综合体,即包含了很多种效果。一块大综合效果器可能就有三四十种预置音色,有过载、失真、法滋、延迟、混响、…

android百度多渠道打包,Android多渠道打包方案的实践与优化

目前使用过的多渠道打包方式有两种 ,一种是通过gradle打包,还有一种是美团的多渠道打包方案具体详情见这里1、Gradle打包1.1、在Androidmanifest.xml中添加android:name"UMENG_CHANNEL"android:value"${UMENG_CHANNEL_VALUE}" />…

一张图 综合交通 解决方案_航天智慧环保 | 重庆跳蹬河智慧水务管理系统解决方案—应用篇...

导读随着社会信息化趋势的不断增强,信息社会作为人类社会环境的一个重要方面,在社会中的地位和作用日益显著。在环境监测领域,对有效信息的把握以及正确的使用与水污染的防治和水环境的管理密切相关。航天智慧公司发挥航天系统工程优势&#…

oc 画一个圆弧_用SolidWorks画的塑料衣架,要用到不少让人头疼的曲线

此图是用SolidWorks2015建模,用KeyShot 8渲染。SW文件在2019年12月3日文件夹。零件一:1.在前视基准面上画样条曲线。2.在右视基准面上画样条曲线。(曲面放样的轮廓)3.新建基准面,参考样条曲线和紫色端点。4.在新基准面上画样条曲线。5.新建基…

红米android4.4.2,新版红米Note配置升级详解:系统其实是基于Android 4.4.2

新版红米Note今天中午,小米正式发布了4G版红米Note,由于该机早就出现在了工信部,因此较早一些的传闻显示该机在7月22日的发布会上就会和我们见面,但最终还是让我们多等了小半个月。和原版有所不同的是,4G版红米Note只有…

批量引号_RcoketMQ 批量发送和消息过滤

一、批量发送消息1、批量发送消息要求参考官方文档:http://rocketmq.apache.org/docs/batch-example/① 不能是延迟消息② 有相同的 Topic 和 waitStoreMsgOK(默认是 true,消息发送时,是否等待消息存储完成后再返回)③ 消息总大小不超过 1MB2…

msflexgrid允许大选择_特大型矿井提升机结构和布置方式的选择

导语:结合葫芦素矿井主井提升系统的设计,介绍了内装式提升机和直联悬挂式提升机的结构特点,比较了塔式提升机和落地式提升机的布置方式,对大型立井提升系统提升机结构和布置方式提出了自己的观点,条件允许时内装式提升…