创建一个Spring Boot项目

一、如何创建一个Spring Boot项目

1.1 项目创建:专业版 or 社区版 or 网站创建

  1. 专业版:直接使用即可
    在这里插入图片描述

  2. 社区版:需要去额外安装【Spring Boot helper】插件,不能直接选installed,因为该插件要收费(有钱另说)

    • 如何免费下载插件:点击【Plugin homepage】,选择免费的版本,下载为zip文件,不需要解压,最后如下图把下载的zip文件导进去,而后重启IDEA即可
      在这里插入图片描述
  3. 使用网站创建:使用 该网站 进行创建,下载并解压缩后,在IDEA上打开即可

1.2 数据配置

  1. 关于Spring Boot的版本问题

    • 优点:我们不再需要去管理版本问题了,如考虑像“Tomcat要对应上Servlet版本”的问题,父类的pom文件会帮我们解决
      在这里插入图片描述
  2. 参数选择
    在这里插入图片描述

在这里插入图片描述

1.3 项目启动

  1. 提供了一个启动类,直接启动这个即可
  2. 启动类叫什么无所谓

在这里插入图片描述
3. 项目启动的日志
在这里插入图片描述

1.4 代码编写

  1. @RestController 注解:表示当前的代码能够被我们的浏览器识别
  2. @RequestMapping 注解:对应了路径
//路径为【127.0.0.1:8080/sayhi】
@RestController
public class HelloController {
    @RequestMapping("/sayhi")
    public String sayHi(){
        return "hello";
    }
}

二、Spring Boot 项目文件介绍

  1. 没有用的文件:.mvn、HELP.md、mvnm、mvnm.cmd
    • 因为我们是按照Spring Boot的模版来创建项目,所以会给我们添加一些实际上没什么用的配置文件,直接删掉即可。
  2. .idea:代表了IDEA相关的配置
  3. src:代码
    • main
      • java
        • com:放置Java源代码
        • resources:资源目录,主要是配置相关的代码
          • static:主要放置静态文件
          • templates:主要放置模版
          • application.properties:Spring Boot 项目的配置文件
    • test:放置了开发人员的测试代码,用来测试某一个文件是否有bug。注意,测试代码的目录结构和【java】里是一致的,并且我们测试完后也要让他们保持一致,方便后续寻找代码
<!-- 默认引入的test的包,test是测试的框架 -->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-test</artifactId>
    <scope>test</scope>
</dependency>
  1. target:编译后的class文件
  2. pom.xml:Maven 配置文件
  3. 关于文件夹的颜色:要求颜色匹配
    • 颜色的作用:颜色表示“当前目录为XXX功能”,设置完之后,Maven才知道我们的项目是什么样的,进而完成构建操作。所以文件夹的颜色也会影响代码的运行。
    • 形式:src里的java文件夹是蓝色的,test里的是绿色的。
    • 带颜色的文件夹名:名字是不重要的,我们可以随意改名,但文件夹的颜色一定要确保对应
    • 如何更改文件夹颜色:两种方法更改

在这里插入图片描述

  1. 关于修改文件名:快捷键shift + F6 或者 Refactor ----> Rename
    • 为何不直接手动修改文件名:无法确保相关被引用的文件都改名了。但是使用IDEA改名的话,IDEA会帮我们修改其他的关联此文件名的代码

三、Web服务器

  1. 什么是Web服务器
    • 作用:Web服务器就是对HTTP协议进行封装,使程序员不用自己写代码区解析HTTP协议规则,可以让Web开发更加便捷
    • 其他名称:Web服务器也被称为WWW服务器、HTTP服务器,主要用来提供网上信息浏览服务
    • 常见的Web服务器:Apache、Nginx、IIS、Tomcat、Jboss等
  2. 关于HTTP协议:HTTP客户端和HTTP服务器之间交互数据的格式

四、根据HTTP状态码解决bug

4.1 404

  1. 问题:表示用户访问的资源不存在
  2. 原因
    • 路径写错了
    • 注解拼写错误
      在这里插入图片描述

4.2 500

  1. 问题:服务器代码出问题了
  2. 解决方法:去服务器查看日志
  3. 查看错误日志的方法:从下往上一段一段查看,段落内从上往下看

五、Spring VS Spring Boot VS Spring Web MVC

5.0 判断是哪种类型

  1. 我们创建的项目是哪一种

    • 当前我们创建的项目类型,并不是那种“三选一”,有明显边界的关系,而是“即是……也是……”的关系
    • 所以没法具体说是哪个项目,我们一般会说该项目是Spring进行开发的,此时这个Spring指的是整个家族
      在这里插入图片描述
  2. 如何查看当前注解是哪个提供的?
    在这里插入图片描述

  3. 关于他们提供的功能:彼此之间是独立的
    loC对象没有被正确管理,并不影响RequestMapping的运行,路由映射依旧是可以使用的,因为Tomcat已经启动了。
    在这里插入图片描述

  4. 如何查看当前注解是哪个提供的?
    在这里插入图片描述

5.1 Spring

  1. 概念:是一个框架,可以简化Java开发
    • Spring 在概念上指的是“一个叫Spring的框架”,即【spring framework】
    • 在企业上说的 Spring 通常指【Spring全家桶】
  2. 对于Spring的框架概念的深挖:Spring是一个包含了众多工具的IOC容器
  3. Spring两大核心思想:IOC + AOP
  4. 问题:配置多且繁琐

5.2 Spring Boot

  1. 概念:基于Spring的一个框架,为了简化Spring项目而诞生的
    前面提到Spring是【Spring framewor】框架,这是Spring的核心。但随着技术的不断发展,Spring相对而言还是比较复杂了,所以我们又将这个框架简化成一个框架,取名为【Spring Boot】
  2. 为什么Spring Boot可以帮助我们更好地开发项目
    • 因为它集成了Maven,可以通过Maven引入一些依赖,如Spring Web、Mysql Driver,这些依赖就是相当于一个个功能,依赖内置了功能的实现
    • Spring Boot 只是将他们放在一起,以便我们的使用
  3. Spring Boot 特点之约定大于配置:Spring时期需要写很多的配置文件,Spring Boot则是采用约定的方式。比如我们直接约定好,默认去扫描哪个路径。这也是Spring Boot能实现零配置的原因。

5.3 Spring Web MVC

Spring Web

  1. 什么是Spring Web:可以使用 Spring去搭建一个网站
    在这里插入图片描述

MVC

  1. 概念:Model View Controller 的缩写,把一个项目按照功能分成了【模型】、【视图】、【控制器】三个部分,是一种工程架构的思想
    在这里插入图片描述

Spring MVC

  1. 概念:Spring 实现了MVC思想,这被称为“Spring MVC”。当然,Spring在实现过程中,也对其作出了一些小改动。

在这里插入图片描述

  1. Spring Web MVC?:因为 Spring MVC对项目划分主要是用来开发网站,所以又叫【Spring Web MVC】
  2. 关于引入问题:Spring Web MVC 是基于Servlet API构建的原始Web框架,从一开始就包含在Spring框架中。是Spring其中的一个模块,由 pom.xml 引入依赖管理
<!-- Spring MVC 项目的依赖 -->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-web</artifactId>
</dependency>
  • 10
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值