SpringBoot学习-JSP支持、War包

说明

SpringBoot通过外置Servlet容器到达对jsp的支持、war包部署

外置Servlet容器(jsp支持)

外置的Servlet容器:外面安装Tomcat—应用war包的方式打包;

步骤

1)、必须创建一个war项目;(利用idea创建好目录结构)(快捷创建时2、3步会自动配置好)

创建一个SpringBoot项目

创建war项目

选择打包方式为war包

创建war项目

其他步骤照常

创建成功后的目录结构

目录结构

创建webapp目录(也可以将webapp目录改为其他名字)

创建目录

2)、将嵌入式的Tomcat指定为provided;

1
2
3
4
5
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<scope>provided</scope>
</dependency>

3)、必须编写一个SpringBootServletInitializer的子类,并调用configure方法

1
2
3
4
5
6
7
8
9
public class ServletInitializer extends SpringBootServletInitializer {

@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
//传入SpringBoot应用的主程序
return application.sources(SpringBoot04WebJspApplication.class);
}

}

4)、配置tomcat服务器

配置tomcat服务器

配置tomcat服务器

5)、启动服务器就可以使用;

启动tomcat服务器

测试

JSP支持测试

1)、编写JSP页面(注意路径,必须在webapp目录(或者之前创建项目时自己改的)下)

jsp页面

2)、JSP页面访问: http://localhost:8181/springboot_web2_war_exploded/pages/success.jsp

结果

配置测试

1)、控制层

1
2
3
4
5
6
7
8
@Controller
public class HelloController {
@RequestMapping("/abc")
public String hello(Model model) {
model.addAttribute("msg", "你好");
return "success";
}
}

2)、配置文件application.properties设置

1
2
spring.mvc.view.prefix=/pages/
spring.mvc.view.suffix=.jsp

配置文件设置

3)、请求访问: http://localhost:8181/springboot_web2_war_exploded/abc

结果信息

使用外置Servlet容器后打war包部署

打包静态资源

在pom.xml文件的build中添加如下代码,将webapp添加到静态资源文件夹META-INF/resources下,将webapp中的内容打进war包,防止静态资源丢失

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
<!-- 添加这个就可以是webapp目录生效 -->
<resources>
<resource>
<directory>src/main/webapp</directory>
<!--注意此次必须要放在此目录下才能被访问到 -->
<targetPath>META-INF/resources</targetPath>
<includes>
<include>**/**</include>
</includes>
</resource>
<resource>
<directory>src/main/resources</directory>
<filtering>true</filtering>
<includes>
<include>**/*</include>
</includes>
</resource>
</resources>
</build>

测试

请求访问: http://localhost:8181/springboot_web2-0.0.1-SNAPSHOT/abc

结果

最后更新: 2020年08月07日 13:54

原始链接: http://ligangit.com/2020/07/30/SpringBoot学习-JSP支持、War包/

× 请我吃糖~
打赏二维码