springboot访问templates的html
时间: 2023-05-01 10:04:51 浏览: 83
可以通过在Spring Boot中设置模板引擎来访问templates文件夹下的HTML文件。可以使用Thymeleaf、FreeMarker、Velocity等模板引擎。在application.properties或application.yml文件中设置模板引擎,然后在Controller中返回模板的名称即可访问。
相关问题
springboot访问templates下的html页面
在Spring Boot中访问templates下的HTML页面,可以使用Thymeleaf模板引擎。Thymeleaf是一种现代化的服务器端Java模板引擎,可以将HTML页面和Java代码结合起来。
首先需要在pom.xml中添加以下依赖:
```xml
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
```
然后在application.properties中配置Thymeleaf视图解析器:
```properties
spring.thymeleaf.prefix=classpath:/templates/
spring.thymeleaf.suffix=.html
spring.thymeleaf.mode=HTML
spring.thymeleaf.encoding=UTF-8
spring.thymeleaf.cache=false
```
其中,spring.thymeleaf.prefix配置了模板文件所在目录,spring.thymeleaf.suffix配置了模板文件的后缀名。
在controller中,使用@RequestMapping注解来映射URL和方法,然后返回模板名称即可:
```java
@Controller
public class HelloController {
@RequestMapping("/")
public String index(Model model) {
model.addAttribute("name", "World");
return "index";
}
}
```
其中,Model是一个接口,用于在控制器中向视图传递数据。
最后,在templates目录下创建index.html文件,可以使用Thymeleaf模板语言来渲染页面:
```html
<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
<head>
<meta charset="UTF-8">
<title>Hello</title>
</head>
<body>
<h1>Hello, <span th:text="${name}"></span>!</h1>
</body>
</html>
```
在上面的代码中,使用了th:text属性来绑定数据,${name}是从控制器中传递过来的数据。
最后,启动应用程序,访问http://localhost:8080/,就可以看到渲染后的HTML页面了。
springboot访问templates的html并加载html里的js
要访问Spring Boot中的模板并加载HTML中的JS脚本,可以按照以下步骤进行:
1. 在Spring Boot中配置模板引擎,例如使用Thymeleaf:
```
@Configuration
public class WebConfig {
@Bean
public ViewResolver viewResolver() {
ThymeleafViewResolver resolver = new ThymeleafViewResolver();
resolver.setTemplateEngine(templateEngine());
resolver.setCharacterEncoding("UTF-8");
return resolver;
}
@Bean
public SpringTemplateEngine templateEngine() {
SpringTemplateEngine engine = new SpringTemplateEngine();
engine.setTemplateResolver(templateResolver());
return engine;
}
private ITemplateResolver templateResolver() {
SpringResourceTemplateResolver resolver = new SpringResourceTemplateResolver();
resolver.setPrefix("classpath:/templates/");
resolver.setSuffix(".html");
resolver.setTemplateMode(TemplateMode.HTML);
return resolver;
}
}
```
2. 在模板HTML文件中引入JS脚本:
```
<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
<head>
<title>My Page</title>
<script type="text/javascript" src="/js/myScript.js"></script>
</head>
<body>
<h1 th:text="${pageTitle}">Page Title</h1>
<p th:text="${pageContent}">Page Content</p>
</body>
</html>
```
3. 在Spring Boot中配置静态资源路径,例如JS脚本:
```
@Configuration
@EnableWebMvc
public class MvcConfig implements WebMvcConfigurer {
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
registry.addResourceHandler("/js/**").addResourceLocations("classpath:/static/js/");
}
}
```
4. 现在,可以访问模板HTML页面并加载JS脚本了,例如:
```
http://localhost:8080/myPage
```
其中,`myPage`是模板HTML文件名,位于`classpath:/templates/`路径下。`myScript.js`是JS脚本文件名,位于`classpath:/static/js/`路径下。