SpringBoot @RestController詳解
瞭解@RestController我們可以先來了解一下其他幾個註解
@Controller
@Controller是Spring框架提供的註解,通過它標識的類,代表控制器類(控制層/表現層)。這裡控制層裡面的每個方法,都可以去呼叫@Service標識的類(業務邏輯層),而@Service標識的類中的方法可以繼續呼叫@Resposity標識的介面實現類(Dao層/持久層)。
@Controller用於標記在一個類上,使用它標記的類就是一個SpringMVC的Controller類,分發處理器會掃描使用該註解的類的方法,並檢測該方法是否使用了@RequestMapping註解。@Controller只是定義了一個控制器類,而使用@RequestMapping註解的方法才是處理請求的處理器。@RequestMapping給出外界訪問方法的路徑,或者說觸發路徑,觸發條件。
用@ResponseBody標記Controller類中的方法。把return的結果變成JSON物件返回。如果沒有這個註解,這個方法只能返回要跳轉的路徑,即跳轉的頁面。有這個註解,可以不跳轉頁面,只返回JSON資料。
@RestController
@RestController是Spring4.0之後新增的註解。相當於@Controller+@ResponseBody合在一起的作用。
Controller類中的方法返回值,預設是JSON物件,也就是相當於@Controller裡面的方法上新增了@ResponseBody,如果方法返回值,需要跳轉,那麼方法的返回型別必須是View或者ModelAndView。
import com.example.studentsys.entiy.User;
import com.example.studentsys.service.UserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
@RestController
@RequestMapping("/user")
public class UserController {
@Autowired
UserService userService;
@PostMapping("/login")
public String login(User user){
return userService.login(user);
}
@PostMapping("/regist")
public String regist(User user){
return userService.regist(user);
}
/**
* 解決查詢資料庫中文出現亂碼問題
* @return
*/
@RequestMapping(value = "/alluser", method = RequestMethod.GET, produces = "application/json;charset=UTF-8")
public List<User> findAll(){
return userService.findAll();
}
}
相關文章
- SpringBoot詳解Spring Boot
- 【SpringBoot系列】SpringBoot註解詳解Spring Boot
- @RestControllerRESTController
- springboot整合redis詳解Spring BootRedis
- springboot(八):RabbitMQ詳解Spring BootMQ
- SpringBoot註解最全詳解(整合超詳細版本)Spring Boot
- springboot介面接參註解詳解Spring Boot
- SpringBoot admin 2.0 詳解Spring Boot
- springboot(四):thymeleaf使用詳解Spring Boot
- SpringBoot註解大全(詳細)Spring Boot
- SpringBoot詳解(一)-快速入門Spring Boot
- Springboot是什麼?Springboot詳解!入門介紹Spring Boot
- SpringBoot系列(六)整合thymeleaf詳解版Spring Boot
- 詳解Intellij IDEA搭建SpringBootIntelliJIdeaSpring Boot
- Springboot 整合 Dubbo/ZooKeeper 詳解 SOA 案例Spring Boot
- SpringBoot魔法堂:@MatrixVariable引數註解使用詳解Spring Boot
- 到底什麼是@RestControllerRESTController
- SpringBoot系列(十二)過濾器配置詳解Spring Boot過濾器
- 18張圖,詳解SpringBoot解析yml全流程Spring Boot
- SpringBoot下的模板技術Thymeleaf詳解Spring Boot
- SpringBoot 【 第一章 】配置詳解Spring Boot
- Springboot mini - Solon詳解(一)- 快速入門Spring Boot
- SpringBoot各類擴充套件點詳解Spring Boot套件
- SpringBoot詳解(二)-Spring Boot的核心Spring Boot
- springboot系列文章之啟動原理詳解Spring Boot
- SpringBoot 整合 Spring Data Mongodb 操作 MongoDB 詳解Spring BootMongoDB
- SpringBoot實現檔案上傳功能詳解Spring Boot
- springboot常用註解大全(超詳細, 30個)Spring Boot
- SpringBoot非官方教程 | 第二篇:SpringBoot配置檔案詳解Spring Boot
- SpringBoot第二篇:配置檔案詳解一Spring Boot
- SpringBoot程式碼混淆與反混淆加密工具詳解Spring Boot加密
- SpringBoot詳解(三)-Spring Boot的web開發Spring BootWeb
- SpringBoot詳解(四)-優雅地處理日誌Spring Boot
- Redis詳解 - SpringBoot整合Redis,RedisTemplate和註解兩種方式的使用RedisSpring Boot
- @Controller 和 @RestController的區別ControllerREST
- Spring框架:@RestController與@ControllerSpring框架RESTController
- Controller和RestController的區別ControllerREST
- @Controller和@RestController的區別ControllerREST