Hướng dẫn spring with javascript - mùa xuân với javascript

1. Giới thiệu Spring Boot

1.1. Spring Boot là gì?

Spring là một Java framework siêu to và khổng lồ, làm được đủ mọi thứ. Nó được chia thành nhiều module, mỗi module làm một chức năng, ví dụ Spring Core, Web, Data access, AOP,... Spring được xây dựng dựa trên 2 khái niệm nền tảng là Dependency injection và AOP (Aspect Oriented Programming).

Nội dung chính

  • 1. Giới thiệu Spring Boot
  • 1.1. Spring Boot là gì?
  • Spring là một Java framework siêu to và khổng lồ, làm được đủ mọi thứ. Nó được chia thành nhiều module, mỗi module làm một chức năng, ví dụ Spring Core, Web, Data access, AOP,... Spring được xây dựng dựa trên 2 khái niệm nền tảng là Dependency injection và AOP (Aspect Oriented Programming).
  • Nội dung chính
  • 1.2. Tại sao nên học Spring Boot?
  • 2. Cần tìm hiểu những gì
  • 2.1. Java Core
  • 2.2. Package manager
  • 2.3. Spring Boot
  • 2.4. JPA/MongoDB
  • 2.5. Template engine
  • 2.6. Các tool khác
  • 2.7. Nâng cao

Hướng dẫn spring with javascript - mùa xuân với javascript

2.8. What's next?

  • 3. Good resources
  • Một rắc rối khi dùng Spring là việc cấu hình (config) dự án quá phức tạp. Bạn phải làm đủ thứ việc chỉ để tạo một web HelloWorld:
  • Tạo Maven hoặc Gradle project
  • Thêm các thư viện cần thiết
  • Tạo XML để cấu hình project, cấu hình các bean

Code và build thành file WAR

  • Cấu hình Tomcat server để chạy được file WAR vừa build
  • Đấy, Spring khá mạnh mẽ nhưng việc cấu hình nghe thôi cũng mệt rồi. Do đó Spring boot ra đời, với các ưu điểm:
  • Auto config: tự động cấu hình thay cho bạn, chỉ cần bắt đầu code và chạy là được

Xây dựng các bean dựa trên annotation thay vì XML

  • Server Tomcat được nhúng ngay trong file JAR build ra, chỉ cần chạy ở bất kì đâu java chạy được
  • So sánh với Spring, thì Spring Boot bạn chỉ cần:
  • Dùng Spring Initializr, nhập các info của project, chọn thư viện rồi down code về

Spring là một Java framework siêu to và khổng lồ, làm được đủ mọi thứ. Nó được chia thành nhiều module, mỗi module làm một chức năng, ví dụ Spring Core, Web, Data access, AOP,... Spring được xây dựng dựa trên 2 khái niệm nền tảng là Dependency injection và AOP (Aspect Oriented Programming).

Nội dung chính

1.2. Tại sao nên học Spring Boot?

2. Cần tìm hiểu những gì

  • 2.1. Java Core

  • 2.2. Package manager

  • 2.3. Spring Boot

  • 2.4. JPA/MongoDB

  • 2.5. Template engine

  • 2.6. Các tool khác

  • 2.7. Nâng cao

2.3. Spring Boot

2.4. JPA/MongoDB

  • 2.5. Template engine

  • 2.6. Các tool khác

  • 2.7. Nâng cao

2.4. JPA/MongoDB

2.5. Template engine

  • 2.6. Các tool khác

  • 2.7. Nâng cao

  • 2.8. What's next?

  • 3. Good resources

  • Một rắc rối khi dùng Spring là việc cấu hình (config) dự án quá phức tạp. Bạn phải làm đủ thứ việc chỉ để tạo một web HelloWorld:

  • Tạo Maven hoặc Gradle project

  • Thêm các thư viện cần thiết

2.5. Template engine

  • 2.6. Các tool khác

  • 2.7. Nâng cao

  • 2.8. What's next?

  • 3. Good resources

  • Một rắc rối khi dùng Spring là việc cấu hình (config) dự án quá phức tạp. Bạn phải làm đủ thứ việc chỉ để tạo một web HelloWorld:

2.6. Các tool khác

2.7. Nâng cao

  • 2.8. What's next?

  • Xác thực người dùng trong Spring Security bằng session

  • Xác thực người dùng trong Spring Security bằng JWT

  • Spring batch là gì?

  • Spring reactive web: Web framework bất đồng bộ tương tự Node.js nhưng là Java.

Spring Boot mặc định sử dụng ngôn ngữ Java, các bạn có thể tìm hiểu thêm về Kotlin cũng khá hay.

3. Good resources

Bên cạnh series này còn có rất nhiều nơi khác viết bài về Spring Boot khá ok. Ví dụ như các trang sau:

  • Series "Làm chủ Spring Boot từ Zero đến Hero" của Loda.me: Trước mình làm quen với Spring Boot ở trang này, viết khá dễ hiểu và phù hợp với người mới.
  • Laptrinhjavaweb.com: trang này giúp bạn có cái nhìn tổng quan về Java web.
  • Stackjava.com: muốn tìm hiểu thêm các khía cạnh khác thì lên trang này đọc nhé.

Thêm các trang tiếng Anh nữa:

  • Baedung.com: bạn nào học lâu chắc biết trang này rồi, nhiều bài hay về Spring, bao phủ khá toàn diện. Hầu như vấn đề nào gặp phải đều có bài viết trên đây.
  • Vlad Mihalcea: ông này chuyên về xử lý database trong Java, muốn tìm hiểu sâu thì đọc.

Còn vài trang nữa như Dzone,... mà mình không liệt kê hết ở đây.

À quên nữa, nếu các bạn có thắc mắc hoặc có gì đó cần bổ sung vào series thì hãy comment bên dưới nhé. Nó sẽ giúp mình hoàn thiện series cũng như kiến thức nữa.