springboot小白企业开发遇到问题了,求大神

小白刚开始学springboot,企业想要我们用springboot做个项目,我理解完感觉企业想要实现的东西有两样,但是想整合到一个项目里:第一个是服务器监听硬件设备,硬件设备会随时传回数据,我们需要将接收到的数据进行处理后存入MySQL的数据库;第二个是开发一个平台(系统),实现MySQL数据库里数据的基本CRUD操作。

现在我感觉第二个用springboot应该比较好实现,就是一般的开发流程,但是我不知道怎么将第一个任务整合进第二个项目里。

目前我做的是在springboot主方法中加入了socket启动:

public static void main(String[] args) {
		SpringApplication.run(JavaDemoApplication.class, args);

		socketServiceImpl server = new socketServiceImpl();
		server.startSocketServer(8088);
}

但是由于刚学springboot,不了解底层逻辑,在socket接受到数据并处理完成后,存入数据时调用dao接口方法,出现了空指针:(recorddao 是dao接口)

@Autowired
    private recordDao recorddao;

.................//socket监听以及处理请求的代码

recorddao.addRecord("2020", (float)res.get(0), (float)res.get(1), (float)res.get(2), (float)res.get(3).....);

我研究了一下,通常情况下,似乎springboot可以自动完成接口的实现,所以在一般项目中,即便代码中没有接口的具体实现(即对象),在底层也是通过注解的各种骚操作完成了接口的实现,所以直接写 接口.方法名() 不会报错,但是目前我的问题里,dao的接口似乎并没有实现,我想问下在座的大佬,这个问题该怎么解决?以及如果真的没办法解决,那是不是一开始思路就不对,不能整合到一起,本来就该做成两个项目?(如有大佬需要更多代码我再传)

感觉你描述得乱七八糟的。我大致读懂了你要干嘛

你这个项目应该有两个程序。
1,Socket程序,它负责跟硬件交互。读取设备发送过来的数据
2,Web程序,你打算用SpringBoot实现,用过它管理设备的数据

你想把这两个程序都写到一起,用SpringBoot,是这样吗?

我的建议

Socket程单独实现,它主要是接收设备发过来的数据。它收到数据后,通过HttpClient。把数据以Http形式发送给 Web程序。 不要都写在一起。Socket 程序里面不需要Web服务。

我以前在智能设备公司(搞智慧小区的)呆过。我们就是这样处理的。

好的,谢谢大佬,顺便一问,我在网上查了查Netty这个东西,它可以帮我实现整合到一起的需求吗?

Netty是个牛逼的socket框架。它可以独立运行,没必要整合到springboot里面去。
你如果想用Netty,而且想把Netty和SpringBoot放一起,技术上可以实现。

好的,跪谢!