2022毕业设计项目总结

大学生活一晃而过,就像电影一样。

前言

匆匆忙忙在一个多月的时间里完成了毕业设计,感觉后端和前端收获很多;但是还有很多不完善;比如代码层面:并没有做真实的权限管理,只是通过auth字段进行区分;功能上面:没有实现客服与管理员的便捷联动,黑名单用户只能使用其他通讯软件进行联系管理进行拉黑。

使用技术

前端

  1. vue3
  2. arco pro
  3. axios
  4. websocket

后端

  1. springboot 2.3.7.RELEASE
  2. mybatis-plus
  3. java-jwt
  4. knife4j
  5. lombok
  6. spring-boot-starter-security
  7. spring-boot-starter-validation
  8. hutool
  9. spring-boot-starter-websocket

关于收获

前端方面

第一次算是使用 vue 做项目。虽然写了很多页面组件代码,但是框架是基于 arco pro 封装好的后台模板,很多核心逻辑不需要去考虑。

arco pro 感觉很漂亮,也很方便。虽然我没有用过 element ,但是网上有太多使用 element 做的项目,看的审美疲劳。

websocket 是直接使用的原生的,直接 js 中new Websocket(),当时想使用 socket-io,但是后端当时测试也需要使用 socket-io-server,感觉有些麻烦就没有使用。

后端方面

springboot 是去年跟着实战派书学习的,感觉用的越来越顺手了,不过通过毕业设计,这次又从书里面找到了一些不容易搜索到答案的问题解决办法,常看常新。

mybatis-plus 是第一次用,之前使用的 mybatis ,感觉 mybatis-plus 就像之前在 php 中使用那么方便的操作数据库,不需要 xml ,只需要简单的配置就可以直接使用;并且 mybatis-plus 还已经实现了很多方法,可以直接调用;不过看知乎说大公司里面会有代码审查或者数据库审查,如果有什么错误的 sql 可以在审查的时候自动化检测,感觉挺有道理。

knife4j 国产化 API UI 文档库看起来很漂亮,做项目的时候还可以在文档内直接测试,十分实用。

spring-boot-starter-security 自己没有用的很明白,感觉很复杂,看了很多教程也是一知半解,最后还是看的实战派才实现了自己想要实现的功能 !-_- 。

spring-boot-starter-validation 验证组件相当方便,结合 JSR 规范的注解对参数进行验证,省去了很多代码。

hutool 工具库是在公司才知道的, 常见的功能几乎都有,自己的代码量减少很多,但是功能依旧实现。

spring-boot-starter-websocket 库是拿来与前端进行 websocket 通信的库,通过简单的注解标记方法,就可以用标记的方法去处理对应的事件;搜索了很多教程,都有说 websocket 不支持获取客户端 ip ,需要使用另一个网络库才能够实现获取客户端 ip 。

最后

之前一直打算将项目中用到的技术成功实现进行编写博客,但是担心被爬虫搜索到影响查重就没有整理文章。

整个项目核心就是实现 websocket 协议并将前后端交互的数据格式进行规范,比如通过 type 字段进行区分消息类型,然后通过定义多个字段组合进行完善消息类型,然后对应的去处理。

posted @ 2022-06-14 23:56  夏秋初  阅读(162)  评论(0编辑  收藏  举报