下面是关于“springboot返回html和jsp的方法示例”的完整攻略。
1. 返回HTML的方法示例
1.1 准备工作
在Spring Boot的Web项目中,我们需要使用Thymeleaf模板引擎来返回HTML页面。因此,我们需要在pom.xml
文件中添加以下依赖:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
1.2 创建HTML模板
在项目的src/main/resources/templates
目录下创建一个名为hello.html
的HTML模板文件,其内容如下:
<!DOCTYPE html>
<html>
<head>
<title>Hello World</title>
</head>
<body>
<h1>Hello, [[${name}]]!</h1>
</body>
</html>
在这个模板中,我们使用了Thymeleaf的语法来动态地渲染页面中的数据。我们定义了一个名为name
的参数,并在页面中使用[[${name}]]
来引用它。
1.3 编写Controller
在项目的src/main/java
目录下创建一个名为HelloController
的Java文件,其内容如下:
package com.example.demo;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;
@Controller
public class HelloController {
@GetMapping("/hello")
public String hello(@RequestParam(name="name", required=false, defaultValue="World") String name, Model model) {
model.addAttribute("name", name);
return "hello";
}
}
这个Controller定义了一个/hello
路由,并在其中使用了@RequestParam
注解来接受名为name
的参数。如果没有传递该参数,则使用默认值"World"
。然后,我们使用Model
对象将name
参数传递给模板,并将模板的名称返回。
1.4 运行项目
现在我们可以启动项目并访问http://localhost:8080/hello?name=John
来查看运行效果了。在浏览器中会显示一个Hello John的页面,其中名字是根据请求参数动态生成的。
2. 返回JSP的方法示例
2.1 准备工作
在Spring Boot中使用JSP需要额外的依赖,因此我们需要在pom.xml
文件中添加以下依赖:
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-jasper</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
</dependency>
2.2 创建JSP文件
在项目的src/main/webapp/WEB-INF
目录下创建一个名为hello.jsp
的JSP页面文件,其内容如下:
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>Hello World</title>
</head>
<body>
<h1>Hello, <%=request.getParameter("name")%>!</h1>
</body>
</html>
在这个JSP页面中,我们使用了<%=request.getParameter("name")%>
来获取名为name
的请求参数,并将其插入到页面中。
2.3 编写Controller
在项目的src/main/java
目录下创建一个名为HelloController
的Java文件,其内容如下:
package com.example.demo;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;
@Controller
public class HelloController {
@GetMapping("/hello")
public String hello(@RequestParam(name="name", required=false, defaultValue="World") String name) {
return "hello";
}
}
这个Controller同样定义了一个/hello
路由,并在其中使用了@RequestParam
注解来接受名为name
的参数。如果没有传递该参数,则使用默认值"World"
。然后,我们将页面的名称hello
返回。
2.4 运行项目
现在我们可以启动项目并访问http://localhost:8080/hello?name=John
来查看运行效果了。在浏览器中会显示一个Hello John的页面,其中名字是根据请求参数动态生成的。注意,在使用JSP时,需要将页面放在src/main/webapp
目录下,否则可能无法正常访问。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:springboot返回html和jsp的方法示例 - Python技术站