Fix lỗi không thể kết nối jdbc trong spring mvc năm 2024
Spring Boot là một dự án khá nổi bật trong hệ sinh thái Spring Framework. Nếu như trước đây, công đoạn khởi tạo một dự án Spring khá vất vả từ việc khai báo các dependency trong file pom.xml cho đến cấu hình bằng XML hoặc annotation phức tạp, tạo server cấu hình spring mvc, thì giờ đây với Spring Boot, chúng ta có thể tạo dự án Spring một cách nhanh chóng và cấu hình cũng đơn giản hơn. Dưới đây là một số tính năng nổi bật của Spring Boot: Show
Tạo dự ánNew -> Project và điền thông tin cấu hình sau, thay đổi theo ý bạn
ta sẽ tạo cấu trúc dự án như thế này
đây là nội dùng file pom.xml
ta có thể thêm thư viện vào thông qua các dependency, spring boot sẽ tự động down và cấu hình cần thiết cho các dependency DemoApplicationđây là điểm chính của ứng dụng spring boot
Annotation @SpringBootApplication là sự kết hợp giữa 3 annotation khác của Spring bao gồm: @SpringBootConfiguration, @ComponentScan, @EnableAutoConfiguration trong đó annotation @EnableAutoConfiguration là quan trọng nhất. Với @EnableAutoConfiguration annotation, Spring Boot sẽ tự động cấu hình cho ứng dụng của chúng ta dựa vào classpath, các annotations và các thông tin cấu hình mà chúng ta định nghĩa. Tất cả các annotation này sẽ giúp cho Spring Boot có thể tự động cấu hình cho ứng dụng của chúng ta một cách phù hợp và chúng ta không cần phải quan tâm nhiều đến việc cấu hình. Tạo database và cấu hình kết nối mysql
config
Chúng ta cấu hình kết nối với database trong file application.properties nhớ thay đổi username, password, database cho phù hợp Tạo Model
các model sẽ phải dùng annotation @Entity Ta có thể dùng các annnotation khác thiết lập: @Table(name = "nametable") trên model để thay đổi tên table muốn mapping @ID : xác định khóa chính @GeneratedValue : tự động tăng @NotBlank :không được null hoặc rỗng @Column(nullable = false, updatable = false) cấu hình column như khai báo @Temporal(TemporalType.TIMESTAMP) chuyển đổi giá trị data từ java sang database cho hợp lí @JsonIgnoreProperties đây là 1 annotaion của jackson . Spring Boot sử dụng Jackson for Serializing and Deserializing đối tượng java từ JSON. ... để trên các thuộc tính của model ,để cấu hình tương ứng cho từng annotation Tạo service sử dụng JpaRepository để truy cập dữ liệu từ database
Spring Data JPA đã làm mọi việc cho chúng ta. JpaRepository interface đã định nghĩa các method cho các hoạt đông CRUD trên entity. Việc của chúng ta là extend JpaRepository , không cần phải implement lại các methods Vạ chúng ta có thể sử dụng các function như save(), getOne(), findAll(), count(), delete() ... Tạo controller
@RestController annotation là sự kết hợp giữa @Controller và @ResponseBody annotations. @RequestMapping("/api") để khai báo các url của các api trong controller này sẽ bắt đầu với '/api' lấy tất cả liên hệ
ở đây nó sẽ gọi method findAll() của JpaRepository trả về toàn bộ danh sách liên hệ có trong database method: khai báo phương thức khi call url, GET, PUT, PATCH, POST,.... tạo mới liên hệ
0 @RequestBody tương ứng với body của request @Valid để đảm bảo request body là hợp lệ nếu ta dùng các annotation validation như @NotBlank... lấy một liên hệ
1 @PathVariable mapping biến ở đường dẫn với biến tham số gọi method getOne() để lấy dữ liệu thông qua đối số update liên hệ
2 Xóa liên hệ
3 Chạy ứng dụngcó thể chạy ứng dụng bằng 2 cách
4 or vào thư mục gốc projcet chạy bằng command line
5 TestTa dùng Postman để test lấy 1 liên hệ http://localhost:8080/api/contact/{id} method GET lấy tất cả liên hệ http://localhost:8080/api/contact/ method GET tạo mới 1 liên hệ http://localhost:8080/api/contact/ method POST update 1 liên hệ http://localhost:8080/api/contact/{id} method PUT |