一个完整的springboot项目,我们还需要做什么

本人从事java web项目开发多年,跟大家分享一下一些心得,原创不易,希望对大家有所帮助

一 从0创建Srpingboot项目

我们从0开始创建Springboot,一般都需要选择Springboot的版本,因为Springboot的版本一年好几个更新,我们通常在 https://start.spring.io 上,选择我们要的版本,以及开启启动的start依赖,即可把一个springboot项目搭建起来

1.1 启动springboot项目

在 https://start.spring.io 选择需要的依赖,确定之后就是一个最基础的springboot项目了。
我们用IDEA打开项目,启动之后,就可以使用了。

现在springboot版本已经更新到3.x以上了,旧的springboot版本已经在这个里面找不到了

虽然官方推荐用最新的版本,但是对于springcloud的适配非常不友好,尤其是jdk必须更新到17,也是让新手接触springboot感觉比较困惑的地方

我个人建议,刚刚开始,还是用官方推荐用的最新版本。到工作后,最好用公司统一的版本,一般公司如果非特殊,是不会随便更新公司的版本的

1.2 导入必要的依赖

Springboot如果想要单体使用,一般只需要导入mvc模块就行了

如果使用Springcloud之后,还可以选择需要导入特定Springcloud依赖

二、还缺什么

很久之前,在使用springboot的时候,一直强调,约定大于配置,也就是说,有些约定俗成的东西,就尽量不要去违背,违背了虽然也没有关系,但是会导致大部分情况下,这些代码只有你自己能进行维护,其他人阅读起来很是困难。

以下我列举了一些大部分项目需要统一的跟大家分享,希望阅读的人可以从中得到启发,增进项目的高效使用。

2.1 统一异常捕获

使用springboot统一异常捕获

2.2 统一MVC返回

封装JsonResult

2.3 数据分层

controller - service - mapper

如果是mybatis-plus还可以考虑使用 face 层

2.4 连接数据库模块

一般选择 mybatis-plus

2.5 放置常量和工具类

创建文件夹

constant 
util

2.6 基础controller、基础entity、query查询类

为了复用性更强

2.7 为了方便处理异常,一般还可以入参打印、出参打印

使用切面的方式处理

2.8 集成swagger方便接口查看调用

方便接口的查看,以及跟前端进行信息交互

三、完整项目还缺什么

3.1 鉴权模块

shiro
security

3.2 数据缓存模块

引用中间件redis

3.3 图片处理模块

引用中间件

存本地路径
存数据库
存nginx
存minio
存mongodb

3.3 定时模块

springboot内置的cron
quart

3.4 代码生成模块

为了方便使用,一般都会集成一个代码生成模块
freemarker

四、后记

一个相对完整的项目,是需要考虑很多东西的,虽然每个项目各有各的不同,但是大部分都是有共通的地方,也就说大家所说的,大同小异。
从0开始搭建springboot项目,对于大部分人还是有一点点难度的,对于了解其中原理,或查看其他人项目,又或者解决bug,都是大有裨益的。

如果觉得太麻烦,又想快速搭建一个后端项目,可以直接在github/gitee 参考开源项目来使用,例如以下项目:

1 Guns
2 pig
3 RuoYi
4 Jeecg-boot
5 iBase4j

但是大部分情况下,如果直接使用开源项目,会发现很多东西就会很臃肿,还是有一些要注意的地方,注意得好,才开源更好的驾驭这个框架。

所以建议使用开源项目的时候,一定要去对应的官网仔细进行阅读,在里面进行答疑解惑,才是用好脚手架的必经之路。

  • 9
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值