Tổng quan về hệ sinh thái Spring (The Spring ecosystem)

Tổng quan về hệ sinh thái Spring (The Spring ecosystem)

Spring Core - Một trong những phần cơ bản của Spring bao gồm các khả năng nền tảng. Một trong những tính năng này là Spring context. Spring context là khả năng cơ bản của Spring framework cho phép Spring quản lý các phiên bản ứng dụng của bạn (instances app). Ngoài ra, là một phần của Spring Core, bạn tìm thấy Spring aspects functionality. Aspects giúp Spring can thiệp và thao tác các methods bạn xác định trong ứng dụng của mình. Spring Expression Language (SpEL) là một khả năng khác mà bạn sẽ tìm thấy như một phần của Spring Core, cho phép bạn mô tả các cấu hình cho Spring bằng một ngôn ngữ cụ thể. Spring Core nắm giữ các cơ chế mà Spring sử dụng để tích hợp vào ứng dụng của bạn.

Spring model-view-controller (MVC) - Một phần của Spring framework cho phép bạn phát triển các ứng dụng web phục vụ các yêu cầu HTTP. Các ứng dụng phổ biến nhất được phát triển với Spring là các ứng dụng web và trong hệ sinh thái Spring, bạn sẽ tìm thấy một bộ công cụ lớn cho phép bạn viết các ứng dụng web và dịch vụ web theo các kiểu khác nhau. Bạn có thể sử dụng Spring MVC để phát triển các ứng dụng bằng cách sử dụng kiểu servlet, phổ biến trong một số lượng lớn các ứng dụng ngày nay.

Spring Data Access - Cũng là một trong những phần cơ bản của Spring. Nó cung cấp các công cụ cơ bản mà bạn có thể sử dụng để kết nối với cơ sở dữ liệu SQL nhằm triển khai persistence layer cho ứng dụng của mình. Đối với hầu hết các ứng dụng, điều quan trọng là phải duy trì một phần dữ liệu mà chúng xử lý. Làm việc với cơ sở dữ liệu là một chủ đề cơ bản và trong Spring, đó là mô-đun Data Access mà bạn sẽ sử dụng để đảm bảo tính persistence của dữ liệu trong nhiều trường hợp. Spring data access bao gồm việc sử dụng JDBC, tích hợp với các object-relational mapping (ORM) như Hibernate và managing transactions.

Spring testing - Phần chứa các công cụ bạn cần để viết kiểm thử cho Spring application của mình. Module Spring testing cung cấp cho bạn một bộ công cụ lớn mà bạn sẽ sử dụng để viết unit và integration test.

Bạn có thể tưởng tượng Spring framework giống như một hệ mặt trời với Spring Core ở trung tâm. Khả năng của phần mềm là các hành tinh xung quanh Spring Core được giữ gần nó bởi trường hấp dẫn của nó.

Các dự án từ hệ sinh thái Spring

Spring Data - Dự án Spring Data triển khai một phần của hệ sinh thái Spring cho phép bạn dễ dàng kết nối với cơ sở dữ liệu và sử dụng persistence layer với số lượng dòng code tối thiểu được viết. Dự án đề cập đến cả công nghệ SQL và NoSQL và tạo ra một high-level layer, giúp đơn giản hóa cách bạn làm việc với data persistence.

Note: Spring Data Access là một mô-đun của Spring Core và cũng có một dự án độc lập trong hệ sinh thái Spring có tên là Spring Data. Spring Data Access chứa các triển khai truy cập dữ liệu cơ bản như cơ chế transaction và các JDBC tools. Spring Data tăng cường quyền truy cập vào cơ sở dữ liệu và cung cấp một bộ công cụ rộng hơn, giúp developer dễ tiếp cận hơn và cho phép ứng dụng của bạn kết nối với các loại nguồn dữ liệu khác nhau.

Spring boot - Spring Boot là một phần dự án của hệ sinh thái Spring giới thiệu khái niệm “convention over configuration”. Ý tưởng chính của khái niệm này là thay vì tự mình thiết lập tất cả các cấu hình của một framework, Spring Boot cung cấp cho bạn một cấu hình mặc định mà bạn có thể tùy chỉnh khi cần. Nhìn chung, kết quả là bạn viết ít code hơn vì bạn tuân theo các quy ước đã biết và ứng dụng của bạn khác với các ứng dụng khác theo một số cách . Vì vậy, thay vì viết tất cả các cấu hình cho từng và mọi ứng dụng, sẽ hiệu quả hơn nếu bắt đầu với cấu hình mặc định và chỉ thay đổi những gì khác với .

Hệ sinh thái Spring không chỉ là những khả năng được thảo luận trước đó trong phần này. Nó bao gồm một bộ sưu tập lớn các framework khác tích hợp tốt và tạo thành một vũ trụ lớn hơn. Ví dụ các dự án như như Spring Data, Spring Security, Spring Cloud, Spring Batch, Spring Boot, v.v. Khi bạn phát triển một ứng dụng, bạn có thể sử dụng nhiều dự án này cùng nhau hơn. Ví dụ: bạn có thể xây dựng một ứng dụng bằng cách sử dụng tất cả Spring Boot, Spring Security và Spring Data. Khi tôi nói dự án, tôi đề cập đến một phần của hệ sinh thái Spring được phát triển độc lập. Mỗi dự án này có một nhóm riêng làm việc để mở rộng khả năng của nó. Ngoài ra, mỗi dự án được mô tả riêng và có tài liệu tham khảo riêng trên trang web chính thức của Spring: https://spring.io/projects.

Hệ sinh thái Spring rất rộng lớn và chứa nhiều dự án. Một số trong số chúng bạn gặp thường xuyên hơn những cái khác và một số bạn hoàn toàn không thể sử dụng nếu bạn đang xây dựng một ứng dụng mà không có nhu cầu cụ thể. Trong bài viết này, tôi chỉ đề cập đến các dự án cần thiết để bạn bắt đầu: Spring Core, Spring Data và Spring Boot. Bạn có thể tìm thấy danh sách đầy đủ các dự án là một phần của hệ sinh thái Spring trên trang web chính thức của Spring: https://spring.io/projects/