苍穹外卖项目完结

项目导航:gitee链接

历时两周多的苍穹外卖项目终于完结,其实如果没有其他任务的影响,可以更快的,虽然项目简单,但是收获还是很多的。接下来微服务,然后补习一下前端知识,最后毕设开工。

苍穹外卖项目随手记

  • nginx转发与负载均衡
  • 密码MD5加密DigestUitls
  • knife4j依赖Swagger生成接口文档
  • JWT令牌(密匙,时效,用户信息)
  • apifox插件(接口文档)
  • Dao层三分,DTO,VO,POJO
  • 默认值,一般分到constant包中定义常量类,解决硬编码问题
  • BeanUtils类属性拷贝
  • 配置全局捕获异常类,常用来捕获异常返回Result中的错误方法给前端
  • 用ThreadLocal为每个线程提供独立存储空间的原理,Tomcat服务器会为每一次请求提供一个单独的线程,因此可以用来设置当前请求下用户的ID。
  • 重写WebMvcConfigurationSupport中的extendMessageConverters方法可以扩展消息转换器,比如将Java的日期格式序列化为JSON格式数据。实现addInterceptors方法注册自定义拦截器。
  • 切面编程:创建自定义注解,创建切面类(定义切入点方法,定义切面方法,标明通知类型,利用反射机制编写切面方法的逻辑代码)
  • 事务管理:@Transactional注解可以标识事务管理,rollbackFor属性表示何种情况下回滚,propagation属性表示事务传播行为,也就是对于嵌套的语句,外部的语句与其内部调用的语句是否公用一个事务。
  • useGeneratedKeys="true" keyProperty="id ,在 MyBatis 或其类似的持久层框架中,useGeneratedKeys="true" 和 keyProperty="id" 这两个属性经常一起使用,特别是在插入数据(INSERT)时。这两个属性的目的是处理和返回数据库自动生成的主键。
  • 插入删除更新表中的元组时,要考虑清楚该元组关联了哪些表,这些表决定了该表能不能删,表内的元组内的元素变化时哪些表的元组内的元素要一同变化。
  • 在使用<foreach>标签生成动态SQL时,需要注意每一个遍历的集合对象,对数据库中的元素赋值时采用对象.属性的方式。
  • 如果可以尽量保证Controller层方法参数用DTO类型;Service层接口参数类型用DTO类型,返回类型用VO类型;DAO层对数据库操作的接口的参数用Entity类型,返回类型用VO。
  • 一个接口对应一个Controllrt类和一个Service接口,一张表对应一个Mapper接口。
  • 前端如果是用JSON格式封装参数请求后端,而后端必须需要用实体类作为参数接受,哪怕请求体里面的JSON数据只有一个参数。
  • Spring Task任务调度工具,可以按照约定时间自动执行某个代码逻辑,定时任务框架
  • WebScoket协议,一种长连接协议,用于实时通信。
  • Apache POI 用于处理办公软件的数据,如最常用的excel表格,对一些银行业务,商家应收等业务的信息,通过Java代码进行操作。
相关推荐
灿飞7 分钟前
Kotlin与Java虚拟机六:基础与类型系统:一切皆对象,但对象有代价
java·kotlin
计算机毕设定制辅导-无忧学长16 分钟前
《基于微信小程序健康习惯激励系统设计与实现》
java·spring boot·mysql·微信小程序·uniapp·健康习惯激励系统
大模型最新论文速读20 分钟前
text-to-sql:从学术玩具到生产落地
数据库·sql
ManageEngineITSM1 小时前
工单分类怎么设计?类别、子类别与自动分派的实用方法
大数据·服务器·数据库·人工智能·分类·数据挖掘
ClouGence1 小时前
MongoDB 双向同步如何防止数据循环?(附实操指南)
数据库·mongodb
雪芽蓝域zzs1 小时前
第 1 章:IDEA 创建 SpringBoot3.5.16 Maven 项目
java·maven·intellij-idea
TDengine (老段)1 小时前
TDengine IDMP 十大实用功能(7)
数据库·物联网·时序数据库·tdengine·涛思数据·工业数据·idmp
Decay__1 小时前
15_MySQL 数据同步与迁移方案 —— 复制 / DataX / Canal / 异构同步(对标 Oracle GoldenGate)
运维·数据库·sql·mysql·架构
golang学习记1 小时前
IDEA 开始换芯,发布全新AI版终端
java·人工智能·intellij-idea
vipxieliang1 小时前
ValidX 正则表达式预编译优化:Pattern 复用策略
java·spring boot·后端