SpringBoot(web开发入门)

Web开发前提

使用web开发之前需要导入web开发依赖模块的依赖spring-boot-starter-web

  相信spring框架的使用者几乎都会使用Spring MVC来开发web项目,为了帮助开发者简化快速搭建过程并开发web项目,SpringBoot提供了spring-boot-starter-web自动配置依赖模块

springboot项目的目录结构
src
	main
		java
			com.example.demo
				controller  //控制器
				service     //业务层
				entity      //实体类
				DemoApplication.java //启动类
		resource
			static     //存放静态资源,如css,js,img
			templates  //存放html页面
			application.properties //springboot的配置文件
	test

可以通过添加以下依赖

<dependency>
	<groupId>org.springframework.boot</groupId>
	<artifactId>spring-boot-starter-web</artifactId>
</dependency>

这样就可以直接执行web项目了,直接运行项目App的main方法就可以直接启动一个使用了嵌入式Tomcat服务器的web应用。但是在没有提供任何服务web请求的Controller时,访问任何路径都会返回一个SpringBoot默认提供的错误请求页面,如下:
在这里插入图片描述

向页面返回一个语句

比如我们想要在页面显示一个Hello SpringBoot的语句要怎么做呢?很简单,可以在上面的controller包中新建一个类,代码如下:

@RestController
public class HelloController{
	@RequestMapping("/hello")
	public String hello(){
		return "Hello SpringBoot";
	}
}

重新启动一下App类的main方法并在浏览器输入localhost:8080/hello,将正常显示我们在controller返回的信息,到这里一个简单的web项目就完成了
在这里插入图片描述

Spring MVC框架层面的约定

spring-boot-starter-web依赖模块默认自动配置了一些springmvc的必要组件

  • ViewResolver自动注册到Spring容器中
  • ConverterFormatter等bean自动注册到Spring容器中
  • 如对web请求的支持和相应的类型转换的HttpMessageConverter自动注册到Spring容器中
  • 如将MessageCodesResolver自动注册到Spring容器

假如你在开发中不想使用默认的嵌入式Tomcat,可以引入jetty作为第二个方案

<dependency>
	<groupId>org.springframework.boot</groupId>
	<artifactId>spring-boot-starter-jetty</artifactId>
</dependency>

或者也可以这样,用undertow(Undertow是一个Java开发的灵活的高性能Web服务器,提供包括阻塞和基于NIO的非阻塞机制。Undertow是红帽公司的开源产品,是Wildfly默认的Web服务器。SpringBoot2中可以将Web服务器切换到Undertow来提高应用性能。)替代

<dependency>
	<groupId>org.springframework.boot</groupId>
	<artifactId>spring-boot-starter-undertow</artifactId>
</dependency>

端口也是可以自己修改的,默认的端口是8080,如果不想使用这个,可以在application.properties中修改,如下:

server.port = 8081

application.yaml修改如下:

server:
  port: 8081
发布了184 篇原创文章 · 获赞 864 · 访问量 11万+

猜你喜欢

转载自blog.csdn.net/Woo_home/article/details/101976109