【Spring】Spring Boot项目创建和目录介绍

时间:2024-10-04 07:43:29

文章目录

  • 1 Spring Boot 介绍
  • 2 Spring Boot 项目创建
    • 注意事项
  • 3. 项目代码和目录介绍
    • pom 文件
    • 父工程
    • 目录介绍

1 Spring Boot 介绍

Spring 让 Java 程序更加快速、简单和安全,Spring 对于速度、简单性和生产力的关注使其成为世界上最流行的 Java 框架

Spring 官方提供了很多开源的项目,覆盖范围从 Web 开发到大数据,Spring 发展到了今天,已经形成了自己的生态圈,我们在开发时,也倾向于使用 Spring 官方提供的技术来解决对应的问题image.png
这些项目都是基于 Spring Framework 来进行开发的,但是 Spring Framework 存在配置多、入门难的问题,Spring 也意识到了这个问题,为了简化开发者的使用,从而创造性的推出了 Spring Boot

Spring Boot 就是为了简化 Spring 程序开发而诞生的


Spring Boot 翻译一下就是 Spring 脚手架image.png|343

  • 盖房子的这个架子就是脚手架,脚手架的作用是砌筑砖墙,浇筑混凝土,方便墙面抹灰、装饰和粉刷。简单来说,就是使用脚手架可以更快地盖房子
    Spring Boot 就是 Spring 框架的脚手架,它是为了快速开发 Spring 框架而诞生的
  • 早期:坐火车需要去代售点或火车站去买火车票
  • 现在:从 12306 去买票
    Spring 类似火车,早期使用 Spring 开发也是比较复杂的,
    SpringBoot 就类似于 1230612306 买票方便了很多,还集成了很多功能

2 Spring Boot 项目创建

image.png|478

image.png|417

  • 点击 create 就完成 Spring Boot 的项目创建了

注意事项

第一次打开 Spring Boot 项目需要加载很久,因为当前 Spring Boot 框架并没有在自己的本地仓库。为了加速 Spring Boot 项目的下载,在打开项目之前,请先确认自己的 Maven 已经配置为国内源

3. 项目代码和目录介绍

pom 文件

观察 pom 文件

<dependencies>  
    <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>  
    </dependency>  
</dependencies>
  • pom.xml 文件里面的具体信息,不需要过度关注,我们主要看 <dependencies> 标签里面的内容
  • 此文件中,引入了两个依赖
    • spring-boot-starter-web:包含了 web 应用开发所需要的常见依赖
    • spring-boot-starter-test:包含了单元测试所需要的常见依赖

父工程

但是我们发现,这个依赖没有指定具体的版本号,但我们的 jar 包也正常引入到项目中了,并且查看的话,是有版本号的
image.png


我们来卡看本地仓库的 jar 包是否下载下来了
image.png|513

  • 我们发现本地仓库的 jar 包也下载下来了

那为什么没有指定 <version>,程序也可以正常运行呢?

  • 因为每一个 Spring Boot 工程,都有一个父工程。依赖的版本号,会在父工程中统一进行管理。父工程指定版本号之后,就会自动引入和所指定的依赖,创建的 Spring Boot 项目,会继承 Spring Boot 父工程image.png|453

目录介绍

image.png|333

Spring Boot 项目有两个主要的目录,maintest

  • src/main/javaJava 源代码,代码就在里面写
  • src/main/resource:静态资源或配置文件:
    • /static:静态资源文件夹,比如 jscsshtml 等静态文件,不需要服务器数据进行绑定的页面
    • /templates:模板资源文件夹,主要存放动态模板文件,比如:JSPFreemarkerThymeleaf 等需要服务器动态渲染数据的文件
  • src/test/java:测试代码源代码。开发人员自测(和测试人员无关)
  • target:编译后的文件路径
  • pom.xmlMaven 配置文件