Mùa xuân với Maven

Mục lục

  1. Tổng quat
  2. Sự phụ thuộc cơ bản vào mùa xuân với Maven
  3. Spring Persistence with Maven
  4. MVC mùa xuân với Maven
  5. Spring Security với Maven
  6. Kiểm tra mùa xuân với Maven
  7. Sử dụng các mốc quan trọng
  8. Sử dụng Ảnh chụp nhanh
  9. Phần kết luận

1. Khái quát chung

Hướng dẫn này minh họa cách thiết lập các phụ thuộc Spring thông qua Maven . Các bản phát hành mùa xuân mới nhất có thể được tìm thấy trên Maven Central.

2. Sự phụ thuộc cơ bản vào mùa xuân với Maven

Spring được thiết kế theo mô-đun cao - không nên sử dụng một phần của Spring và không yêu cầu phần khác. Ví dụ, Spring Context cơ bản có thể không có thư viện Persistence hoặc MVC Spring.

Hãy bắt đầu với một nền tảng thiết lập Maven mà sẽ chỉ sử dụng các lò xo bối cảnh phụ thuộc :

 5.2.8.RELEASE   org.springframework spring-context ${org.springframework.version} runtime 

Phần phụ thuộc này - spring-context - xác định Spring Injection Container thực tế và có một số phần nhỏ phụ thuộc: spring-core , spring-expression , spring-aopspring-bean . Những điều này tăng cường vùng chứa bằng cách cho phép hỗ trợ một số công nghệ Spring cốt lõi : các tiện ích Core Spring, Ngôn ngữ biểu thức mùa xuân (SpEL), hỗ trợ Lập trình hướng theo phương diện và cơ chế JavaBeans.

Lưu ý rằng chúng tôi đang xác định sự phụ thuộc trong phạm vi thời gian chạy - điều này sẽ đảm bảo rằng không có sự phụ thuộc vào thời gian biên dịch trên bất kỳ API cụ thể nào của Spring. Đối với các trường hợp sử dụng nâng cao hơn, phạm vi thời gian chạy có thể bị xóa khỏi một số phụ thuộc Spring đã chọn, nhưng đối với các dự án đơn giản hơn, không cần biên dịch theo Spring để sử dụng đầy đủ khung.

Ngoài ra, lưu ý rằng JDK 8 là phiên bản Java tối thiểu cần thiết cho Spring 5.2. Nó cũng hỗ trợ JDK 11 là nhánh LTS hiện tại và JDK 13 là bản phát hành OpenJDK mới nhất.

3. Spring Persistence With Maven

Bây giờ chúng ta hãy xem xét các phụ thuộc bền vững của Spring - chủ yếu là spring-orm :

 org.springframework spring-orm ${org.springframework.version} 

Điều này đi kèm với hỗ trợ Hibernate và JPA - chẳng hạn như HibernateTemplateJpaTemplate - cũng như một số phụ thuộc bổ sung, liên quan đến độ bền: spring-jdbcspring-tx .

Thư viện JDBC Data Access xác định hỗ trợ Spring JDBC cũng như JdbcTemplatespring-tx đại diện cho Tóm tắt quản lý giao dịch cực kỳ linh hoạt.

4. Spring MVC With Maven

Để sử dụng hỗ trợ Spring Web và Servlet, hai phụ thuộc cần phải được bao gồm trong pom , một lần nữa ngoài các phụ thuộc cốt lõi từ trên:

 org.springframework spring-web ${org.springframework.version}   org.springframework spring-webmvc ${org.springframework.version} 

Phần phụ thuộc spring-web chứa các tiện ích web chung cho cả môi trường Servlet và Portlet, trong khi spring-webmvc cho phép hỗ trợ MVC cho môi trường Servlet.

spring-webmvcspring-web là phụ thuộc nên không cần xác định rõ ràng spring-web khi sử dụng spring-webmvc .

Bắt đầu từ Spring 5.0, để hỗ trợ khung web phản ứng ngăn xếp, chúng ta có thể thêm phần phụ thuộc cho Spring WebFlux:

 org.springframework spring-webflux ${org.springframework.version}  

5. Spring Security With Maven

Sự phụ thuộc của Security Maven được thảo luận sâu trong bài báo Spring Security with Maven.

6. Thử nghiệm mùa xuân với Maven

Khung kiểm tra mùa xuân có thể được đưa vào dự án thông qua phần phụ thuộc sau:

 org.springframework spring-test ${spring.version} test 

Với Spring 5, chúng ta cũng có thể thực hiện kiểm tra đồng thời.

7. Sử dụng các cột mốc

Phiên bản phát hành của Spring được lưu trữ trên Maven Central. Tuy nhiên, nếu một dự án cần sử dụng các phiên bản quan trọng, thì kho lưu trữ Spring tùy chỉnh cần được thêm vào pom:

  repository.springframework.maven.milestone Spring Framework Maven Milestone Repository //repo.spring.io/milestone/  

Khi kho lưu trữ này đã được xác định, dự án có thể xác định các phần phụ thuộc như:

 org.springframework spring-core 5.3.0-M1 

8. Sử dụng Ảnh chụp nhanh

Tương tự như các mốc quan trọng, ảnh chụp nhanh được lưu trữ trong kho lưu trữ tùy chỉnh:

  repository.springframework.maven.snapshot Spring Framework Maven Snapshot Repository //repo.spring.io/snapshot/  

Khi kho lưu trữ SNAPSHOT được kích hoạt trong pom.xml, các phụ thuộc sau có thể được tham chiếu:

 org.springframework spring-core 4.0.3.BUILD-SNAPSHOT 

Cũng như - cho 5.x:

 org.springframework spring-core 5.3.0-SNAPSHOT 

9. Kết luận

Bài viết này thảo luận về các chi tiết thực tế của việc sử dụng Spring với Maven . Các phụ thuộc Maven được trình bày ở đây tất nhiên là một số phụ thuộc chính, và một số phụ thuộc khác có thể đáng được đề cập đến và vẫn chưa được thực hiện. Tuy nhiên, đây sẽ là một điểm khởi đầu tốt để sử dụng Spring trong một dự án.