[Spring boot + Rest API] Overview
Java
156
spring boot
65
REST API
6
White

xoandaica viết ngày 05/02/2019

1. Các cách để xây dựng rest api trong spring

Để xây dựng rest api trong spring có thể sử dụng nhiều cách. Phổ biến nhất là 3 cách dưới đây

  1. Sử dụng annotation Controller
  2. Sử dụng annotation RestController
  3. Sử dụng jersey (Đây là một framework mã nguồn mở cho việc phát triển các rest api trong java)
    Chi tiết mình sẽ đi vào từng phần

    2. Controller

    Bình thường @Controller được sử dụng đê xậy dưng các controller cho web. VÍ dụ thế này

    @Controller
    public class HouseController {
    
    @RequestMapping(path = "/house")
    public String index() {
         return "house/index";
    }
    

}

Tuy nhiên để sử dụng cách mapping trên như một rest api, ta chỉ việc thêm vào annotation `@ResponseBody` . Annotation này có tác dụng thay vì tìm kiếm template house/index, thì dữ liệu trả về sẽ có đúng như dạng đã khai báo trong method. Cụ thể ở đây là một String

@Controller
public class HouseController {

@RequestMapping(path = "/house")
@ResponseBody
public String index() {
     return "house/index";
}

}

## 3. RestController
RestController đơn giản là sự kết hợp của 2 annotation `@Controller` và `@Responsebody`.

@RestController
public class CarController {

@GetMapping(path = "/car/{id}")
public String get(@PathVariable("id") int id) {
    switch (id) {
        case 1:
            return "Day la car 1";
        case 2:
            return "Day la car 2";
        default:
            return "Day la car n";
    }
}

}

## 4. Jersey
Để sử dụng Jerset trong spring boot, bạn phải thêm dependency sau:
<dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-jersey</artifactId>
    </dependency>
    <dependency>
        <groupId>org.glassfish.jersey.core</groupId>
        <artifactId>jersey-server</artifactId>
        <version>2.23.2</version>
        <type>jar</type>
    </dependency>
Và khai bao ResourceConfig

@Configuration
@ApplicationPath("/api")
public class MyResourceConfig extends ResourceConfig {

public MyResourceConfig() {
    registerEndpoints();
}

private void registerEndpoints() {
    register(MoneyController.class);
}

}

## 5. Demo
http://bit.ly/2Ga6euH
Bình luận


White
{{ comment.user.name }}
Bỏ hay Hay
{{comment.like_count}}
Male avatar
{{ comment_error }}
Hủy
   

Hiển thị thử

Chỉnh sửa

White

xoandaica

14 bài viết.
6 người follow
Kipalog
{{userFollowed ? 'Following' : 'Follow'}}
Cùng một tác giả
White
3 0
Bài viết này sẽ hướng dẫn các bạn từng bước xây dựng một ứng dụng java sử dụng spring boot kết hợp với spring data jdbc để lưu trữ và nhận dữ liệu ...
xoandaica viết 7 tháng trước
3 0
White
2 0
1. Single Thread 1. Làm một việc tại một thời điểm Không giống như đa số các ngôn ngữ lập trình khác, javascript đơn giản là đơn luồng. Điều này ...
xoandaica viết 8 tháng trước
2 0
White
2 0
1. Prepare Tools IDE: Netbean 8.2 JDK: 1.8 Maven: 3.5.0 2. Target Build project thỏa mãn các yêu cầu sau: Sử dụng spring boot + spring ...
xoandaica viết 8 tháng trước
2 0
Bài viết liên quan
White
9 0
Có bao giờ bạn thắc mắc, chuyện gì thực sự diễn ra khi chúng ta gõ một địa chỉ trang web (ví dụ: (Link)) lên trình duyệt và nhấn Enter? Đầu tiên, t...
Lam Pham viết hơn 1 năm trước
9 0
{{like_count}}

kipalog

{{ comment_count }}

bình luận

{{liked ? "Đã kipalog" : "Kipalog"}}


White
{{userFollowed ? 'Following' : 'Follow'}}
14 bài viết.
6 người follow

 Đầu mục bài viết

Vẫn còn nữa! x

Kipalog vẫn còn rất nhiều bài viết hay và chủ đề thú vị chờ bạn khám phá!