springboot跳轉至html頁面配置
阿新 • • 發佈:2018-12-14
1,首先在pom檔案中引入模板引擎jar包
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
2,在application.properties中配置模板引擎
spring.thymeleaf.prefix=classpath:/templates/
3,在templates下建立test.html檔案
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"/> <title>測試</title> </head> <body> 測試springboot跳轉頁面 </body> </html>
4,寫controller
package com.web; import org.apache.ibatis.annotations.ResultMap; import org.springframework.stereotype.Controller; i mport org.springframework.web.bind.annotation.RequestMapping; @Controller public class TestResult { @RequestMapping("/testGet") public String testGet() { return "test"; } }
注意:Controller類的註解必須是@Controller,不能寫@RestController
知識點:@RestController註解相當於@ResponseBody + @Controller合在一起的作用。
1) 如果只是使用@RestController註解Controller,則Controller中的方法無法返回jsp頁面或者html,配置的檢視解析器 InternalResourceViewResolver不起作用,返回的內容就是Return 裡的內容。
2) 如果需要返回到指定頁面,則需要用 @Controller配合檢視解析器InternalResourceViewResolver才行。 如果需要返回JSON,XML或自定義mediaType內容到頁面,則需要在對應的方法上加上@ResponseBody註解。
例如:
1.使用@Controller 註解,在對應的方法上,檢視解析器可以解析return 的jsp,html頁面,並且跳轉到相應頁面
若返回json等內容到頁面,則需要加@ResponseBody註解
public @ResponseBody Result get(RoomAudit roomApplication) {
PageInfo<RoomAudit> pageInfo=roomApplicationService.getPageBySql(roomApplication);
ra = roomApplication;// 記錄當前分頁設定
if(pageInfo!=null) {
log.info("獲取的roomApplication房數量:"+pageInfo.getTotal());
return ResultGenerator.genSuccessResult(pageInfo);
}
else
return ResultGenerator.genFailResult("查詢資訊失敗!");
}
[email protected]註解,相當於@[email protected]兩個註解的結合,返回json資料不需要在方法前面加@ResponseBody註解了,但使用@RestController這個註解,就不能返回jsp,html頁面,檢視解析器無法解析jsp,html頁面