一切美好程序的开始,Hello World!接下来的时间里,会陆陆续续更新springboot的入门教程,所以本次教程将介绍如何运行一个简单的springboot项目,输出最优美的语句,hello world!
构建springboot项目
首先我们可以通过spring官网生成一个简单的项目,spring.io官网,Quickstart Guide(快速引导教程),当然我们也可以直接跳过引导教程,进入Spring Initializr,然后我们只需要根据自己的jdk版本以及springboot的版本生成一个简单的项目,点击红色框按钮下载到本地。
配置pom.xml
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.4.3</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<groupId>com.example</groupId>
<artifactId>demo</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>demo</name>
<description>Demo project for Spring Boot</description>
<!-- java版本号,修改后重新build项目可以修改项目jdk版本 -->
<properties>
<java.version>1.8</java.version>
</properties>
<!--
启动坐标,在这里我们会介绍常用的启动坐标,大家可以根据自己需求进行配置。
可理解为一些jar架包集合。
springboot提供的架包名称大多以spring-boot-starter开头
-->
<dependencies>
<!-- -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
</dependency>
<!-- 支持全栈式的web开发,如SpringMVC, Servlet支持等 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!-- 支持redis键值存储的数据库操作 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jdbc</artifactId>
</dependency>
<!-- 支持spring以jdbc方式操作数据库的jar集合 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-redis</artifactId>
</dependency>
<!-- 支持对spring进行单元测试 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
开始写我们的Hello World!
首先我们进行简单的编写hello world的controller,如下图,这里我们并未了解视图层的操作方式,因此这里我们直接返回json数据。此时我们的一个简单的controller就写好了。
package com.example.controller;
import java.util.HashMap;
import java.util.Map;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
//注解告诉程序这是一个控制器
@Controller
public class HelloWorld {
//设置请求路径
@RequestMapping("/hello")
//设置返回格式
@ResponseBody
public Map<String, Object> hello(){
Map<String, Object> map = new HashMap<>();
map.put("msg", "hello world");
return map;
}
}
编写启动类
接下来,我们要编写一个启动类,用于启动程序,启动类的命名方式并不需要严格要求,需要注意的是,启动类必须位于controller的上级目录,或者controller类目录中,由于启动类只对目录下包括自身目录进行扫描,因此假如将启动类放置于同级目录中,那我们将访问不到此控制器。启动类如下。
package com.example.controller;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class DemoApplication {
public static void main(String[] args) {
SpringApplication.run(DemoApplication.class, args);
}
}
启动程序运行
位于启动类之内右键,选择run as -> java application ,如下图程序正常运行,打开浏览器,访问http://localhost:8080/hello,此时访问正常得到以下结果。
总结
本次只对springboot作一个简单的介绍,在后续我会继续更新springboot项目开发教程,由于我本生也在熟悉使用,因此如有谬误,可以提出来。自身专业主要为java开发方向,但由于工作原因,接触也越来越少,也想重新熟悉下,后续更新可能会偏慢,我会尽快更新接下来的教程。