websocket连接mysql_websocket 使用 spring 的service层 ,进而调用里面的 dao层 来操作数据库 ,包括redis、mysql等通用...
1.前言
描述一下今天用websocket踩得坑 ---》空指针异常!
我想在websocket里面使用service 层的接口,从中获取数据库的一些信息 ,
使用 @Autowired 注解 接口 ,报错 空指针异常 !!!
查过资料才发现 ,websocket 无法使用注解注入bean ,因为每一次websocket的握手连接就像是new了一个对象,对是全新的
2.网上查找的代码 测试无法使用,截图留下笔记
然后去百度 博客 寻找解决答案 ,基本都是要重写 ApplicationContextAware 接口的方法 ,
测试发现仍然报空指针异常,抓取异常内容甚至为空找不到异常原因。。。
网上 提供的代码截图 :
使用方法:
报错结果;
3 .真正的解决办法 :
使用 ContextLoader.getCurrentWebApplicationContext().getBean( 【服务名称.class】); 即可
就这么简单,效率还高 !!!
测试截图:
但是有一个注意的地方,经过测试 这里的 getbean()方法里面只能使用 service的接口名,并且以 【 service名称.class 】 为key才可以, 无法使用 【serviceImpl.class】
并且 字符串 key也无法使用 【“service”】 【 “serviceImpl” 】都不能使用
原因不知道 ,百度 、博客都找不到关于这个的资料 ,以此为记录!
-------------------------
幸好 ,可以正常使用 ,感动的要哭
-------------------------
这得感谢一位博主的知识分享 ,原址 :https://blog.csdn.net/kxj19980524/article/details/85108047
websocket连接mysql_websocket 使用 spring 的service层 ,进而调用里面的 dao层 来操作数据库 ,包括redis、mysql等通用...相关推荐
- Spring Boot开发基于三层架构设计:Dao层、Service层、Controller层
三层架构设计:基于Spring Boot开发要使用三层架构: 数据访问层(Dao).业务逻辑层(Service).控制层(Control-ler) (1)数据访问层(Dao):Dao层是最底层的设计, ...
- python 连接hive_《go语言从入门到入坟》Go 操作 数据库、Redis、HDFS
楔子 这里我们来介绍一下如何使用 Go 连接数据库.Redis.HDFS,当然数据库.Redis.HDFS本身我们就不介绍了,这里我们主要介绍如何使用 Go 进行连接并执行相应操作. Go 操作数据库 ...
- java语言的Dao层设计(一)—— Dao层基本结构设计
Dao层--数据访问层 Dao层是具体到每个操作,每个表的增删查改.那怎么写这个数据访问层呢?首先是数据库的设计以及所计划实现的功能,之后是IBean.IDao这两个基础接口以及这两个接口的实现,再之 ...
- service层直接调用service层还是dao层
问题引入: java web项目开发中spring service层直接调用service层还是dao层,哪个更合理? 一.初步理解 service层作为一个业务逻辑处理层,我若直接调用dao层,那么 ...
- Spring整合Mybatis之DAO层、Service层开发
3. Spring整合Mybatis编程DAO层开发 1. 项目引入相关依赖spring mybatis mysql mybatis-spring druid2. 编写spring.xml整合:spr ...
- Spring boot 三层框架dao层、service层、controller层+实体model层
Spring boot 三层框架dao层.service层.controller层+实体model层 model层 dao层 service层 controller层 首先创建一个springboot ...
- java action dao_java中Action层、Service层和Dao层的功能区分
一.Action/Service/DAO简介: Action是管理业务(Service)调度和管理跳转的. Service是管理具体的功能的. Action只负责管理,而Service负责实施. DA ...
- [转]JAVA中Action层, Service层 ,modle层 和 Dao层的功能区分
首先这是现在最基本的分层方式,结合了SSH架构.modle层就是对应的数据库表的实体类.Dao层是使用了Hibernate连接数据库.操作数据库(增删改查).Service层:引用对应的Dao数据库操 ...
- Entity层、DAO层、Service层、Controller层 先后顺序
写法顺序: 1.数据库表 2.实体层 3.DAO层写接口 4.Mapper层写和DAO层对应的映射规则,即SQL和POJO的映射规则.其中<select>元素定义的resultType指向 ...
最新文章
- Codeforces Round #372 (Div. 2), problem: (B) Complete the Word
- IT人士的人际关系压力
- [示例]NSDictionary-按value排序数组中的字典并输出(描述器)
- 国内35所人工智能学院大盘点
- mysql内连接简写_技术分享 | MySQL 的 join_buffer_size 在内连接上的应用
- USACO Training Section 1.2 双重回文数 Dual Palindrom
- python导出项目所依赖的所有的库文件以及安装
- python嵩天第七章课后题答案_python语言程序设计嵩天第七章答案
- 腾讯QQ空间g_tk算法
- [机器学习]京东机器学习类图书畅销原因分析-决策树或随机森林
- 学习C++项目—— 计算机网络编程基础 和 学习多线程,多进程基础
- ado控件连接mysql_VB利用ADO控件连接access数据库
- 解决Mac App Store下载软件一直转圈无法完成的问题,黑白苹果均有效
- fortran程序设计2011年注册电气工程师基础考试大纲3
- Solidworks 2015 安装教程
- UI 设计师不容错过的12款APP UI 交互设计
- 操作系统与网络协议晦涩难懂,华为18级工程师神级文档助你过关
- Axios的二次封装(简单易懂)
- 小程序--时间处理(显示几分钟前,,几小时前,,几天前...)
- P1719 最大加权矩形(二维前缀和Java)
热门文章
- 消息队列(3):RabbitMQ
- 历年高考报考人数和录取人数
- JAVA进阶教学之(Enum枚举类)
- Linux的实际操作:文件目录类的实用指令(重定向“>“和追加“>>“)
- 计算机主板开机接线端子,装机必看,机箱前置面板接线向导,不怕再接错线了...
- java getselecteditem_java – 将getSelectedItem()从JComboBox转换为int或任何其他东西
- python函数代码_如何显示Python函数的代码?
- python中的with open读取表格文件_python 使用 with open() as 读写文件
- tracepro杂散光分析例子_光刻机的蜕变过程及专利分析
- c++ 单例模式_Redis单例、主从模式、sentinel以及集群的配置方式及优缺点对比