<?xml version="1.0" encoding="UTF-8" ?>
<rss
    version="2.0"
    xmlns:atom="http://www.w3.org/2005/Atom"
    xmlns:content="http://purl.org/rss/1.0/modules/content/"
    xmlns:webfeeds="http://webfeeds.org/rss/1.0"
    xmlns:media="http://search.yahoo.com/mrss/"
    >
    <channel>
        <title>Spring-mvc Tag - Viblo</title>
        <link>https://viblo.asia/rss</link>
        <description><![CDATA[Free service for technical knowledge sharing]]></description>
        <atom:link href="https://viblo.asia/rss/tags/spring-mvc.rss" rel="self"></atom:link>
                <copyright>Sun* Inc.</copyright>
                                                <webfeeds:logo>https://viblo.asia/logo_full.svg</webfeeds:logo>
        <image>
            <url>https://viblo.asia/logo_full.svg</url>
            <title>Spring-mvc Tag - Viblo</title>
            <link>https://viblo.asia/rss</link>
        </image>
                                <language>vi-vn</language>
        <lastBuildDate>2026-06-13T21:41:16+07:00</lastBuildDate>
                <item>
            <title><![CDATA[[JAVA] (Overview) Phần 1 - Spring vs. Spring Boot vs. Spring MVC]]></title>
                        <link>https://viblo.asia/p/java-overview-phan-1-spring-vs-spring-boot-vs-spring-mvc-3P0lPDpblox</link>
            <guid isPermaLink="true">https://viblo.asia/p/java-overview-phan-1-spring-vs-spring-boot-vs-spring-mvc-3P0lPDpblox</guid>
            <description><![CDATA[Tổng quan
Spring Framework từ lâu đã không còn xa lạ gì đối với lập trình viên Java nói chung và Java Web nói riêng, nó cung cấp rất nhiều tính năng g...]]></description>
                        <dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Lương Nguyễn</dc:creator>
            <pubDate>2020-10-25 22:16:36</pubDate>
                                                                                                        </item>
                <item>
            <title><![CDATA[[Spring Boot] Hướng dẫn tự tạo custom @Conditional]]></title>
                        <link>https://viblo.asia/p/spring-boot-huong-dan-tu-tao-custom-atconditional-jvElaGQ6Kkw</link>
            <guid isPermaLink="true">https://viblo.asia/p/spring-boot-huong-dan-tu-tao-custom-atconditional-jvElaGQ6Kkw</guid>
            <description><![CDATA[Nguồn: loda.me

Giới thiệu

Yêu cầu bạn phải đọc bài viết về @Conditional trước:

1. [Spring Boot] Hướng dẫn tạo Bean có điều kiện với @C...]]></description>
                        <dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Nguyen Hoang Nam</dc:creator>
            <pubDate>2019-06-04 11:18:35</pubDate>
                                                                                                        </item>
                <item>
            <title><![CDATA[[Spring Boot] Xử lý sự kiện với @EventListener + @Async]]></title>
                        <link>https://viblo.asia/p/spring-boot-xu-ly-su-kien-voi-ateventlistener-atasync-djeZ1bXglWz</link>
            <guid isPermaLink="true">https://viblo.asia/p/spring-boot-xu-ly-su-kien-voi-ateventlistener-atasync-djeZ1bXglWz</guid>
            <description><![CDATA[Nguồn: loda.me

Giới thiệu

Hẳn trong Java không ít thì nhiều các bạn đã từng sử dụng qua Listener Pattern rồi, nên tôi nghĩ sẽ không giới thiệu về nó...]]></description>
                        <dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Nguyen Hoang Nam</dc:creator>
            <pubDate>2019-06-04 11:13:57</pubDate>
                                                                                                        </item>
                <item>
            <title><![CDATA[Tại sao nên học Java và Spring?]]></title>
                        <link>https://viblo.asia/p/tai-sao-nen-hoc-java-va-spring-Eb85oyDmZ2G</link>
            <guid isPermaLink="true">https://viblo.asia/p/tai-sao-nen-hoc-java-va-spring-Eb85oyDmZ2G</guid>
            <description><![CDATA[Nguồn: loda.me

Vì sao bạn nên học Java?

Trước khi nói Spring Boot, chúng ta nói về nền tảng của nó, chính là Java.

Java ra đời năm 1991, tới nay th...]]></description>
                        <dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Nguyen Hoang Nam</dc:creator>
            <pubDate>2019-06-01 01:54:10</pubDate>
                                                                                                        </item>
                <item>
            <title><![CDATA[Bạn thực sự đã biết khi nào dùng Interface khi nào dùng Abstract?]]></title>
                        <link>https://viblo.asia/p/ban-thuc-su-da-biet-khi-nao-dung-interface-khi-nao-dung-abstract-LzD5dXG05jY</link>
            <guid isPermaLink="true">https://viblo.asia/p/ban-thuc-su-da-biet-khi-nao-dung-interface-khi-nao-dung-abstract-LzD5dXG05jY</guid>
            <description><![CDATA[Nguồn: loda.me

Tổng quan
Trong java, chúng ta có class abstract và một Interface, ai cũng biết một class có thể impements nhiều Interface và chỉ kế t...]]></description>
                        <dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Nguyen Hoang Nam</dc:creator>
            <pubDate>2019-06-01 01:51:52</pubDate>
                                                                                                        </item>
                <item>
            <title><![CDATA[Khái niệm tight-coupling (liên kết ràng buộc) và cách loosely coupled]]></title>
                        <link>https://viblo.asia/p/khai-niem-tight-coupling-lien-ket-rang-buoc-va-cach-loosely-coupled-63vKjVERK2R</link>
            <guid isPermaLink="true">https://viblo.asia/p/khai-niem-tight-coupling-lien-ket-rang-buoc-va-cach-loosely-coupled-63vKjVERK2R</guid>
            <description><![CDATA[Nguồn: loda.me

Giới thiệu

tight-coupling hay "liên kết ràng buộc" là một khái niệm trong Java ám chỉ việc mối quan hệ giữa các Class quá chặt chẽ. K...]]></description>
                        <dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Nguyen Hoang Nam</dc:creator>
            <pubDate>2019-06-01 01:50:23</pubDate>
                                                                                                        </item>
                <item>
            <title><![CDATA[Giới thiệu Reactor Core]]></title>
                        <link>https://viblo.asia/p/gioi-thieu-reactor-core-Qpmlegk9Krd</link>
            <guid isPermaLink="true">https://viblo.asia/p/gioi-thieu-reactor-core-Qpmlegk9Krd</guid>
            <description><![CDATA[Nguồn: loda.me

Tổng Quan
Reactor Core là một thự viện Java 8 implement mô hình Reactive Programming. Nó được xây dựng dựa trên Reactive Streams Speci...]]></description>
                        <dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Nguyen Hoang Nam</dc:creator>
            <pubDate>2019-06-01 01:49:01</pubDate>
                                                                                                        </item>
                <item>
            <title><![CDATA[Giới thiệu Reactive Programming với Reactor]]></title>
                        <link>https://viblo.asia/p/gioi-thieu-reactive-programming-voi-reactor-V3m5WGMy5O7</link>
            <guid isPermaLink="true">https://viblo.asia/p/gioi-thieu-reactive-programming-voi-reactor-V3m5WGMy5O7</guid>
            <description><![CDATA[Nguồn: loda.me

Giới thiệu
Các ứng dụng hiện nay yêu cầu một tốc độ phản hồi cao để nâng cao trải nghiệm người dùng, giúp hệ thống mượt mà, linh hoạt,...]]></description>
                        <dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Nguyen Hoang Nam</dc:creator>
            <pubDate>2019-06-01 01:46:43</pubDate>
                                                                                                        </item>
                <item>
            <title><![CDATA[ThreadPoolExecutor và nguyên tắc quản lý pool size]]></title>
                        <link>https://viblo.asia/p/threadpoolexecutor-va-nguyen-tac-quan-ly-pool-size-Do754qyWKM6</link>
            <guid isPermaLink="true">https://viblo.asia/p/threadpoolexecutor-va-nguyen-tac-quan-ly-pool-size-Do754qyWKM6</guid>
            <description><![CDATA[Nguồn: loda.me

ThreadPoolExecutor là một class nâng cao hơn của các ThreadPool cơ bản trong gói java concurrent. Cụ thể các thể loại ThreadPool khác ...]]></description>
                        <dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Nguyen Hoang Nam</dc:creator>
            <pubDate>2019-06-01 01:44:46</pubDate>
                                                                                                        </item>
                <item>
            <title><![CDATA[Khái niệm ThreadPool và Executor trong Java]]></title>
                        <link>https://viblo.asia/p/khai-niem-threadpool-va-executor-trong-java-gAm5yXNwldb</link>
            <guid isPermaLink="true">https://viblo.asia/p/khai-niem-threadpool-va-executor-trong-java-gAm5yXNwldb</guid>
            <description><![CDATA[Nguồn: loda.me

Thread Pool Là một trong những yếu tố chính tác động tới hiệu năng của các chương trình lớn, đòi hỏi xử lý đồng thời nhiều nhiệm vụ cù...]]></description>
                        <dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Nguyen Hoang Nam</dc:creator>
            <pubDate>2019-06-01 01:42:43</pubDate>
                                                                                                        </item>
                <item>
            <title><![CDATA[「Java」Hướng dẫn tự tạo một Annotations]]></title>
                        <link>https://viblo.asia/p/javahuong-dan-tu-tao-mot-annotations-jvElaGz6Kkw</link>
            <guid isPermaLink="true">https://viblo.asia/p/javahuong-dan-tu-tao-mot-annotations-jvElaGz6Kkw</guid>
            <description><![CDATA[Nguồn: loda.me

Annotation (Chú thích) được sử dụng để chú thích trên một class, một trường (field) hoặc một method để cung cấp hoặc bổ sung các thông...]]></description>
                        <dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Nguyen Hoang Nam</dc:creator>
            <pubDate>2019-06-01 01:40:51</pubDate>
                                                                                                        </item>
                <item>
            <title><![CDATA[「Java」Hướng dẫn Java Reflection]]></title>
                        <link>https://viblo.asia/p/javahuong-dan-java-reflection-djeZ1bMglWz</link>
            <guid isPermaLink="true">https://viblo.asia/p/javahuong-dan-java-reflection-djeZ1bMglWz</guid>
            <description><![CDATA[Nguồn: loda.me

Java Relection là một core package trong thư viện chuẩn của Java. Mục đích của nó là cho phép chúng ta truy cập vào gần như mọi thứ bê...]]></description>
                        <dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Nguyen Hoang Nam</dc:creator>
            <pubDate>2019-06-01 01:38:46</pubDate>
                                                                                                        </item>
                <item>
            <title><![CDATA[Hướng dẫn tạo Spring Boot với nhiều modules bằng Gradle]]></title>
                        <link>https://viblo.asia/p/huong-dan-tao-spring-boot-voi-nhieu-modules-bang-gradle-yMnKMY7EK7P</link>
            <guid isPermaLink="true">https://viblo.asia/p/huong-dan-tao-spring-boot-voi-nhieu-modules-bang-gradle-yMnKMY7EK7P</guid>
            <description><![CDATA[Nguồn: loda.me

Gradle là một open-source có nhiệm vụ tự động hóa quá trình đóng gói một dự án với ưu điểm chính khả năng tùy biến cao và cho hiệu năn...]]></description>
                        <dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Nguyen Hoang Nam</dc:creator>
            <pubDate>2019-06-01 01:36:29</pubDate>
                                                                                                        </item>
                <item>
            <title><![CDATA[「Java 8」Hướng dẫn Stream API]]></title>
                        <link>https://viblo.asia/p/java-8huong-dan-stream-api-gGJ59xd1lX2</link>
            <guid isPermaLink="true">https://viblo.asia/p/java-8huong-dan-stream-api-gGJ59xd1lX2</guid>
            <description><![CDATA[Nguồn: loda.me

Hướng dẫn và giải thích nguyên lý làm việc của Stream trong Java 8

Stream là một trong những concept được coi là đem sự thay đổi lớn ...]]></description>
                        <dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Nguyen Hoang Nam</dc:creator>
            <pubDate>2019-06-01 01:32:01</pubDate>
                                                                                                        </item>
                <item>
            <title><![CDATA[「Java 8」Functional Interfaces &amp; Lambda Expressions cực dễ hiểu]]></title>
                        <link>https://viblo.asia/p/java-8functional-interfaces-lambda-expressions-cuc-de-hieu-m68Z0L96ZkG</link>
            <guid isPermaLink="true">https://viblo.asia/p/java-8functional-interfaces-lambda-expressions-cuc-de-hieu-m68Z0L96ZkG</guid>
            <description><![CDATA[Nguồn: loda.me

Khái niệm Functional Interfaces được Java đưa ra cùng với phiên bản Java 8. về cơ bản, có thể hiểu:

Functional Interfaces là interfac...]]></description>
                        <dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Nguyen Hoang Nam</dc:creator>
            <pubDate>2019-06-01 01:30:26</pubDate>
                                                                                                        </item>
                <item>
            <title><![CDATA[「Java」Vì sao nên sử dụng StringBuffer]]></title>
                        <link>https://viblo.asia/p/javavi-sao-nen-su-dung-stringbuffer-ORNZqBvql0n</link>
            <guid isPermaLink="true">https://viblo.asia/p/javavi-sao-nen-su-dung-stringbuffer-ORNZqBvql0n</guid>
            <description><![CDATA[Nguồn: loda.me

hẳn những ai biết tới Java thì không còn xa lạ gì với việc ghép các String với nhau.

Đây là một kiến thức cực kì cực kì cơ bản. Tuy n...]]></description>
                        <dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Nguyen Hoang Nam</dc:creator>
            <pubDate>2019-06-01 01:28:28</pubDate>
                                                                                                        </item>
                <item>
            <title><![CDATA[「Java 8」Optional]]></title>
                        <link>https://viblo.asia/p/java-8optional-4dbZN4Pm5YM</link>
            <guid isPermaLink="true">https://viblo.asia/p/java-8optional-4dbZN4Pm5YM</guid>
            <description><![CDATA[Nguồn: loda.me

Trước khi đi vào bài hôm nay, chúng ta cùng nghe cha đẻ của Null phát biểu :)))

Tôi gọi nó "sai lầm tỉ đô"  hết

Đùa đấy, vẫn còn

nu...]]></description>
                        <dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Nguyen Hoang Nam</dc:creator>
            <pubDate>2019-06-01 01:27:17</pubDate>
                                                                                                        </item>
                <item>
            <title><![CDATA[[Spring Boot] Hướng dẫn tạo Bean có điều kiện với @Conditional]]></title>
                        <link>https://viblo.asia/p/spring-boot-huong-dan-tao-bean-co-dieu-kien-voi-atconditional-gDVK2270KLj</link>
            <guid isPermaLink="true">https://viblo.asia/p/spring-boot-huong-dan-tao-bean-co-dieu-kien-voi-atconditional-gDVK2270KLj</guid>
            <description><![CDATA[Nguồn: loda.me

Giới thiệu

Khi xây dựng một chương trình với Spring Boot đôi lúc chúng ta một Bean chỉ được load lên hoặc khởi tạo theo một điều kiện...]]></description>
                        <dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Nguyen Hoang Nam</dc:creator>
            <pubDate>2019-06-01 00:59:35</pubDate>
                                                                                                        </item>
                <item>
            <title><![CDATA[「Spring Boot #0」 Series làm chủ Spring Boot, từ Zero to Hero]]></title>
                        <link>https://viblo.asia/p/spring-boot-0-series-lam-chu-spring-boot-tu-zero-to-hero-Az45bG1wKxY</link>
            <guid isPermaLink="true">https://viblo.asia/p/spring-boot-0-series-lam-chu-spring-boot-tu-zero-to-hero-Az45bG1wKxY</guid>
            <description><![CDATA[Nguồn: loda.me

Vì sao bạn nên học Java?

Trước khi nói Spring Boot, chúng ta nói về nền tảng của nó, chính là Java.

Java ra đời năm 1991, tới nay th...]]></description>
                        <dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Nguyen Hoang Nam</dc:creator>
            <pubDate>2019-06-01 00:55:56</pubDate>
                                                                                                        </item>
                <item>
            <title><![CDATA[「Spring Boot #18」 Hướng dẫn chi tiết Test Spring Boot]]></title>
                        <link>https://viblo.asia/p/spring-boot-18-huong-dan-chi-tiet-test-spring-boot-RQqKLwr457z</link>
            <guid isPermaLink="true">https://viblo.asia/p/spring-boot-18-huong-dan-chi-tiet-test-spring-boot-RQqKLwr457z</guid>
            <description><![CDATA[Nguồn: loda.me

Giới thiệu

Viết Test là một phần quan trọng trong việc xây dựng tất cả ứng dụng chứ không riêng gì Spring Boot, nên tất nhiên chúng t...]]></description>
                        <dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Nguyen Hoang Nam</dc:creator>
            <pubDate>2019-06-01 00:53:17</pubDate>
                                                                                                        </item>
                <item>
            <title><![CDATA[「Spring Boot #17」 Chạy nhiều môi trường với Spring Profile]]></title>
                        <link>https://viblo.asia/p/spring-boot-17-chay-nhieu-moi-truong-voi-spring-profile-bJzKmypYK9N</link>
            <guid isPermaLink="true">https://viblo.asia/p/spring-boot-17-chay-nhieu-moi-truong-voi-spring-profile-bJzKmypYK9N</guid>
            <description><![CDATA[Nguồn: loda.me

Giới thiệu

Tiếp nối series Spring Boot:

1. 「Spring Boot #16」 Hướng dẫn sử dụng @ConfigurationProperties

Spring Profiles là ...]]></description>
                        <dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Nguyen Hoang Nam</dc:creator>
            <pubDate>2019-06-01 00:50:10</pubDate>
                                                                                                        </item>
                <item>
            <title><![CDATA[「Spring Boot #16」 Hướng dẫn sử dụng @ConfigurationProperties]]></title>
                        <link>https://viblo.asia/p/spring-boot-16-huong-dan-su-dung-atconfigurationproperties-3P0lP4Rolox</link>
            <guid isPermaLink="true">https://viblo.asia/p/spring-boot-16-huong-dan-su-dung-atconfigurationproperties-3P0lP4Rolox</guid>
            <description><![CDATA[Nguồn: loda.me

Giới thiệu

Tiếp nối Series, bắt đầu từ bài viết trước, bạn hoàn toàn đã có thể làm chủ Spring Boot cho nghiệp vụ của mình rồi. Trong ...]]></description>
                        <dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Nguyen Hoang Nam</dc:creator>
            <pubDate>2019-06-01 00:37:03</pubDate>
                                                                                                        </item>
                <item>
            <title><![CDATA[「Spring Boot #15」 Exception Handling @ExceptionHandler +  @RestControllerAdvice / @ControllerAdvice + @ResponseStatus]]></title>
                        <link>https://viblo.asia/p/spring-boot-15-exception-handling-atexceptionhandler-atrestcontrolleradvice-atcontrolleradvice-atresponsestatus-maGK7k2eKj2</link>
            <guid isPermaLink="true">https://viblo.asia/p/spring-boot-15-exception-handling-atexceptionhandler-atrestcontrolleradvice-atcontrolleradvice-atresponsestatus-maGK7k2eKj2</guid>
            <description><![CDATA[Nguồn: loda.me

Giới thiệu

Trong bài trước chúng ta đã biết cách làm một Rest Api Server với Spring Boot.

1. 「Spring Boot #14」 Restful API + @RestCo...]]></description>
                        <dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Nguyen Hoang Nam</dc:creator>
            <pubDate>2019-06-01 00:34:37</pubDate>
                                                                                                        </item>
                <item>
            <title><![CDATA[「Spring Boot #14」 Restful API + @RestController + @PathVariable + @RequestBody]]></title>
                        <link>https://viblo.asia/p/spring-boot-14-restful-api-atrestcontroller-atpathvariable-atrequestbody-924lJd66KPM</link>
            <guid isPermaLink="true">https://viblo.asia/p/spring-boot-14-restful-api-atrestcontroller-atpathvariable-atrequestbody-924lJd66KPM</guid>
            <description><![CDATA[Nguồn: loda.me

Giới thiệu

Trong bài trước, chúng ta đã tìm hiểu cách làm Web với Spring boot và Thymeleaf. Mặc dù rất tốt rồi, nhưng đó chưa hẳn là ...]]></description>
                        <dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Nguyen Hoang Nam</dc:creator>
            <pubDate>2019-06-01 00:28:44</pubDate>
                                                                                                        </item>
                <item>
            <title><![CDATA[「Spring Boot #13 Special」 Chi tiết Spring Boot + Thymeleaf + MySQL + i18n + Web Demo]]></title>
                        <link>https://viblo.asia/p/spring-boot-13-special-chi-tiet-spring-boot-thymeleaf-mysql-i18n-web-demo-1VgZvXnm5Aw</link>
            <guid isPermaLink="true">https://viblo.asia/p/spring-boot-13-special-chi-tiet-spring-boot-thymeleaf-mysql-i18n-web-demo-1VgZvXnm5Aw</guid>
            <description><![CDATA[Nguồn: loda.me

Giới thiệu

Trong loạt series về Spring Boot này, chúng ta đã đi qua hết tất cả các kiến thức căn bản và cần thiết.

1. 「Spring Boot #...]]></description>
                        <dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Nguyen Hoang Nam</dc:creator>
            <pubDate>2019-06-01 00:22:24</pubDate>
                                                                                                        </item>
                <item>
            <title><![CDATA[「Spring Boot #12」 Spring JPA Method + @Query]]></title>
                        <link>https://viblo.asia/p/spring-boot-12-spring-jpa-method-atquery-Qbq5Q4nGlD8</link>
            <guid isPermaLink="true">https://viblo.asia/p/spring-boot-12-spring-jpa-method-atquery-Qbq5Q4nGlD8</guid>
            <description><![CDATA[Nguồn: loda.me

Giới thiệu

Trong bài trước, mình đã giới thiệu với các bạn Spring JPA, với cách cài đặt và sử dụng hết sức dễ dàng.

1. 「Spring Boot ...]]></description>
                        <dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Nguyen Hoang Nam</dc:creator>
            <pubDate>2019-06-01 00:16:32</pubDate>
                                                                                                        </item>
                <item>
            <title><![CDATA[「Spring Boot #11」 Hướng dẫn Spring Boot JPA + MySQL]]></title>
                        <link>https://viblo.asia/p/spring-boot-11-huong-dan-spring-boot-jpa-mysql-GrLZD8dgZk0</link>
            <guid isPermaLink="true">https://viblo.asia/p/spring-boot-11-huong-dan-spring-boot-jpa-mysql-GrLZD8dgZk0</guid>
            <description><![CDATA[Nguồn: loda.me

Giới thiệu

Để đi tiếp trong series Spring Boot này, tôi không thể bỏ qua một phần quan trọng đó là giao tiếp với Database.

Nếu bạn c...]]></description>
                        <dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Nguyen Hoang Nam</dc:creator>
            <pubDate>2019-06-01 00:14:03</pubDate>
                                                                                                        </item>
                <item>
            <title><![CDATA[「Spring Boot #10」 @RequestMapping + @PostMapping + @ModelAttribute + @RequestParam + Web To-Do với Thymeleaf]]></title>
                        <link>https://viblo.asia/p/spring-boot-10-atrequestmapping-atpostmapping-atmodelattribute-atrequestparam-web-to-do-voi-thymeleaf-aWj53NPQl6m</link>
            <guid isPermaLink="true">https://viblo.asia/p/spring-boot-10-atrequestmapping-atpostmapping-atmodelattribute-atrequestparam-web-to-do-voi-thymeleaf-aWj53NPQl6m</guid>
            <description><![CDATA[Nguồn: loda.me

Giới thiệu

Trong bài hôm nay chúng ta sẽ tìm hiểu cách handle request POST của Spring Boot.

Trước đó, bạn nên biết

1. 「Spring Boot ...]]></description>
                        <dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Nguyen Hoang Nam</dc:creator>
            <pubDate>2019-06-01 00:09:49</pubDate>
                                                                                                        </item>
                <item>
            <title><![CDATA[「Spring Boot」 Annotation @Lazy trong Spring Boot]]></title>
                        <link>https://viblo.asia/p/spring-boot-annotation-atlazy-trong-spring-boot-bWrZn6GQZxw</link>
            <guid isPermaLink="true">https://viblo.asia/p/spring-boot-annotation-atlazy-trong-spring-boot-bWrZn6GQZxw</guid>
            <description><![CDATA[Nguồn: loda.me

Tổng quan
Như mặc định, Spring sẽ tạo tất cả các singleton Bean trong quá trình startup Application Context. Tuy nhiên, có những trườn...]]></description>
                        <dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Nguyen Hoang Nam</dc:creator>
            <pubDate>2019-06-01 00:04:59</pubDate>
                                                                                                        </item>
                <item>
            <title><![CDATA[「Spring Boot #9」 Giải thích cách Thymeleaf vận hành + Expression + Demo Full]]></title>
                        <link>https://viblo.asia/p/spring-boot-9-giai-thich-cach-thymeleaf-van-hanh-expression-demo-full-gDVK227rKLj</link>
            <guid isPermaLink="true">https://viblo.asia/p/spring-boot-9-giai-thich-cach-thymeleaf-van-hanh-expression-demo-full-gDVK227rKLj</guid>
            <description><![CDATA[Nguồn: loda.me

Giới thiệu

Trong bài trước, mình đã đề cập với các bạn kiến trúc web của Spring Boot và giới thiệu chức năng của @Controller.

1. 「Sp...]]></description>
                        <dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Nguyen Hoang Nam</dc:creator>
            <pubDate>2019-06-01 00:03:13</pubDate>
                                                                                                        </item>
                <item>
            <title><![CDATA[「Spring Boot #8」 Tạo Web Helloworld với @Controller + Thymeleaf]]></title>
                        <link>https://viblo.asia/p/spring-boot-8-tao-web-helloworld-voi-atcontroller-thymeleaf-Az45bG1qKxY</link>
            <guid isPermaLink="true">https://viblo.asia/p/spring-boot-8-tao-web-helloworld-voi-atcontroller-thymeleaf-Az45bG1qKxY</guid>
            <description><![CDATA[Nguồn: loda.me

Giới thiệu

Từ các qua trước tới giờ, tôi đã giới thiệu xong với bạn toàn bộ các khái niệm cơ bản về Spring Boot mà ai bắt đầu học đều...]]></description>
                        <dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Nguyen Hoang Nam</dc:creator>
            <pubDate>2019-05-31 23:58:59</pubDate>
                                                                                                        </item>
                <item>
            <title><![CDATA[「Spring Boot #7」 Spring Boot Application Config và @Value]]></title>
                        <link>https://viblo.asia/p/spring-boot-7-spring-boot-application-config-va-atvalue-RQqKLwr657z</link>
            <guid isPermaLink="true">https://viblo.asia/p/spring-boot-7-spring-boot-application-config-va-atvalue-RQqKLwr657z</guid>
            <description><![CDATA[Nguồn: loda.me

Giới thiệu

Trong thực tế không phải lúc nào chúng ta cũng nên để mọi thứ trong code của mình. Có những thông số tốt hơn hết nên được ...]]></description>
                        <dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Nguyen Hoang Nam</dc:creator>
            <pubDate>2019-05-31 23:53:00</pubDate>
                                                                                                        </item>
                <item>
            <title><![CDATA[「Spring Boot #6」 @Configuration và @Bean]]></title>
                        <link>https://viblo.asia/p/spring-boot-6-atconfiguration-va-atbean-bJzKmyprK9N</link>
            <guid isPermaLink="true">https://viblo.asia/p/spring-boot-6-atconfiguration-va-atbean-bJzKmyprK9N</guid>
            <description><![CDATA[Nguồn: loda.me

Giới thiệu

Vậy là chúng ta đã đi qua các khái niệm cơ bản của Spring Boot

1. 「Spring Boot #1」Hướng dẫn @Component và @Autowired
...]]></description>
                        <dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Nguyen Hoang Nam</dc:creator>
            <pubDate>2019-05-31 23:51:20</pubDate>
                                                                                                        </item>
                <item>
            <title><![CDATA[「Spring Boot #5」 Component Scan là gì?]]></title>
                        <link>https://viblo.asia/p/spring-boot-5-component-scan-la-gi-3P0lP4RGlox</link>
            <guid isPermaLink="true">https://viblo.asia/p/spring-boot-5-component-scan-la-gi-3P0lP4RGlox</guid>
            <description><![CDATA[Nguồn: loda.me

Giới thiệu

Trong bài trước tôi đã đề cập tới 2 trong số 3 Annotation cơ bản trong thiết kế Layer của Spring Boot.

1. 「Spring Boot #4...]]></description>
                        <dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Nguyen Hoang Nam</dc:creator>
            <pubDate>2019-05-31 23:49:28</pubDate>
                                                                                                        </item>
                <item>
            <title><![CDATA[「Spring Boot #4」 @Component vs @Service vs @Repository]]></title>
                        <link>https://viblo.asia/p/spring-boot-4-atcomponent-vs-atservice-vs-atrepository-maGK7k2AKj2</link>
            <guid isPermaLink="true">https://viblo.asia/p/spring-boot-4-atcomponent-vs-atservice-vs-atrepository-maGK7k2AKj2</guid>
            <description><![CDATA[Nguồn: loda.me

Giới thiệu

Trong bài trước chúng ta đã tìm hiểu các khái niệm căn bản và cần thiết trong Spring Boot.

1. 「Spring Boot #1」Hướng dẫ...]]></description>
                        <dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Nguyen Hoang Nam</dc:creator>
            <pubDate>2019-05-31 23:47:59</pubDate>
                                                                                                        </item>
                <item>
            <title><![CDATA[Spring Boot - Xây dựng ứng dụng Reactive với Spring 5 Webflux]]></title>
                        <link>https://viblo.asia/p/spring-boot-xay-dung-ung-dung-reactive-voi-spring-5-webflux-924lJd6mKPM</link>
            <guid isPermaLink="true">https://viblo.asia/p/spring-boot-xay-dung-ung-dung-reactive-voi-spring-5-webflux-924lJd6mKPM</guid>
            <description><![CDATA[Nguồn: loda.me

Tổng quan
Spring Webflux Framework là một phần của Spring 5 và cung cấp Reactive Programming nhằm hỗ trợ cho việc xây dựng ứng dụng we...]]></description>
                        <dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Nguyen Hoang Nam</dc:creator>
            <pubDate>2019-05-31 23:45:08</pubDate>
                                                                                                        </item>
                <item>
            <title><![CDATA[「Spring Boot #3」 Spring Bean Life Cycle + @PostConstruct và @PreDestroy]]></title>
                        <link>https://viblo.asia/p/spring-boot-3-spring-bean-life-cycle-atpostconstruct-va-atpredestroy-Qbq5Q4nmlD8</link>
            <guid isPermaLink="true">https://viblo.asia/p/spring-boot-3-spring-bean-life-cycle-atpostconstruct-va-atpredestroy-Qbq5Q4nmlD8</guid>
            <description><![CDATA[Nguồn: loda.me

Giới thiệu

Trong các bài trước, các bạn đã hiểu các khái niệm cơ bản về Bean và cách inject nó trong Spring Boot bằng @Component + @A...]]></description>
                        <dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Nguyen Hoang Nam</dc:creator>
            <pubDate>2019-05-31 23:43:41</pubDate>
                                                                                                        </item>
                <item>
            <title><![CDATA[「Spring Boot #2」 @Autowired - @Primary - @Qualifier]]></title>
                        <link>https://viblo.asia/p/spring-boot-2-atautowired-atprimary-atqualifier-GrLZD8d3Zk0</link>
            <guid isPermaLink="true">https://viblo.asia/p/spring-boot-2-atautowired-atprimary-atqualifier-GrLZD8d3Zk0</guid>
            <description><![CDATA[Nguồn: loda.me

Giới thiệu

Trước khi đi vào phần này, có lẽ bạn muốn tìm hiểu cách vận hành của @Autowired tại:

1. Hướng dẫn @Component và @Autowire...]]></description>
                        <dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Nguyen Hoang Nam</dc:creator>
            <pubDate>2019-05-31 23:40:54</pubDate>
                                                                                                        </item>
                <item>
            <title><![CDATA[Hướng dẫn Spring Boot + Redis]]></title>
                        <link>https://viblo.asia/p/huong-dan-spring-boot-redis-aWj53NPGl6m</link>
            <guid isPermaLink="true">https://viblo.asia/p/huong-dan-spring-boot-redis-aWj53NPGl6m</guid>
            <description><![CDATA[Nguồn: loda.me

Giới thiệu

Redis là 1 hệ thống lưu trữ key-value in-memory rất mạnh mẽ và phổ biến hiện nay.

Redis nổi bật bởi việc hỗ trợ nhiều cấu...]]></description>
                        <dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Nguyen Hoang Nam</dc:creator>
            <pubDate>2019-05-31 23:38:29</pubDate>
                                                                                                        </item>
                <item>
            <title><![CDATA[Hướng dẫn cấu hình nhiều tệp properties sử dụng Spring Cloud Config Server]]></title>
                        <link>https://viblo.asia/p/huong-dan-cau-hinh-nhieu-tep-properties-su-dung-spring-cloud-config-server-ByEZkyzx5Q0</link>
            <guid isPermaLink="true">https://viblo.asia/p/huong-dan-cau-hinh-nhieu-tep-properties-su-dung-spring-cloud-config-server-ByEZkyzx5Q0</guid>
            <description><![CDATA[Nguồn: loda.me

Giới thiệu
Spring Cloud Config là một mô-đun của Spring Cloud cung cấp việc lưu trữ và phục vụ các cấu hình phân tán trên nhiều ứng dụ...]]></description>
                        <dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Nguyen Hoang Nam</dc:creator>
            <pubDate>2019-05-31 23:35:38</pubDate>
                                                                                                        </item>
            </channel>
</rss>
