如何用SpringBoot(2.3.3版本)快速搭建一个项目?文末有小彩蛋

简介: SpringBoot作为现在工作中最常用的一个框架,大部分人对他都只做到了会用这一步,但是SpringBoot的许多细节却被我们所忽略掉了,因此我打算写这样一个有关SpringBoot的系列文章,争取能让不管是新手还是老手都能从中再学到东西。

网络异常,图片无法展示
|


点赞再看,养成习惯,听说微信搜公众号《Java鱼仔》会让自己的技术更上一层楼


(一)概述


SpringBoot作为现在工作中最常用的一个框架,大部分人对他都只做到了会用这一步,但是SpringBoot的许多细节却被我们所忽略掉了,因此我打算写这样一个有关SpringBoot的系列文章,争取能让不管是新手还是老手都能从中再学到东西。


(二)快速搭建一个SpringBoot项目


新建一个项目,选择Spring Initialize,这是SpringBoot快速搭建的入口,我们可以看到这里默认有一个网站,其实这个网址就是Spring官网快速开发SpringBoot项目的入口。


网络异常,图片无法展示
|


点开这个网站,其实就是一个快速生成springboot项目的网站,在这里选择各项配置后,点击生成会自动生成一个压缩包,这个压缩包解压后即可直接导入到idea中。


网络异常,图片无法展示
|


当然通过idea直接生成会更加方便,点击next后,下一个页面的功能其实和官网一样,填写项目名,选择语言,java版本等,选择完成后点击next


网络异常,图片无法展示
|


在下一个页面,可以选择你想要引入的jar包以及Springboot的版本,所有选择到的依赖包都会在最右侧的Selected Dependencies中展示,选择好后点击next,等待maven依赖安装好后即可。


网络异常,图片无法展示
|


最后生成一个完整的项目,配置过程中所选择的依赖都会出现在pom.xml中。如果遇到maven无法下载的问题建议改个maven的镜像。直接运行启动类,项目成功启动。


网络异常,图片无法展示
|


(三)分析目录结构


我们观察一下当前目录结构,所有的代码放在src/main/java下,配置文件和资源文件放在src/main/resources,测试代码放在src/test下。 target目录为编译后的class文件目录,所有的依赖放在pom.xml文件中。


我们再来看看启动类,我们跟随源码可以发现,启动类其实就是一个组件。进入SpringBootApplication注解。


网络异常,图片无法展示
|


再点进SpringBootConfiguration注解,可以看到我们十分熟悉的configuration注解,这个注解就是一个Component


网络异常,图片无法展示
|


(4)POM.XML


通过maven,我们不再需要手动导入jar包,只需要配置pom.xml文件即可: 我们来分析一下pom的结构


网络异常,图片无法展示
|


首先是标签代表该项目有一个父项目,spring-boot-starter-parent。下面其他的命名均为创建项目时自己配的。


网络异常,图片无法展示
|


最底下的build标签所引入的是打包插件,我们要将项目打包为jar包或者war包就需要这个依赖。 接下来是最重要的依赖引入,所有外部仓库中引入的依赖放在dependencies中


<dependencies><!-- web依赖:集成tomcat、dispatchServlet、xml等 --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><!-- 单元测试 --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope><exclusions><exclusion><groupId>org.junit.vintage</groupId><artifactId>junit-vintage-engine</artifactId></exclusion></exclusions></dependency></dependencies>

到这里我想你也已经可以很轻松的自己创建一个springboot项目。


(5)打包


前面我们引入了打包插件,这里直接对刚刚新建的项目进行打包。直接双击package即可自动进行打包。

网络异常,图片无法展示
|


如果显示的是打包失败,需要配置一下打包插件:

<build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId></plugin><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-surefire-plugin</artifactId><version>2.18.1</version><configuration><skipTests>true</skipTests></configuration></plugin></plugins></build>

接着便会显示Build Success,在target包下多了一个jar包,就是你项目所生成的jar包。 这个jar包我们可以直接通过java -jar命令去运行


网络异常,图片无法展示
|


如果把这个jar包放在服务器上,便可以让所有人来访问你写的这个springboot项目,岂不美哉。


(六)一个小彩蛋


在运行SpringBoot项目时,首先会出来一个Spring的标志,这个标志也可以说是SpringBoot的小彩蛋。修改这个图标的方式也很简单,在application.properties的同级目录下新建一个banner.txt,然后在里面画出你想要展示的图标即可,推荐一个自动生成banner的网站:

https://link.juejin.cn/?target=https%3A%2F%2Fwww.bootschool.net%2Fascii-art


网络异常,图片无法展示
|



相关文章
|
28天前
|
Java 容器
如何在SpringBoot项目中使用过滤器和拦截器
过滤器和拦截器是日常开发中常用技术,用于对特定请求进行增强处理,如插入自定义代码以实现特定功能。过滤器在请求到达 `servlet` 前执行,而拦截器在请求到达 `servlet` 后执行。`SpringBoot` 中的拦截器依赖于 `SpringBoot` 容器,过滤器则由 `servlet` 提供。通过实现 `Filter` 接口并重写 `doFilter()` 方法可实现过滤器;通过实现 `HandlerInterceptor` 接口并重写相应方法可实现拦截器。两者的主要区别在于执行时机的不同,需根据具体场景选择使用。
如何在SpringBoot项目中使用过滤器和拦截器
|
6天前
|
前端开发 JavaScript Java
SpringBoot项目部署打包好的React、Vue项目刷新报错404
本文讨论了在SpringBoot项目中部署React或Vue打包好的前端项目时,刷新页面导致404错误的问题,并提供了两种解决方案:一是在SpringBoot启动类中配置错误页面重定向到index.html,二是将前端路由改为hash模式以避免刷新问题。
39 1
|
22天前
|
Java 关系型数据库 MySQL
创建一个SpringBoot项目,实现简单的CRUD功能和分页查询
【9月更文挑战第6天】该内容介绍如何使用 Spring Boot 实现具备 CRUD 功能及分页查询的项目。首先通过 Spring Initializr 创建项目并选择所需依赖;其次配置数据库连接,并创建实体类与数据访问层;接着构建服务层处理业务逻辑;最后创建控制器处理 HTTP 请求。分页查询可通过添加 URL 参数实现。
|
4天前
|
JavaScript Java 关系型数据库
毕设项目&课程设计&毕设项目:基于springboot+vue实现的在线考试系统(含教程&源码&数据库数据)
本文介绍了一个基于Spring Boot和Vue.js实现的在线考试系统。随着在线教育的发展,在线考试系统的重要性日益凸显。该系统不仅能提高教学效率,减轻教师负担,还为学生提供了灵活便捷的考试方式。技术栈包括Spring Boot、Vue.js、Element-UI等,支持多种角色登录,具备考试管理、题库管理、成绩查询等功能。系统采用前后端分离架构,具备高性能和扩展性,未来可进一步优化并引入AI技术提升智能化水平。
毕设项目&课程设计&毕设项目:基于springboot+vue实现的在线考试系统(含教程&源码&数据库数据)
|
6天前
|
Java 关系型数据库 MySQL
毕设项目&课程设计&毕设项目:springboot+jsp实现的房屋租租赁系统(含教程&源码&数据库数据)
本文介绍了一款基于Spring Boot和JSP技术的房屋租赁系统,旨在通过自动化和信息化手段提升房屋管理效率,优化租户体验。系统采用JDK 1.8、Maven 3.6、MySQL 8.0、JSP、Layui和Spring Boot 2.0等技术栈,实现了高效的房源管理和便捷的租户服务。通过该系统,房东可以轻松管理房源,租户可以快速找到合适的住所,双方都能享受数字化带来的便利。未来,系统将持续优化升级,提供更多完善的服务。
毕设项目&课程设计&毕设项目:springboot+jsp实现的房屋租租赁系统(含教程&源码&数据库数据)
|
2天前
|
JavaScript 前端开发 Java
SpringBoot项目的html页面使用axios进行get post请求
SpringBoot项目的html页面使用axios进行get post请求
14 6
|
3天前
|
消息中间件 Java Kafka
springboot项目启动报错-案例情景介绍
springboot项目启动报错-案例情景介绍
12 2
|
4天前
|
前端开发 Java Spring
【非降版本解决】高版本Spring boot Swagger 报错解决方案
【非降版本解决】高版本Spring boot Swagger 报错解决方案
|
2月前
|
XML 前端开发 Java
还不会SpringBoot项目模块分层?来这手把手教你
本文详细介绍了如何为SpringBoot项目创建模块并进行合理的分层设计。通过逐步演示,从创建项目到构建各功能模块,再到具体代码实现,手把手教你实现整洁的代码分层。主要内容包括:创建依赖层、主启动层、模块层及其子模块(如共通层、控制器层、数据持久层等),并通过实例演示了从前端请求到后台服务调用的实际流程。适合SpringBoot初学者及有一定经验但需优化项目结构的开发者参考。
88 2
还不会SpringBoot项目模块分层?来这手把手教你
|
2月前
|
小程序 前端开发 Java
SpringBoot+uniapp+uview打造H5+小程序+APP入门学习的聊天小项目
JavaDog Chat v1.0.0 是一款基于 SpringBoot、MybatisPlus 和 uniapp 的简易聊天软件,兼容 H5、小程序和 APP,提供丰富的注释和简洁代码,适合初学者。主要功能包括登录注册、消息发送、好友管理及群组交流。
57 0
SpringBoot+uniapp+uview打造H5+小程序+APP入门学习的聊天小项目
下一篇
无影云桌面