安装安装JDK

启动Idea → 新建项目 → 选择Java → 在Project SDK中选择下载JDK


配置Maven

启动Idea → Customize → All Settings… → 查看Maven配置

配置maven仓库镜像

在 .m2 文件夹中新建 settings.xml 文件:

使用阿里云maven仓库镜像来添加依赖

<?xml version="1.0" encoding="UTF-8"?>
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">
<mirrors>
<mirror>
<id>nexus-aliyun</id>
<mirrorOf>*</mirrorOf>
<name>Nexus aliyun</name>
<url>http://maven.aliyun.com/nexus/content/groups/public</url>
</mirror>
</mirrors>
</settings>


安装Postman

Postman是一个 http 请求模拟工具,常用于测试后台接口

官网: https://www.postman.com/downloads/


Hello MVC

新建项目

New Project → 通过 Spring Initializr 创建 Spring Boot 项目。





demo项目结构

Spring Boot入口程序(类)

入口类默认名:项目名+Application

什么是注解式编程
◼ 未来框架的趋势是“约定大于配置”,代码的封装会更严密。开发人 员会将更多的精力放在代码的整体优化和业务逻辑上,注解式编程会 被更加广泛地使用。
◼ 注解(annotation)可用来定义一个类、属性或方法,以便程序能被 编译处理。它相当于一个说明,告诉应用程序某个被注解的类或属性 是什么,要怎么处理。
◼ SpringBoot提供了大量的注解。

pom.xml:Maven项目管理文件

  • Spring Boot父级依赖,这样当前的项目就是Spring Boot项目了 它用来提供相关的Maven默认依赖。使用它之后,常用的包依赖 可以省去version标签
<parent> 
<groupId>org.springframework.boot</groupId> 
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.4.0</version>
</parent>
  • 项目信息
<groupId>com.example</groupId> 
<artifactId>demo</artifactId> 
<version>0.0.1-SNAPSHOT</version> 
<name>demo</name>
  • Java版本信息
<properties>
<java.version>15</java.version>
</properties>
  • 各种依赖项
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<scope>runtime</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
  • <artifactId>spring-boot-starter-thymeleaf</artifactId>Thymeleaf 网页模板引擎
  • <artifactId>spring-boot-starter-web</artifactId>用于构建 Web 应用程序的 starter 组件 starter组件:Spring Boot为了简化配置,提供了非常多的starter, 它先打包好与常用模块相关的所有jar包,并完成自动配置,这使 得开发时不需要过多关注框架配置,只需关注业务逻辑即可。
    包含 RESTful风格框架、SpringMVC 和默认的嵌入式容器 Tomcat
  • <artifactId>spring-boot-devtools</artifactId>使Spring Boot应用支持热部署

★ 热部署:为了更好支持程序调试,在项目进行修改之后不需要耗费 时间重启,在程序正运行情况下即可实时生效。以节约时间和操作, 提高开发效率。

  • <artifactId>spring-boot-starter-test</artifactId>SpringBoot项目单元测试

  • maven插件信息

<build> 
<plugins> 
<plugin> 
<groupId>org.springframework.boot</groupId> 
<artifactId>spring-boot-maven-plugin</artifactId> 
</plugin> 
<plugin> 
<groupId>org.apache.maven.plugins</groupId> 
<artifactId>maven-compiler-plugin</artifactId> 
<configuration> 
<source>14</source> 
<target>14</target> 
</configuration> 
</plugin> 
</plugins>
</build>

添加控制器

  • 在 com.example.demo 包中新建 controller 包
  • 在 controller 包中新建类: HelloController

  • HelloController.java

@RestController 注解用于标注控制器类
该控制器里面的方法都以 json 格式输出
@RequestMapping 注解用于配置 URL 映射即确定请求所对应的处理方法
@RestController 相当于@Controller+@ResponseBody

package com.example.demo.controller; 
@RestController 
public class HelloController {
    
	@RequestMapping("/hello") 
	public String index(){
    
		return "hello world"; 
	}
	@RequestMapping("/test") 
	public Map<String,String> test(){
   
		Map<String,String> map=new HashMap<String, String>(); 
		map.put("username","wustzz"); 
		map.put("password","123456"); 
		return map; 
	}
}

将 URL 映射到方法

启动应用程序

在浏览器中测试请求: