4. Spring Boot 第一个应用HelloWorld

前面的文章从开发工具的角度,直接了当地实现了HelloWorld程序,当时注重整个环境地搭建,本文主要聚焦于Spring Boot 2 , 接下来的实践主要参考官网中文档。

1. 开发环境要求

打开官网文档中可以看到:

 从文档中可以看到,当前最新版本是Spring Boot 2.6.5 版本,要求Java 8 及以上版本,要求 Maven 3.5 及以上版本。前面的文章(91条消息) 1. 从零开始搭建开发 Spring Boot 的环境_龙泉太阿的博客-CSDN博客_从零springbooticon-default.png?t=M276https://blog.csdn.net/menergy/article/details/122899814?spm=1001.2014.3001.5501中已经说明和安装了Java 和 Maven, 这里cmd检查一下版本:

本机Java 版本和Maven 版本都符合条件。

 同时,这里运用Idea 作为开发工具,要求 idea 2019.1.2 版本以上,本实例用2021.2.4 版本。

2. 配置Maven

打开maven 安装目录下的...\apache-maven-3.8.4\conf\setting.xml 文件,找到mirror元素,添加阿里云仓库镜像配置,如下:

	<mirror>
		<id>nexus-aliyun</id>
		<mirrorOf>central</mirrorOf>
		<name>Nexus.aliyun</name>
		<url>https://maven.aliyun.com/nexus/content/groups/public</url>
	</mirror>

 再为Maven 配置指定为JDK 1.8 的版本进行编译,这样可以避免开发中出现的版本问题:

	<profile>
		<id>jdk-1.8</id>
		<activation>
			<activeByDefault>true</activeByDefault>
			<jdk>1.8</jdk>
		</activation>
		
		<repositories>
			<maven.compiler.source>1.8</maven.compiler.source>
			<maven.compiler.target>1.8</maven.compiler.target>
			<maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion>
		</repositories>
	
	</profile>

3. 第一个应用HelloWorld

3.1. 首先创建一个Maven 项目

在创建之前,检查我们的Idea 中的maven配置:

 

 

创建一个maven项目:

 点击finish创建maven项目如下:

 

3.2 配置POM项目依赖

参考官方文档的POM配置:

 复制导入父工程到POM, :

 发现标红,说明相关依赖包没有下载成功,可以刷新右边的刷新按钮,刷新后导入成功:

 

接下来,按照官方文档说明,添加Classpath依赖,以前Spring 开发要添加一堆依赖,现在Spring Boot 通过POM 父依赖已经帮我们创建好了相关的依赖,我们只需要添加一个spring-boot-starter-web 依赖即可,如下:

 复制到 POM:

 当配置好spring-boot-starter-web 依赖后,发现左边的外部依赖包中没有导入相关的包,这时可以向前面一样刷新右边的maven窗中的刷新按钮导包。但是,如果每次都这样收到导包,比较麻烦,其实可以设置idea 自动maven 导包, 如下:

1. 在第一次打开maven文件或者创建maven工程的时候,右下角会有提示是否 
Import Changes — Enable Auto-Import 
可以点击Enable Auto-Import ,那么在本次项目中会生效,在pom文件发生改动的时候,它会进行自动的导入。

2. 如果不是第一次,或者右下角没有提示,可以在Idea中settings里面进行设置,如下:

 

接着,包导入了,但是父项目依赖爆红:

 解决父项目依赖爆红问题:

点击File --》 Invalidate Caches 刷新idea 缓存并重启:

 

 重启后,导包正常,问题解决。 如下:

 3.3 编写代码

参考官方文档:

类似的, 首先创建一个主类, 类名可以随意取:

 

 

 创建后,并在这个类上加上一个“@SpringBootApplication” 注解,相当于告诉Spring boot,这是一个Spring boot 应用:

 

标注了“”注解的类,相当于主程序类,是所有其他程序的入口,然后采用固定写法,把这个主类赋予给SpringApplication类,让它帮忙跑起来。如下:

 注: 这个可以作为固定写法。

接着,创建一个Controller:

 

 然后给这个类标注注解“@Controller” 来告诉Spring Boot 这时一个Controller 类:

 接着给这个类写个方法来处理请求,给这个方法标注注解“@RequestMapping” 来映射请求,映射的请求是:让浏览器发送“hello” 请求,然后服务器返回“Hello, Spring Boot 2”, 如下:

因为返回的信息要以字符串方式写给浏览器,所以这里再在方法上加个注解“@ResponseBody”:

 因为之后的方法都是以字符串的方式返回给浏览器,而不是跳转到某个页面。所以可以把注解“@ResponseBody”标在类上:

 注解“@ResponseBody” 和 注解 “@Controller” 可以用Spring MVC 提供的新注解“@RestController”来代替:

 我们可以点击“@RestController” 进去看,发现就是注解“@ResponseBody” 和 注解 “@Controller” 的结合:

注:以后都可以用“@RestController” 代替“@ResponseBody” 和  “@Controller” 。

3.4 运行程序

直接在主类中运行main 方法即可:

 运行后,发现日志中也提示了8080端口访问:

 接着浏览器访问“localhost:8080/hello”:

 浏览器响应了结果, 程序成功。

3.5 Spring Boot 的简化配置

从上面的例子,可以看到,简化了很多依赖和配置。那么Spring Boot 怎么简化配置呢?

Spring Boot 把所有配置都抽取到一个配置文件中配置, 接下来新建这个配置文件:

 

 同时,在这个配置文件中配置修改服务器端口号到“8888”,重启服务器,访问“localhost:8888/hello”,看一下效果:

端口后被改变了。

注:Spring Boot 就专门为我们统一了这个配置文件,以后所有配置都可以在这里进行配置。如果不更改配置,都有默认的配置,具体有哪些配置, Spring Boot官方文档都提供了说明:

 

 

3.6 Spring Boot 的简化部署

以前,部署到目标服务器, 目标服务器还要装Tomcat等很多工作,还要把应用打成War 包。 现在的这个Maven 项目,如果不写打包方式就是Jar 包,参考官方文档:

我们只需要引入文档中提供的插件“spring-boot-maven-plugin” ,就可以把项目打成Jar 包:

 

接着,点击maven 的“clean” 和 “package” 打包(也可以同时选住clean 和 package , 然后单击上面的运行标签):

 打包完成,发现生成了目标Jar 包:

 

右键“target” ,直接进入文件夹:

 

 直接cmd 进入到这个文件夹,执行“java -jar Jar包” 命令:

 启动成功:

 浏览器访问8888端口:

 部署成功。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值