
		<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
			<channel>
				<title>TungDaDev&#39;s Blog – stories, insights &amp; ideas</title>
				<link>https://tungdadev.com/blog</link>
				<description>A personal space on the cloud where I document my programming journey, sharing lessons, insights and resources for fellow developers.</description>
				<language>en-us</language>
				<managingEditor>bthanhtung.ite@gmail.com (TungDaDev)</managingEditor>
				<webMaster>bthanhtung.ite@gmail.com (TungDaDev)</webMaster>
				<lastBuildDate>Thu, 07 Mar 2024 00:00:00 GMT</lastBuildDate>
				<atom:link href="https://tungdadev.com/tags/spring-framework/feed.xml" rel="self" type="application/rss+xml"/>
				
		<item>
			<guid>https://tungdadev.com/blog/http-abstractions</guid>
			<title>http abstractions</title>
			<link>https://tungdadev.com/blog/http-abstractions</link>
			<description>HTTP Abstractions là các giao diện và lớp lập trình (ví dụ: HttpContext, HttpRequest, HttpResponse) đóng gói sự phức tạp của giao thức HTTP thô thành các đối tượng hướng đối tượng dễ quản lý. Sự trừu tượng hóa này giúp ứng dụng độc lập với máy chủ web bên dưới, cho phép xử lý dữ liệu web linh hoạt và hỗ trợ tối đa khả năng kiểm thử (unit test).</description>
			<pubDate>Thu, 07 Mar 2024 00:00:00 GMT</pubDate>
			<author>bthanhtung.ite@gmail.com (TungDaDev)</author>
			<category>java</category><category>software-development</category><category>spring-framework</category><category>best-practices</category><category>vietnamese</category>
		</item>
	
		<item>
			<guid>https://tungdadev.com/blog/spring-application-context</guid>
			<title>ioc container &amp; application context</title>
			<link>https://tungdadev.com/blog/spring-application-context</link>
			<description>IoC Container là lõi trung tâm của Spring Framework, chịu trách nhiệm tự động khởi tạo, gắn kết và quản lý toàn bộ vòng đời của các đối tượng (Beans) thông qua cơ chế Tiêm phụ thuộc (Dependency Injection). Trong khi đó, **Application Context** là phiên bản nâng cao (interface) của IoC Container, không chỉ kế thừa các tính năng cơ bản mà còn cung cấp thêm các dịch vụ cấp doanh nghiệp như xử lý sự kiện, đa ngôn ngữ và tích hợp AOP.</description>
			<pubDate>Sat, 23 Sep 2023 00:00:00 GMT</pubDate>
			<author>bthanhtung.ite@gmail.com (TungDaDev)</author>
			<category>java</category><category>software-development</category><category>spring-framework</category><category>best-practices</category><category>vietnamese</category>
		</item>
	
		<item>
			<guid>https://tungdadev.com/blog/spring-data-core-annotations</guid>
			<title>spring data core annotations</title>
			<link>https://tungdadev.com/blog/spring-data-core-annotations</link>
			<description>**Spring Data Core Annotations** (như `@Id`, `@Query`, `@Repository`, `@Transient`) là bộ chú thích cốt lõi giúp ánh xạ các lớp đối tượng Java (Entity) với cấu trúc cơ sở dữ liệu và quản lý các thao tác truy xuất. Chúng giúp loại bỏ các đoạn mã nguyên thủy (boilerplate code), cho phép lập trình viên định nghĩa khóa chính, các mối quan hệ bảng và truy vấn tùy chỉnh một cách trực quan, khai báo và dễ bảo trì.</description>
			<pubDate>Thu, 07 Sep 2023 00:00:00 GMT</pubDate>
			<author>bthanhtung.ite@gmail.com (TungDaDev)</author>
			<category>java</category><category>software-development</category><category>spring-framework</category><category>best-practices</category><category>vietnamese</category>
		</item>
	
		<item>
			<guid>https://tungdadev.com/blog/spring-data-jpa</guid>
			<title>spring data jpa</title>
			<link>https://tungdadev.com/blog/spring-data-jpa</link>
			<description>Spring Data JPA là một module cốt lõi trong hệ sinh thái Spring Framework, cung cấp một lớp trừu tượng mạnh mẽ nằm trên Java Persistence API (JPA). Thay vì phải viết các đoạn mã lặp lại (boilerplate code) để thao tác với cơ sở dữ liệu, nhà phát triển chỉ cần khai báo các interface (như kế thừa `JpaRepository`), và Spring sẽ tự động cung cấp các triển khai cho thao tác CRUD cơ bản. Tính năng nổi bật nhất của nó là khả năng tự động sinh câu truy vấn SQL dựa trên quy tắc đặt tên phương thức (ví dụ: `findByEmailAndStatus`), đồng thời hỗ trợ phân trang, sắp xếp và kiểm toán (auditing) một cách vô cùng tối ưu.</description>
			<pubDate>Thu, 21 Sep 2023 00:00:00 GMT</pubDate>
			<author>bthanhtung.ite@gmail.com (TungDaDev)</author>
			<category>java</category><category>software-development</category><category>spring-framework</category><category>best-practices</category><category>vietnamese</category>
		</item>
	
		<item>
			<guid>https://tungdadev.com/blog/spring-dependency-injection</guid>
			<title>dependency injection</title>
			<link>https://tungdadev.com/blog/spring-dependency-injection</link>
			<description>Dependency Injection (DI) là một mẫu thiết kế phần mềm cốt lõi dùng để triển khai nguyên tắc Inversion of Control (IoC). Thay vì một đối tượng phải tự tay khởi tạo các thành phần mà nó phụ thuộc (thường dùng từ khóa `new`), các thành phần (dependency) này sẽ được &quot;tiêm&quot; (inject) từ bên ngoài vào đối tượng đó (thông qua constructor, setter hoặc field) bởi một hệ thống quản lý trung tâm (như Spring Container). Cơ chế này giúp giảm thiểu sự ràng buộc chặt chẽ (loose coupling) giữa các lớp, làm cho mã nguồn linh hoạt, dễ bảo trì và đặc biệt thuận lợi cho việc kiểm thử độc lập (unit test).</description>
			<pubDate>Mon, 09 Sep 2024 00:00:00 GMT</pubDate>
			<author>bthanhtung.ite@gmail.com (TungDaDev)</author>
			<category>java</category><category>software-development</category><category>spring-framework</category><category>best-practices</category><category>vietnamese</category>
		</item>
	
		<item>
			<guid>https://tungdadev.com/blog/spring-di</guid>
			<title>spring dependency injection</title>
			<link>https://tungdadev.com/blog/spring-di</link>
			<description>Spring Dependency Injection</description>
			<pubDate>Tue, 01 Aug 2023 00:00:00 GMT</pubDate>
			<author>bthanhtung.ite@gmail.com (TungDaDev)</author>
			<category>java</category><category>software-development</category><category>spring-framework</category><category>spring-boot</category><category>vietnamese</category>
		</item>
	
		<item>
			<guid>https://tungdadev.com/blog/spring-jackson-annotations</guid>
			<title>spring jackson annotations</title>
			<link>https://tungdadev.com/blog/spring-jackson-annotations</link>
			<description>Spring Jackson Annotations là bộ công cụ (thuộc thư viện Jackson được tích hợp mặc định trong Spring Boot) cung cấp quyền kiểm soát chi tiết quá trình chuyển đổi (serialization và deserialization) giữa các đối tượng Java và định dạng JSON. Thông qua các chú thích phổ biến như @JsonProperty (đổi tên trường), @JsonIgnore (bỏ qua dữ liệu nhạy cảm khi trả về), @JsonFormat (định dạng ngày tháng) hay @JsonInclude (lọc các giá trị null), nhà phát triển có thể dễ dàng tùy biến cấu trúc dữ liệu giao tiếp qua API mà không cần can thiệp sâu vào logic mã nguồn.</description>
			<pubDate>Tue, 19 Sep 2023 00:00:00 GMT</pubDate>
			<author>bthanhtung.ite@gmail.com (TungDaDev)</author>
			<category>java</category><category>software-development</category><category>spring-framework</category><category>best-practices</category><category>vietnamese</category>
		</item>
	
		<item>
			<guid>https://tungdadev.com/blog/spring-jakarta-bean-validation</guid>
			<title>jakarta bean validation &amp; spring validation</title>
			<link>https://tungdadev.com/blog/spring-jakarta-bean-validation</link>
			<description>Jakarta Bean Validation &amp; Spring Validation là bộ đôi công cụ cốt lõi giúp tự động hóa quá trình kiểm tra tính hợp lệ của dữ liệu đầu vào.</description>
			<pubDate>Wed, 25 Oct 2023 00:00:00 GMT</pubDate>
			<author>bthanhtung.ite@gmail.com (TungDaDev)</author>
			<category>java</category><category>software-development</category><category>spring-framework</category><category>best-practices</category><category>vietnamese</category>
		</item>
	
		<item>
			<guid>https://tungdadev.com/blog/spring-security-annotations</guid>
			<title>spring security annotations</title>
			<link>https://tungdadev.com/blog/spring-security-annotations</link>
			<description>Spring Security Annotations là các chú thích cốt lõi giúp triển khai cơ chế xác thực (authentication) và phân quyền (authorization) một cách khai báo, thay vì phải viết các đoạn mã logic kiểm tra quyền rườm rà bên trong hàm. Chúng cho phép lập trình viên kiểm soát quyền truy cập linh hoạt ở cả cấp độ cấu hình tổng thể lẫn từng phương thức cụ thể (method-level).</description>
			<pubDate>Wed, 18 Oct 2023 00:00:00 GMT</pubDate>
			<author>bthanhtung.ite@gmail.com (TungDaDev)</author>
			<category>java</category><category>software-development</category><category>spring-framework</category><category>best-practices</category><category>vietnamese</category>
		</item>
	
		<item>
			<guid>https://tungdadev.com/blog/spring-security-jwt</guid>
			<title>spring security với jwt</title>
			<link>https://tungdadev.com/blog/spring-security-jwt</link>
			<description>Spring Security kết hợp với JWT (JSON Web Token) là tiêu chuẩn kiến trúc phổ biến nhất để bảo mật các RESTful API hiện đại. Sự kết hợp này chuyển đổi cơ chế xác thực của ứng dụng từ trạng thái (stateful - dùng Session/Cookie lưu trên server) sang phi trạng thái (stateless - mọi dữ liệu xác thực nằm gọn trong token), giúp hệ thống dễ dàng mở rộng (scale) và tối ưu tài nguyên bộ nhớ.</description>
			<pubDate>Thu, 02 May 2024 00:00:00 GMT</pubDate>
			<author>bthanhtung.ite@gmail.com (TungDaDev)</author>
			<category>java</category><category>software-development</category><category>spring-boot</category><category>spring-framework</category><category>jwt</category><category>vietnamese</category>
		</item>
	
		<item>
			<guid>https://tungdadev.com/blog/spring-test-annotations</guid>
			<title>spring test annotations</title>
			<link>https://tungdadev.com/blog/spring-test-annotations</link>
			<description>Spring Test Annotations là bộ công cụ cung cấp các tính năng mạnh mẽ để viết Unit Test và Integration Test trong hệ sinh thái Spring Boot.</description>
			<pubDate>Wed, 11 Oct 2023 00:00:00 GMT</pubDate>
			<author>bthanhtung.ite@gmail.com (TungDaDev)</author>
			<category>java</category><category>software-development</category><category>spring-framework</category><category>best-practices</category><category>vietnamese</category>
		</item>
	
		<item>
			<guid>https://tungdadev.com/blog/spring-web-bind-annotations</guid>
			<title>spring web bind annotations</title>
			<link>https://tungdadev.com/blog/spring-web-bind-annotations</link>
			<description>Spring Web Bind Annotations là nhóm các chú thích (annotations) cốt lõi trong Spring MVC và Spring WebFlux. Chúng đóng vai trò là &quot;cầu nối&quot; tự động trích xuất dữ liệu từ các thành phần khác nhau của một HTTP Request (như URL, Body, Headers) và gán (bind) trực tiếp vào các tham số (arguments) trong phương thức của Controller.</description>
			<pubDate>Fri, 01 Sep 2023 00:00:00 GMT</pubDate>
			<author>bthanhtung.ite@gmail.com (TungDaDev)</author>
			<category>java</category><category>software-development</category><category>spring-framework</category><category>best-practices</category><category>vietnamese</category>
		</item>
	
		<item>
			<guid>https://tungdadev.com/blog/transactional-and-spring-aop</guid>
			<title>@Transactional &amp; spring aop — transaction management &amp; cross-cutting concerns</title>
			<link>https://tungdadev.com/blog/transactional-and-spring-aop</link>
			<description>@Transactional và Spring AOP (Aspect-Oriented Programming) là hai mảnh ghép quan trọng tạo nên cơ chế quản lý giao dịch tự động trong Spring Framework. Sự kết hợp này cho phép bạn tách biệt logic nghiệp vụ (business logic) khỏi các tác vụ kỹ thuật (cross-cutting concerns) như bắt đầu, cam kết (commit) hoặc rollback giao dịch.</description>
			<pubDate>Mon, 18 Sep 2023 00:00:00 GMT</pubDate>
			<author>bthanhtung.ite@gmail.com (TungDaDev)</author>
			<category>java</category><category>software-development</category><category>spring-framework</category><category>best-practices</category><category>vietnamese</category>
		</item>
	
		<item>
			<guid>https://tungdadev.com/blog/what-happen-when-call-rest-api-update</guid>
			<title>what happens when you call a rest api update?</title>
			<link>https://tungdadev.com/blog/what-happen-when-call-rest-api-update</link>
			<description>Khi bạn thực hiện một yêu cầu UPDATE (thường thông qua phương thức PUT hoặc PATCH) tới một REST API, một quy trình chuẩn hóa gồm nhiều bước sẽ diễn ra để đảm bảo dữ liệu được cập nhật an toàn và nhất quán.</description>
			<pubDate>Thu, 27 Jun 2024 00:00:00 GMT</pubDate>
			<author>bthanhtung.ite@gmail.com (TungDaDev)</author>
			<category>java</category><category>software-development</category><category>spring-framework</category><category>best-practices</category><category>vietnamese</category>
		</item>
	
			</channel>
		</rss>
	