springboot如何返回html和jsp
Spring Boot 是一种易于使用、功能强大的 Java Web 开发框架。在 Spring Boot 中,可以使用多种方式返回 HTML 和 JSP 页面。下面将介绍 Spring Boot 返回 HTML 和 JSP 的三种常用方式。
一、返回 HTML
1.使用 Thymeleaf 模板引擎
Thymeleaf 是一种常用的 Java 模板引擎,可以将 HTML 文件中的变量替换为传入的数据,生成最终的 HTML 文件。在 Spring Boot 中,只需要在 pom.xml 文件中添加如下依赖:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
然后在 Controller 中使用 @GetMapping 注解来获取请求,最后通过 ModelAndView 对象返回 HTML 页面。下面是一段示例代码:
@GetMapping("/hello")
public ModelAndView hello() {
ModelAndView mav = new ModelAndView("hello");
// 将数据存入 ModelAndView 对象中
mav.addObject("name", "World");
return mav;
}
2.使用 Freemarker 模板引擎
Freemarker 是另一种常用的 Java 模板引擎,用于生成 HTML、XML 等文件。在 Spring Boot 中,可以使用下面的依赖添加 Freemarker 支持:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-freemarker</artifactId>
</dependency>
然后编写一个 Controller 类,使用 @GetMapping 注解来获取请求,最后通过 ModelAndView 对象返回 HTML 页面。下面是一段示例代码:
@GetMapping("/hello")
public ModelAndView hello() {
ModelAndView mav = new ModelAndView("hello");
// 将数据存入 ModelAndView 对象中
mav.addObject("name", "World");
return mav;
}
二、返回 JSP
1.使用 JSP 视图解析器
在 pom.xml 文件中添加以下依赖来支持 JSP:
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-jasper</artifactId>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
</dependency>
需要注意的是,要将 JSP 文件放在名为 /WEB-INF/views 的目录下。然后编写一个 Controller 类,使用 @GetMapping 注解获取请求,最后返回 JSP 页面。下面是一段示例代码:
@GetMapping("/hello")
public String hello(Model model) {
// 将数据存入 Model 对象中
model.addAttribute("name", "World");
// 返回 JSP 页面
return "hello";
}
2.使用 Spring Boot JSP 视图解析器
Spring Boot JSP 视图解析器是一种方便使用的 JSP 视图解析器,支持在 JSP 文件中使用 JSTL 标签库和 EL 表达式。在 pom.xml 文件中添加以下依赖来支持 Spring Boot JSP:
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-jasper</artifactId>
</dependency>
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-el</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
</dependency>
然后编写一个 Controller 类,使用 @GetMapping 注解获取请求,最后返回 JSP 页面。下面是一段示例代码:
@GetMapping("/hello")
public String hello(Model model) {
// 将数据存入 Model 对象中
model.addAttribute("name", "World");
// 返回 JSP 页面
return "hello";
}
以上是 Spring Boot 返回 HTML 和 JSP 的三种常用方式,每种方式都有其优缺点,开发者可以根据实际情况选择最合适的方式。
