老实说,web 项目和非 web 项目,没什么大的区别。无非是 src/main/resources 下放不放 web 页面,pom.xml 中是否引入 spring-boot-starter-web 模块的问题。
在上一篇文章当中,我们还没有具体的介绍 spring-boot-starter-web ,因此本文我们一并来讲了。
SpringBoot 创建 web 项目的第一步,就是需要引入 spring-boot-starter-web 模块,用来支撑 web 的交互。
pom.xml 中添加支持 web 的模块:
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> <!-- :www.xttblog.com --> </dependency>
也有人看到,网上的一些项目中引入了 spring-boot-starter-test 。那么 spring-boot-starter-test 模块有什么用呢?其实看名字我们就应该清楚。
- spring-boot-starter :核心模块,包括自动配置支持、日志和YAML;
- spring-boot-starter-test :测试模块,包括JUnit、Hamcrest、Mockito。
编写第一个 Controller 实现 HelloWorld。
@RestController public class HelloWorldController { @RequestMapping("/xttblog") public String index() { return "Hello World"; } }
@RestController 的意思就是 controller 里面的方法都以 json 格式输出,不用再写什么 jackjson 配置的了!SpringBoot 就是这么简单,这么任性。
然后启动 SpringBoot 项目(运行 @SpringBootApplication 注解类的 main方法)。http://localhost:8080/xttblog 就看到返回了 HelloWorld!
到现在为止,我们还没有跳转到对应的 web 页面。下面我们继续让 Controller 跳转到对应的 web 页面。
Spring Boot默认的提供的静态文件配置路径位于classpath下,目录名称需要符合以下规定:
- /static
- /public
- /resources
- /META-INF/resources
Spring Boot默认提供了多种模板引擎的支持,如:Thymeleaf、Velocity、FreeMarker等。尽量不要在Spring Boot中使用JSP,否则很多特性无法使用,也会破坏 SringBoot 的初衷。在Spring Boot中默认的模板引擎路径是src/main/resources/templates,当然我们也可以修改这个默认路径。
以上就是 SpringBoot 的 web 目录结构。
细心的朋友发现,我们上面访问 xttblog 的图片中没有贴出地址。为什么呢?因为贴出地址,你会发现,Springboot 默认的访问不需要项目名字了,我想加上项目名字访问,该怎么办?
答案是在 src/main/resources 下新建 application.properties 文件,里面加入下面的配置即可。
server.port=8090 spring.application.name=test server.context-path=/xttblog
想要自学的也可以到 https://github.com/spring-projects/spring-boot 上查看官方文档进行自学!
: » 使用 SpringBoot 创建 web 项目
原创文章,作者:254126420,如若转载,请注明出处:https://blog.ytso.com/251737.html