下面详细讲解如何在SpringBoot中配置,使得可以在webapp目录下直接访问HTML、JSP等静态资源。
1. Maven依赖
在pom.xml文件中添加以下依赖:
<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>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
</dependency>
其中,spring-boot-starter-web
是SpringBoot的Web组件,tomcat-embed-jasper
是Tomcat下的JSP引擎,jstl
是JSP标准标签库,用来渲染JSP页面。
2. 配置视图解析器
在application.properties
文件中添加以下配置:
spring.mvc.view.prefix=/WEB-INF/views/
spring.mvc.view.suffix=.jsp
spring.resources.static-locations=classpath:/META-INF/resources/,classpath:/resources/,classpath:/static/,classpath:/public/,classpath:/webapp/
其中,spring.mvc.view.prefix
指定了JSP文件的前缀路径,spring.mvc.view.suffix
指定了JSP文件的后缀名,spring.resources.static-locations
指定了静态资源的路径。
3. 创建JSP文件
在webapp目录下创建/WEB-INF/views/index.jsp
文件:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>SpringBoot JSP Demo</title>
</head>
<body>
<h1>Hello, World!</h1>
</body>
</html>
4. 创建Controller
在com.example.demo.controller
包下创建IndexController.java
文件:
package com.example.demo.controller;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
@Controller
public class IndexController {
@RequestMapping("/")
public String index() {
return "index";
}
}
5. 启动应用程序
在SpringBoot应用程序的入口文件中,添加@SpringBootApplication
注解,启动应用程序:
@SpringBootApplication
public class DemoApplication {
public static void main(String[] args) {
SpringApplication.run(DemoApplication.class, args);
}
}
6. 示例一:访问HTML页面
在webapp目录下创建index.html
文件:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>SpringBoot HTML Demo</title>
</head>
<body>
<h1>Hello, World!</h1>
</body>
</html>
通过访问http://localhost:8080/index.html
即可访问到HTML页面。
7. 示例二:访问子目录下的JSP页面
在webapp目录下创建/WEB-INF/views/user/list.jsp
文件:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>User List</title>
</head>
<body>
<h1>User List</h1>
<table border="1">
<thead>
<tr>
<th>ID</th>
<th>Name</th>
</tr>
</thead>
<tbody>
<tr>
<td>1</td>
<td>Alice</td>
</tr>
<tr>
<td>2</td>
<td>Bob</td>
</tr>
</tbody>
</table>
</body>
</html>
在com.example.demo.controller
包下创建UserController.java
文件:
package com.example.demo.controller;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
@Controller
@RequestMapping("/user")
public class UserController {
@RequestMapping("/list")
public String list() {
return "user/list";
}
}
通过访问http://localhost:8080/user/list
即可访问到子目录下的JSP页面。
以上就是在SpringBoot中配置访问webapp目录下静态资源的完整攻略,希望对你有帮助。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:SpringBoot实现在webapp下直接访问html,jsp - Python技术站