Spring framework lần đầu tiên được viết bởi Rod Johnson và đến nay nó đã phổ biến tới mức mà bất kỳ một lập trình viên Java nào cũng cần phải biết.
spring-by-pivotal

Trong bài viết về Spring framework cơ bản này, Hướng Dẫn Java sẽ hướng dẫn các bạn từng bước một những kiến thức cần thiết về Spring framework để bạn có thể làm việc với nó.

Đầu tiên thì các bạn nên biết về khái niệm Dependency Injection thông qua bài viết Hiểu về Dependency Injection, nó sẽ cung cấp cái nhìn mới cho các bạn về cách mà chúng ta quản lý các đối tượng trong Java. Cùng với đó là khái niệm IoC, Inversion of Control và Dependency Injection, qua đó các bạn sẽ hình dung được cái mà Spring framework nó đang làm.

Để bắt đầu làm việc với Spring, mình trình bày cho các bạn một ứng dụng đầu tiên thông qua bài viết Spring framework xin chào thế giới. Các bạn sẽ có cái nhìn tổng quan về cách làm việc với Spring framework sẽ như thế nào.

Sau khi đọc những bài viết trên, giờ các bạn có thể tìm hiểu sâu về Spring framework rồi.


Cài đặt

Các bạn nên sử dụng Spring Tool Suite IDE khi làm việc với Spring để tận dụng những sự hỗ trợ của IDE này cho Spring framework.


Khởi tạo bean

Các bạn sẽ biết cách làm thế nào để khai báo và khởi tạo các đối tượng Java trong Spring container sử dụng tập tin XML.

Các bạn sẽ biết cách sử dụng kế thừa như trong Java trong Spring như thế nào?

Bài viết này mình sẽ trình bày với các bạn cách tập tin cấu hình XML của Spring làm việc, cách khai báo các namespace để sử dụng cái thẻ XML của Spring trong tập tin này.

Ngoài cách khởi tạo bean trong khung chứa của Spring sử dụng tập tin XML, chúng ta còn có thể sử dụng annotation @Configuration.

Chúng ta cũng có thể sử dụng cơ chế auto component scan của Spring để khởi tạo bean trong khung chứa của nó.


Inject bean

Để sử dụng đối tượng Java này trong một đối tượng Java khác với Spring, các bạn cần biết làm thế nào để khai báo nó trong tập tin cấu hình của Spring.

Bài viết này mình trình bày chi tiết hơn về Constructor Injection trong Spring sử dụng tập tin XML.

Trong bài viết này, mình trình bày với các bạn cách khai báo các overloaded constructor trong Spring.

Bài viết này mình trình bày chi tiết hơn về Setter Injection trong Spring sử dụng tập tin XML.

Các bạn sẽ biết cách làm thế nào để đưa đối tượng Java này vào đối tượng Java khác một cách tự động.

Các bạn cũng có thể sử dụng @Autowired annotation để tự động đưa đối tượng phụ thuộc vào đối tượng bị phụ thuộc trong Spring.

Mình dạo qua code của AutowiredAnnotationBeanPostProcessor để xem đối tượng này đã làm gì để có thể đưa đối tượng phụ thuộc vào đối tượng bị phụ thuộc. Các bạn có thể đọc qua để tham khảo.

Trong bài viết này, mình hướng dẫn các bạn sử dụng annotation @Qualifier để chỉ định bean cần autowire khi chúng ta có nhiều bean của cùng một đối tượng phụ thuộc trong khung chứa của Spring.


Thao tác với properties files

PropertyPlaceholderConfigurer là một trong những đối tượng giúp Spring đọc các properties files.

Trong bài viết này, mình sẽ trình bày với các bạn cách đọc properties files trong Spring sử dụng context namespace.

Trong bài viết này, mình sẽ trình bày với các bạn cách đọc properties files trong Spring sử dụng util namespace.

Trong bài viết này, mình sẽ hướng dẫn các bạn cách đọc properties files trong Spring sử dụng annotation @PropertySource.

Khi sử dụng properties trong tập tin cấu hình của Spring, các bạn cần biết cách khai báo nó.

Trong bài viết này, mình sẽ hướng dẫn các bạn cách sử dụng properties trong Spring với annotation @Value.


Database

Trong bài viết này, mình giới thiệu với các bạn về JDBC transaction management trong Spring.

Trong bài viết này, mình sẽ trình bày với các bạn cách sử dụng JPA trong Spring framework.

Trong bài viết này, mình sẽ trình bày với các bạn cách sử dụng Hibernate trong Spring framework.


Các kiến thức khác

Các bạn sẽ biết sự khác nhau giữa BeanFactory và ApplicationContext trong Spring mặc dù cả hai đối tượng này đều chứa thông tin về khung chứa của Spring.

Để gọi ApplicationContext bạn sẽ cần sử dụng ApplicationContextAware, để đặt tên cho một Bean bạn sẽ sử dụng BeanNameAware.

 

Chia sẽ bài viết này ...Share on Facebook
Facebook
0Tweet about this on Twitter
Twitter
Share on LinkedIn
Linkedin

12 thoughts on “Spring Framework cơ bản

  1. Khanh Nguyen

    @Cuong: Làm nhiều bạn sẽ thấy được cái lợi của nó.
    Trong ví dụ của bạn thì một ví dụ điển hình là nếu sau này bạn muốn thay đổi drawing.setShape(triangle) thì việc sử dụng file spring bean xml sẽ giúp bạn không cần phải sửa code nhiều.

  2. Avatar

    Cho mình hỏi xí
    Vì các giá trị đã khởi tạo cứng trong file spring.xml không thay đổi được.
    Vậy spring bean xml thường được sử dụng vào mục đích gì trong thực tế?

    1. Khanh Nguyen

      Giá trị ở đây bạn muốn nói là gì vậy? Bởi vì thực tế chúng ta cũng có thể thay đổi được tùy theo bài toán!

      Một ví dụ điển hình là ứng dụng của bạn chạy ở nhiều môi trường khác nhau, mỗi môi trường thì nhu cầu của bài toán là khác nhau. Do đó, cách cấu hình Spring xml cũng khác nhau!

      1. Avatar

        Hiện tại mình mới tìm hiểu nên vẫn còn nhiều cái thắc mắc
        vd này chẳng hạn

        Tức là mình đã biết rõ và khởi tạo luôn list cho Clazz. Mình thấy nó cũng giống như thay vì viết trong code thì được move qua file xml.
        Mình vẫn chưa hiểu dùng spring bean sẽ hay hơn như thế nào và thường dc ứng dụng vào cái gì .

          1. Avatar

            Cảm ơn bạn mình đã đọc qua và hiểu ví dụ, tuy nhiên vẫn còn thắc mắc việc move đoạn code injection (ở đây là
            Shape shape = new Circle(); drawing.setShape(shape);) từ trong code qua file spring bean xml thì có lợi gì so với code trực tiếp .

Add Comment