「这是我参与11月更文挑战的第5天,活动详情查看:2021最后一次更文挑战」
随着SpringBoot项目越来越普及,更多的项目使用SpringBoot作为开发框架,今天学习一下SpringBoot项目比Maven项目有何进步、创建后是怎样的项目结构、相关文件的作用,以及是否需要在代码提交时进行同步。
1.SpringBoot与Maven项目的区别
尽管SpingBoot项目和Maven项目都是使用Maven工具来管理项目的依赖信息和构建、发布等流程,但是在项目的开发使用上还是有很大的区别的。
1.1 Maven项目
Maven是一个跨平台的项目管理工具,作为Apache的开源项目,用来对Java平台项目的构建和依赖信息进行管理,为项目提供了打包、执行等一系列的服务,帮助Java项目更快的进行发布。
Maven工具管理Java Web项目的早期,即Spring框架+Maven管理的项目可以称为是Maven项目。
1.2 SpringBoot项目
SpringBoot项目是指以SpringBoot为框架为基础,开发满足SpringBoot编程规范的项目体系。SpringBoot的出现简化了框架的使用,提供了一整套的方案来快速整合框架、简化配置文件,并实现快速开发项目。
1.3 两者区别
- 启动方式上
- Maven项目在运行项目时需要先启动Tomcat服务才能运行项目,或者将Java项目打包成为War包部署到Tomcat服务器中启动
- SpringBoot由于内嵌了Tomcat,因此启动时十分方便,直接运行启动类就可以启动整个项目;打包部署时也很方便,只需要打包为Jar包,并使用
java -jar的名气启动Jar包
- 项目配置上
- 传统的Maven项目中配置繁重,需要大量的xml文件来设置项目属性,项目运行时通过这些配置文件获取属性完成项目初始化,并根据配置进行项目bean的加载
- SpringBoot中提供了starter起步依赖简化了Maven的配置,使用.properties配置文件代替了原有的.xml配置文件,并提供了自动装配的功能,让开发者更专注于开发而不是书写配置,提高开发效率
- 丰富的扩展
- SpringBoot中增加了项目监控功能来关注项目的安全健康等指标,并且作为一个平台框架,SpringBoot更容易接入其他框架、完成项目功能扩展,这些都是传统的Maven项目中有不足的地方。
2. IDEA中初始化SpringBoot项目
在IDEA中新增一个项目时,选择项目的模板为Spring Initializr,并设置相应的组织和项目名称后,旧创建了一个SpringBoot项目。如下是创建后的项目文件结构:
对于项目中的相关目录和文件,可以简要描述其用途为
- 文件夹
- .idea文件夹:存放本地idea项目的各项信息
- .mvn文件夹:存放mvnw相关文件,Jar包和Java文件
- src文件夹:主项目目录,包括项目文件夹main和测试文件夹test
- main文件夹:主要开发文件入controller、service、mapper等存放的目录
- test文件夹:主要用于对开发内容进行测试内容存放的目录
- target文件夹:项目编译打包完成后生成的项目文件都会放在target目录中
- 文件
- .gitignore:git的配置文件,其中匹配指定的文件或文件夹忽略提交
- .iml:IDEA的工程配置文件
- mvnw:maven wrapper的简称,文件用于记录执行的maven命令
- mvnw.cmd:执行mvnw命令的cmd入口
- pom.xml:配置maven坐标,即项目依赖信息的文件,maven通过此xml文件进行Jar包的统一管理
- External Libraries:外部依赖库,maven配置文件中添加的依赖信息都会加入到这里
3. SpringBoot项目中无需关注的内容
创建SpringBoot后,众多文件夹和文件让人眼花缭乱,其实在实际开发中只需要关注/src路径下的文件内容和pom.xml中的依赖信息,其他的文件和文件夹基本没有同步需求。
3.1 项目忽略文件(夹)
IDEA项目提交时可以忽略的内容如下:
- .idea文件夹,用来存放IDEA中当前项目的配置信息,如历史记录、版本控制等
- .imi文件,全称information of module,作为IDEA的工程配置文件,用于IDEA对module配置信息的管理,存放项目的一些配置信息,如组件、maven、 插件、模块路径、依赖等信息
- target文件夹、mvnw、mvnw.cmd、help.md等文件
3.2 IDEA中设置提交时忽略文件(夹)
在IDEA中可以通过在.gitignore文件中匹配文件或文件夹实现忽略提交的功能。
File -> Settings -> File Types中,选择.gitignore文件,在下方输入需要匹配忽略的文件或文件夹,配置完成应用后,IDEA版本控制时会忽略配置的文件或文件夹。
还可以通过安装IDEA插件来简化设置忽略文件,在IDEA的Plugins市场中搜索.ignore插件安装完成后即可在右键中使用该插件。
如果IDEA中无法安装或安装失败,可以在插件官网下载 下载插件,并在IDEA中加载完成安装。