这篇文章的目的是在springboot项目中使用jsp的完整过程,包含项目的创建和打包。下面便开始吧。
一、新建项目
新建项目流程就是新建一个普通的springboot项目,下面贴几张创建项目过程中的图
二、修改pom
修改项目的打包方式为war
<packaging>war</packaging>
引入jsp的依赖和web的依赖
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-jasper</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
完整的pom如下
<?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.2.2.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<groupId>com.lfs</groupId>
<artifactId>springbootjsp1</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>war</packaging>
<name>springbootjsp1</name>
<description>Demo project for Spring Boot</description>
<properties>
<java.version>1.8</java.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-jasper</artifactId>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
三、在main目录下面新建webapp文件夹并创建jsp文件
创建webapp文件夹
注意:新建的webapp文件中中间有一个小蓝点,表示是页面的资源,如果新建的文件夹没有小蓝点,可以点击右侧的项目的Maven Projects的刷新按钮
在WEB-INF文件下新建文件夹pages保存jsp文件
myindex.jsp文件的内容
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>Title</title>
</head>
<body>
<h1>我的首页2222</h1>
</body>
</html>
四、新建controller实现页面跳转
package com.lfs.controller;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
@Controller
public class MyIndex {
@RequestMapping({"/","index"})
public String index(){
return "myindex";
}
}
五、修改配置文件application.properties
spring.mvc.view.prefix=/pages/
spring.mvc.view.suffix=.jsp
六、运行打包测试
运行:直接运行启动类即可直接访问
打包:在项目右侧的Maven Projects中点击Lefecycle下的package即可
打包后的war可以直接在命令行用java -jar XX.war 运行