文章目录
- 一、安装JDK与maven
- 1.1 下载
- 1.2 解压放置
- 1.3 设置环境变量
- 1.4 设置maven仓库位置
- 二、安装设置IDEA
- 2.1 maven设置
- 2.2 创建工程
- 三、搭建一个简单的SpringBoot多模块项目
- 3.1 代码结构
- 3.2 用IDEA创建工程
- 四、启动服务器
- 4.1 配置service
- 4.2 main函数
- 4.3 服务配置
- 4.4 添加静态资源
- 4.5 启动服务
- 五、项目演示
- 5.1 swagger
- 5.2 枚举接口
- 5.3 业务-hello world接口
- 5.4 业务-simpleCal接口
- 5.5 静态资源访问
- 六、代码
一、安装JDK与maven
1.1 下载
由于我换了台电脑,windows的环境还要再装一遍。
JDK可以去oracal官网下载。注意,现在官网不登录,最低只能下载JDK17,想下载JDK11或JDK8,需要注册一个oracle账号。我一般下载zip版本的。
maven也是一样,去maven官网下载,我一般下载zip版本的。
1.2 解压放置
JDK解压后,如图放置,不同版本放不同文件夹。我这里的repository,是存放maven的jar包仓库的位置
maven的安装位置也类似
1.3 设置环境变量
解压完成后,就需要设置环境变量。这里不赘述,直接上图
#检验Java是否设置成功
java --version
#检验maven是否安装成功
mvn --version
1.4 设置maven仓库位置
编辑如图文件
添加如下配置
<localRepository>D:\SDK\java\repository</localRepository>
二、安装设置IDEA
2.1 maven设置
2.2 创建工程
三、搭建一个简单的SpringBoot多模块项目
3.1 代码结构
本篇仅仅打算先搭建一个凑合能用的框架,具体细节问题,日后再详细讲解。
项目结构如下图所示,工程名为class001,该工程下有2个模块,一个是core,一个是busy。
core模块脱离业务,用于放框架内容。busy模块为一个个的业务模块。
core模块下有common,enum-memo。
common负责诸如序列化、异常拦截器,通用返回等内容(当然,编程习惯还放了些其他的,忽略即可)。同时在pom文件里,引入了必要的库。
enum-memo是我写的一个示例类库,用于自动扫描项目中的枚举,方便前端做下拉列表。
3.2 用IDEA创建工程
推荐大家把界面调成英文,这样遇到问题方便在网上搜索。大家界面语言统一了,也更便于交流了。
File->New->Project
选择Maven Archetype,Name起名为class001(我这里建过了,加个_)
位置建议大家放一个规划好的位置,养成好习惯。
点击Archetype的Add,设置GroupId和ArtifactId。而后点Create,即可完成工程创建
在创建好的工程上,右键单击class001->new->module
创建busy和core子模块。如法炮制,在busy下创建general-test,在core下创建common和enum-memo。
对于子模块,刚创建出来时,应该是这样的(我随便创建了个,便于演示):
这时,右键单击emptyModule,new->directory,就会出现如下对话框,我们分别点击src\main\java, src\main\resources即可创建默认的代码文件夹和资源文件夹
四、启动服务器
具体代码如何编写,打算在下一节讲解,本节主要讲解基础的操作
4.1 配置service
选择如图选项卡,点击+号
选择Run Configuration Type
而后选择SpringBoot,这样我们编写的服务,就可以以列表形式出下载界面里了:
4.2 main函数
选择general-test,在主包下创建一个Class001GeneralTestApplication的类
@SpringBootApplication(scanBasePackages = {"indi.zhifa.study2024.core","indi.zhifa.study2024.class001"})
public class Class001GeneralTestApplication {public static void main(String[] args) {SpringApplication.run(Class001GeneralTestApplication.class, args);}
}
4.3 服务配置
在resources下,添加application.yml
server:port: 8081
zhifa-engine:enum-memo:enum-packages:- indi.zhifa.study2024.class001.busy.generalTest.enums
springdoc:swagger-ui:path: /swagger-ui.htmltags-sorter: alphaoperations-sorter: alphaapi-docs:path: /v3/api-docsgroup-configs:- group: '公共接口'paths-to-match: '/**'packages-to-scan: indi.zhifa.study2024.core- group: '业务接口'paths-to-match: '/**'packages-to-scan: indi.zhifa.study2024.class001.busy
# knife4j的增强配置,不需要增强可以不配
knife4j:enable: truesetting:language: zh_cn
4.4 添加静态资源
如图所示添加静态资源
4.5 启动服务
选择服务,点击Debug按钮:
当看到如下服务右边显示端口时,说明服务启动成功了。
五、项目演示
5.1 swagger
5.2 枚举接口
5.3 业务-hello world接口
该接口里写了5个测试功能
- hello world
就会输出一个hello world的字符串 - hello gender
会根据用户选择性别,输出对应性别的寒暄语 - hello weekday
会根据用户选择星期,输出对应星期的寒暄语 - serverInfo
返回一个结构体,打印服务器内存,CPU等信息 - siteInfo
返回一个结构体,打印站点的信息,其中有LocalDate字段和LocalTime字段,测试是否可以正常显示
5.4 业务-simpleCal接口
该组写了3个接口
- aPlusB
普通的a+b,用户传2个数,返回数字的和 - fab
斐波那契数列,用户传n,反回该数列第n项的值 - 除0测试
单纯计算除0,展示异常捕捉
5.5 静态资源访问
如图,可以访问到图片
六、代码
由于本次写的学习笔记,没打算讲太初级的内容。初级内容可以看我的芝法酱躺平攻略系列。0.x的笔记基本属于正式攻略的准备篇。故不打算仔细讲这些hello world级别的代码实现,有兴趣的小伙伴可以移步我的码云,直接下载相应代码。