Hướng dẫn sử dụng Spring Boot để tạo Restful API

Hướng dẫn sử dụng Spring Boot để tạo Restful API

Hướng dẫn sử dụng Spring Boot để tạo Restful API

 Trong bài Hướng dẫn sử dụng Spring Boot để tạo Restful API sẽ sử dụng Spring Boot, JPA và MySQL để tạo API hỗ trợ 4 tính năng cơ bản đó là thêm (C), xem (R), cập nhật (U) và xoá (D).

RESTFul API mà chúng tôi tạo với mục đích xem, thêm, xoá và sửa thông tin nhân viên. Thông tin mỗi nhân viên bao gồm họ (firstName), tên (lastName) và địa chỉ email.

Kết quả sau khi tạo RESTFul API thành công sẽ như sau:


Hướng dẫn sử dụng Spring Boot để tạo Restful API – Các bước thực hiện

1/ Tạo một Spring Boot Application

Chúng ta truy cập https://start.spring.io/ và thao tác như trong hình bên dưới



Các bạn lưu ý ngay sau khi chúng ta import vào, eclipse sẽ tiến hành download những dependency mà chúng ta đã khai báo. Do đó, máy tính phải có kết nối internet

Project sau khi import vào eclipse


3/ Tạo một model là Java class và đặt tên Employee



Nhập code cho Employee.java



4/ Tạo một repository là Java Interface và đặt tên EmployeeRepository
Nhập code cho EmployeeRepository.java


5/ Tạo một exception là một Java class và đặt tên ResourceNotFoundException

Nhập code cho ResourceNotFoundException.java


6/ Tạo một controller là Java class và đặt tên EmployeeController

package vn.giasutinhoc.restfulapi.controller; import java.util.HashMap; import java.util.List; import java.util.Map; import javax.validation.Valid; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.DeleteMapping; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.PutMapping; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import vn.giasutinhoc.restfulapi.exception.ResourceNotFoundException; import vn.giasutinhoc.restfulapi.model.Employee; import vn.giasutinhoc.restfulapi.repository.EmployeeRepository; @RestController @RequestMapping("api/v1") public class EmployeeController { @Autowired private EmployeeRepository employeeRepository; @GetMapping("employees") public List<Employee> getAllEmployees() { return employeeRepository.findAll(); } @GetMapping("employees/{id}") public ResponseEntity<Employee> getEmployeeById(@PathVariable(value = "id") Long employeeId) throws ResourceNotFoundException { Employee employee = employeeRepository.findById(employeeId) .orElseThrow(() -> new ResourceNotFoundException("Nhân viên này không tồn tại: " + employeeId)); return ResponseEntity.ok().body(employee); } @PostMapping("employees") public Employee createEmployee(@Valid @RequestBody Employee employee) { return employeeRepository.save(employee); } @PutMapping("employees/{id}") public ResponseEntity<Employee> updateEmployee(@PathVariable(value = "id") Long employeeId, @Valid @RequestBody Employee employeeDetails) throws ResourceNotFoundException { Employee employee = employeeRepository.findById(employeeId) .orElseThrow(() -> new ResourceNotFoundException("Nhân viên này không tồn tại: " + employeeId)); employee.setEmail(employeeDetails.getEmail()); employee.setLastName(employeeDetails.getLastName()); employee.setFirstName(employeeDetails.getFirstName()); final Employee updatedEmployee = employeeRepository.save(employee); return ResponseEntity.ok(updatedEmployee); } @DeleteMapping("/employees/{id}") public Map<String, Boolean> deleteEmployee(@PathVariable(value = "id") Long employeeId) throws ResourceNotFoundException { Employee employee = employeeRepository.findById(employeeId) .orElseThrow(() -> new ResourceNotFoundException("Nhân viên này không tồn tại: " + employeeId)); employeeRepository.delete(employee); Map<String, Boolean> response = new HashMap<>(); response.put("deleted", Boolean.TRUE); return response; } }

Hướng dẫn sử dụng Spring Boot để tạo Restful API – Build, Deploy và Run

1/ Cài đặt Spring Tools

Chọn Help -> chọn Eclipse Marketplace… -> chọn Spring Tools -> chọn Install


Chọn Confirm



Run thành công


4/ Test

Để test API, chúng tôi sử dụng Postman



END



0 Response to "Hướng dẫn sử dụng Spring Boot để tạo Restful API"

Post a Comment