Spring Boot MyBatis 學習(二)thymeleaf的使用

1、在pom.xml中添加對thymeleaf的引用html

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>

2、修改StudentController控制器java

package com.example.demo.controller;

import com.example.beans.Student;
import com.example.service.StudentService;

import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;


@Controller
public class StudentController {


    private StudentService studentService=new StudentService();

    @RequestMapping("/")
    @ResponseBody
    public String index(){
        return "Hello spring boot";
    }

    @RequestMapping("/showStudents")
    public String showStudents(Model model){
        String name="";
        for(Student s:studentService.showAllStudents()){
            name=name+s.getName()+"  ";
        }
        model.addAttribute("name",name);
        return "/Student/StudentsInfo";
    }
}

3、在Resources下的templates下建立目錄Student,在其下面新建 StudentInfo.html文件,內容以下web

 

<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<head>
    <meta charset="UTF-8">
    <title>全部學生信息</title>
</head>
<body>
    <h3 th:text="${name}"></h3>
</body>
</html>

4、說明spring

@RestController註解至關於@ResponseBody + @Controller合在一塊兒的做用json

1.若是隻是使用@RestController註解Controller,則Controller中的方法沒法返回jsp頁面,或者html,配置的視圖解析器 InternalResourceViewResolver不起做用,返回的內容就是Return 裏的內容app

2.若是須要返回到指定頁面,則須要用 @Controller配合視圖解析器InternalResourceViewResolver才行。
    若是須要返回JSON,XML或自定義mediaType內容到頁面,則須要在對應的方法上加上@ResponseBody註解webapp

3.使用@Controller 註解,在對應的方法上,視圖解析器能夠解析return 的jsp,html頁面,而且跳轉到相應頁面若返回json等內容到頁面,則須要加@ResponseBody註解jsp

5、@RequestMappingspring-boot

RequestMapping是一個用來處理請求地址映射的註解,可用於類或方法上。用於類上,表示類中的全部響應請求的方法都是以該地址做爲父路徑。ui

@RequestMapping 除了修飾方法, 還可來修飾類 :

類定義處: 提供初步的請求映射信息。相對於 WEB 應用的根目錄;

方法處: 提供進一步的細分映射信息。 相對於類定義處的 URL。

若類定義處未標註 @RequestMapping,則方法處標記的 URL相對於 WEB 應用的根目錄

返回ModelAndView時的url會根據你的 @RequestMapping實際狀況組成。 
若是類上沒有映射,那麼url直接就是方法的映射;不然url爲類上+方法上映射路徑組合。

對應項目jsp位置則是一級路徑對應一級文件目錄。

如url爲/default/index對應項目中webapp/default/index.jsp

RequestMapping註解有六個屬性,下面咱們把她分紅三類進行說明。

【一、 value, method;】

value:指定請求的實際地址,指定的地址能夠是URI Template 模式;

method: 指定請求的method類型, GET、POST、PUT、DELETE等;

【二、consumes,produces;】

consumes: 指定處理請求的提交內容類型(Content-Type),例如application/json, text/html;

produces: 指定返回的內容類型,僅當request請求頭中的(Accept)類型中包含該指定類型才返回;

【三、 params,headers;】

params: 指定request中必須包含某些參數值時,才讓該方法處理。

headers: 指定request中必須包含某些指定的header值,才能讓該方法處理請求。

相關文章
相關標籤/搜索