iT邦幫忙

2024 iThome 鐵人賽

DAY 3
0

實現表示層

在三層式架構中,表示層是用戶與應用之間的橋樑,負責處理所有用戶請求並返回相應的結果。本篇文章將介紹如何在Spring Boot中實現表示層。

首先,我們需要創建控制器類,這些類通常使用@RestController或@Controller注解來標識。假設我們要創建一個用戶管理的應用,以下是一個簡單的控制器示例:


@RestController
@RequestMapping("/api/users")
public class UserController {

    private final UserService userService;

    public UserController(UserService userService) {
        this.userService = userService;
    }

    @GetMapping
    public List<User> getAllUsers() {
        return userService.findAllUsers();
    }

    @PostMapping
    public User createUser(@RequestBody User user) {
        return userService.saveUser(user);
    }
}

在這個例子中,我們定義了一個UserController類,負責處理與用戶相關的HTTP請求。通過@RequestMapping注解,我們將所有以
/api/users
開頭的請求映射到這個控制器。@GetMapping和@PostMapping分別用於處理GET和POST請求。

表示層的另一個重要部分是異常處理。Spring Boot提供了全局異常處理的能力,可以使用@ControllerAdvice注解來實現:

@ControllerAdvice
public class GlobalExceptionHandler {

    @ExceptionHandler(ResourceNotFoundException.class)
    public ResponseEntity<String> handleResourceNotFoundException(ResourceNotFoundException ex) {
        return new ResponseEntity<>(ex.getMessage(), HttpStatus.NOT_FOUND);
    }
}

這樣,一旦出現ResourceNotFoundException,就會由handleResourceNotFoundException方法來處理,並返回適當的HTTP狀態碼和錯誤信息。

透過這些步驟,我們就能在Spring Boot中實現一個高效的表示層,負責處理用戶的各類請求並返回合適的響應。


上一篇
Day2 Spring boot 三層式架構
下一篇
Day4 實現業務邏輯層和資料訪問層
系列文
Spring Boot微服務架構:API設計與實現27
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言