<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
  <url>
    <loc>https://www.besthub.dev/articles/enable-placeholder-expressions-in-custom-springboot-annotations-fd5df2f503b5</loc>
    <lastmod>2026-04-05T03:08:06Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/how-much-memory-does-a-java-object-really-use-a-jol-walkthrough-dc6096d9702b</loc>
    <lastmod>2026-04-05T03:08:03Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/how-to-dynamically-manage-sentinel-rules-with-file-based-datasource-in-spring-cloud-e21221ee876e</loc>
    <lastmod>2026-04-05T03:07:36Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/how-to-configure-alibaba-sentinel-dynamic-rules-with-nacos-in-spring-cloud-89dc150381a4</loc>
    <lastmod>2026-04-05T03:07:11Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/mastering-jwt-secure-api-authentication-with-spring-boot-f04ad50a9ea7</loc>
    <lastmod>2026-04-05T03:07:08Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/how-to-set-up-seata-distributed-transactions-with-spring-boot-nacos-and-mysql-6703042b93dc</loc>
    <lastmod>2026-04-05T03:07:06Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/mastering-seata-global-transactions-in-spring-boot-2-2-a-step-by-step-guide-41fdca84303c</loc>
    <lastmod>2026-04-05T03:06:24Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/spring-cloud-gateway-guide-discovery-hystrix-custom-filters-rate-limiting-bb968d90b6b8</loc>
    <lastmod>2026-04-05T03:05:58Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/master-spring-security-step-by-step-authentication-flow-in-spring-boot-7cced42cf0b1</loc>
    <lastmod>2026-04-05T03:05:55Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/how-to-implement-remember-me-and-prevent-duplicate-logins-in-spring-boot-security-88e5a4b43850</loc>
    <lastmod>2026-04-05T03:05:36Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/mastering-spring-cloud-gateway-filters-add-header-parameter-retry-and-more-10494f4885ed</loc>
    <lastmod>2026-04-05T03:05:29Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/master-kafka-streams-in-spring-boot-real-time-data-processing-with-code-samples-fb9881fdc12a</loc>
    <lastmod>2026-04-05T03:04:51Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/mastering-spring-aop-pointcuts-static-dynamic-and-custom-implementations-d5e0bbaa7816</loc>
    <lastmod>2026-04-05T03:04:06Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/how-to-dynamically-register-spring-mvc-handlers-in-spring-boot-2-2-4181d530d56e</loc>
    <lastmod>2026-04-05T03:03:31Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/how-spring-cloud-refreshscope-works-from-annotation-to-runtime-refresh-59c499997df2</loc>
    <lastmod>2026-04-05T03:03:27Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/how-hystrix-stops-service-avalanches-a-hands-on-guide-with-code-737f891992fb</loc>
    <lastmod>2026-04-05T03:03:23Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/how-to-build-an-oauth2-authorization-server-with-spring-boot-redis-and-custom-token-store-ed4ed8a2995a</loc>
    <lastmod>2026-04-05T03:02:54Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/master-spring-boot-mybatis-complete-setup-mapper-scanning-and-unit-testing-guide-ce831344738c</loc>
    <lastmod>2026-04-05T03:02:37Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/master-elasticsearch-index-document-operations-with-restful-apis-c49770abefdd</loc>
    <lastmod>2026-04-05T03:02:32Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/mastering-spring-autowired-9-powerful-injection-techniques-ab7717e19c32</loc>
    <lastmod>2026-04-05T03:02:29Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/fixing-spring-boot-oauth2-session-errors-a-complete-walkthrough-8ef886d9ca32</loc>
    <lastmod>2026-04-05T03:02:23Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/mastering-rocketmq-with-spring-boot-from-simple-to-transactional-messaging-815409acbb1c</loc>
    <lastmod>2026-04-05T03:01:55Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/master-rabbitmq-dead-letter-queues-when-and-how-messages-are-redirected-3e02a90d8470</loc>
    <lastmod>2026-04-05T03:01:53Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/boost-spring-boot-order-calls-sync-vs-async-with-threadpool-completablefuture-436295569d1c</loc>
    <lastmod>2026-04-05T03:01:50Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/mastering-java-concurrency-when-to-use-volatile-synchronized-and-lock-d28679fed986</loc>
    <lastmod>2026-04-05T03:01:41Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/how-to-build-custom-enable-annotations-in-spring-boot-ddc8fcd44059</loc>
    <lastmod>2026-04-05T03:01:29Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/master-kafka-topic-management-and-message-production-on-centos-645642427e8d</loc>
    <lastmod>2026-04-05T03:01:05Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/uncovering-how-springboot-injects-httpservletrequest-via-threadlocal-and-dynamic-proxies-f564ba9bcee0</loc>
    <lastmod>2026-04-05T03:01:03Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/how-does-spring-s-mergedbeandefinitionpostprocessor-work-a-deep-dive-7c9c20ac4d64</loc>
    <lastmod>2026-04-05T03:00:56Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/how-to-efficiently-batch-insert-data-with-spring-boot-and-elasticsearch-c2f3c5f3cbc9</loc>
    <lastmod>2026-04-05T03:00:42Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/master-spring-boot-scheduling-from-enablescheduling-to-quartz-integration-aa126cb25d63</loc>
    <lastmod>2026-04-05T03:00:40Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/ensuring-reliable-message-consistency-with-spring-boot-rocketmq-5f37fa7f2f4b</loc>
    <lastmod>2026-04-05T03:00:15Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/add-dao-capabilities-to-a-class-without-changing-business-code-using-spring-introductionadvisor-460ac4303ee1</loc>
    <lastmod>2026-04-05T03:00:09Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/how-to-bulk-insert-data-into-elasticsearch-with-spring-boot-and-index-templates-c138349959b6</loc>
    <lastmod>2026-04-05T03:00:03Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/how-to-filter-rocketmq-messages-with-tags-and-sql-expressions-in-spring-boot-5d08a1297c82</loc>
    <lastmod>2026-04-05T03:00:01Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/unlock-spring-s-aware-interfaces-access-applicationcontext-environment-and-beanfactory-b216f04d694c</loc>
    <lastmod>2026-04-05T02:59:52Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/how-spring-boot-registers-custom-error-pages-with-tomcat-d2d42bb0b2c8</loc>
    <lastmod>2026-04-05T02:59:33Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/master-spring-boot-config-customize-file-names-paths-and-optional-locations-37796ca452b2</loc>
    <lastmod>2026-04-05T02:59:19Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/how-to-install-docker-on-centos-and-deploy-a-spring-boot-application-96b7ff28f478</loc>
    <lastmod>2026-04-05T02:59:12Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/mastering-spring-boot-profile-conditional-bean-registration-guide-f89d6ebe4e15</loc>
    <lastmod>2026-04-05T02:59:09Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/how-to-decrypt-spring-boot-properties-with-a-custom-environmentpostprocessor-51076668357d</loc>
    <lastmod>2026-04-05T02:59:04Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/why-spring-webflux-a-deep-dive-into-reactive-non-blocking-backend-development-683fa413994a</loc>
    <lastmod>2026-04-05T02:58:39Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/mastering-spring-boot-request-mapping-content-types-params-headers-and-dynamic-registration-ed140cf0a049</loc>
    <lastmod>2026-04-05T02:58:37Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/how-to-generate-pdfs-with-itext-in-spring-boot-a-step-by-step-guide-230a01bf275f</loc>
    <lastmod>2026-04-05T02:58:35Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/how-spring-boot-handles-errors-from-error-to-custom-responses-2b0559ba10a4</loc>
    <lastmod>2026-04-05T02:58:29Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/when-to-choose-beanfactory-vs-applicationcontext-in-spring-5-e6fbbf9a6b27</loc>
    <lastmod>2026-04-05T02:58:29Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/how-spring-mvc-processes-a-request-from-dispatcherservlet-to-viewresolver-9f83bc665605</loc>
    <lastmod>2026-04-05T02:58:02Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/master-spring-bean-validation-from-basics-to-custom-annotations-3407232d76c3</loc>
    <lastmod>2026-04-05T02:57:36Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/unlock-spring-beanpostprocessor-beanfactorypostprocessor-for-backend-customization-4295eea17056</loc>
    <lastmod>2026-04-05T02:57:34Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/understanding-spring-mvc-request-flow-controllers-handlers-and-adapters-153e6e2b32af</loc>
    <lastmod>2026-04-05T02:57:34Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/how-spring-mvc-resolves-controller-parameters-and-builds-custom-argument-resolvers-b827c023ab40</loc>
    <lastmod>2026-04-05T02:57:32Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/understanding-spring-boot-application-events-a-complete-lifecycle-guide-53f502288e67</loc>
    <lastmod>2026-04-05T02:56:53Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/master-mybatis-logging-configure-slf4j-log4j-and-custom-loggers-b563654ac62b</loc>
    <lastmod>2026-04-05T02:56:48Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/how-to-build-custom-mybatis-plugins-a-step-by-step-guide-2576652af5e5</loc>
    <lastmod>2026-04-05T02:56:48Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/integrating-spring-boot-with-activiti-common-operations-and-rest-apis-9f5459fd1500</loc>
    <lastmod>2026-04-05T02:56:46Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/mastering-spring-web-mvc-functional-routing-with-webmvc-fn-in-spring-boot-7bc32885ef10</loc>
    <lastmod>2026-04-05T02:56:43Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/master-programmatic-transactions-in-spring-boot-2-3-9-with-templates-managers-2e7f0965ef34</loc>
    <lastmod>2026-04-05T02:55:07Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/master-high-performance-java-expression-evaluation-with-aviator-37826b891e4e</loc>
    <lastmod>2026-04-05T02:55:02Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/master-spring-s-objectfactory-factorybean-real-world-usage-22468682e4c5</loc>
    <lastmod>2026-04-05T02:54:58Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/how-spring-cloud-feign-works-enabling-bean-registration-and-proxy-injection-47a5a2ad1a50</loc>
    <lastmod>2026-04-05T02:54:55Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/build-a-complex-approval-workflow-with-spring-boot-activiti-using-exclusive-gateway-120824ab728c</loc>
    <lastmod>2026-04-05T02:54:03Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/dynamic-multi-approver-assignment-in-activiti-using-candidate-users-with-spring-boot-66ea6e21ad87</loc>
    <lastmod>2026-04-05T02:54:03Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/mastering-parallel-gateways-in-activiti-7-with-spring-boot-a-step-by-step-guide-d5b31b8047d3</loc>
    <lastmod>2026-04-05T02:53:50Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/why-mybatis-sqlsession-fails-with-multiple-threads-and-how-spring-guarantees-thread-safety-efffe1834705</loc>
    <lastmod>2026-04-05T02:53:16Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/how-to-implement-service-tasks-in-activiti-7-with-spring-boot-51d704985420</loc>
    <lastmod>2026-04-05T02:53:05Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/master-custom-data-sources-and-jpa-configuration-in-spring-boot-78c2952c4a9c</loc>
    <lastmod>2026-04-05T02:52:54Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/how-to-secure-spring-webflux-applications-with-reactive-security-configurations-c96a8eac0d18</loc>
    <lastmod>2026-04-05T02:52:46Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/building-reactive-crud-apis-with-spring-webflux-and-mongodb-c6ad2211eb7a</loc>
    <lastmod>2026-04-05T02:52:39Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/how-mybatis-parses-and-applies-transaction-managers-a-deep-dive-391ebca1abf5</loc>
    <lastmod>2026-04-05T02:52:14Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/how-spring-boot-auto-configures-rabbitmq-listeners-a-deep-dive-1423e05feca5</loc>
    <lastmod>2026-04-05T02:52:05Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/how-spring-resolves-bean-dependencies-types-collections-and-providers-0d073dc86775</loc>
    <lastmod>2026-04-05T02:51:49Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/latest-java-framework-releases-jdk-18-19-spring-quarkus-micronaut-a26235adf5f7</loc>
    <lastmod>2026-04-05T02:51:46Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/why-volatile-isn-t-enough-mastering-atomicity-and-the-java-memory-model-2a8a966b94eb</loc>
    <lastmod>2026-04-05T02:51:44Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/why-java-failed-as-a-desktop-development-platform-a-personal-history-4a960d6be572</loc>
    <lastmod>2026-04-05T02:51:11Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/how-spring-solves-circular-dependencies-with-a-three-level-cache-b3bb868a99d9</loc>
    <lastmod>2026-04-05T02:51:05Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/master-spring-cloud-stream-with-rabbitmq-from-basics-to-advanced-partitioning-0af431eefacc</loc>
    <lastmod>2026-04-05T02:51:05Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/unlock-serverless-power-with-spring-cloud-function-a-hands-on-guide-ced494939331</loc>
    <lastmod>2026-04-05T02:50:52Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/java-news-jdk-18-19-updates-spring-framework-releases-new-value-objects-jep-c45bf33f7cec</loc>
    <lastmod>2026-04-05T02:50:29Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/building-a-real-time-chat-with-spring-boot-websocket-and-java-79a1853f6332</loc>
    <lastmod>2026-04-05T02:49:43Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/how-spring-webflux-handles-http-requests-from-httphandler-to-dispatcherhandler-742c4ba56d77</loc>
    <lastmod>2026-04-05T02:49:31Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/master-spring-boot-functional-routing-with-webmvc-fn-a-complete-guide-76a8c6952787</loc>
    <lastmod>2026-04-05T02:49:14Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/what-makes-a-great-software-architect-insights-from-meituan-s-logistics-lead-6c28ef2c5f17</loc>
    <lastmod>2026-04-05T02:49:11Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/why-is-redis-so-fast-inside-its-data-structures-and-single-threaded-design-1e4407640d23</loc>
    <lastmod>2026-04-05T02:49:09Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/filtering-rocketmq-messages-in-spring-boot-tag-vs-sql-92-techniques-34eaa7eecdb2</loc>
    <lastmod>2026-04-05T02:48:44Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/mastering-spring-s-formatter-spi-custom-type-conversion-made-easy-2c11bac02a6c</loc>
    <lastmod>2026-04-05T02:48:44Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/build-custom-spring-boot-actuator-endpoints-with-endpoint-servletendpoint-and-restcontrollerendpoint-ab047627170d</loc>
    <lastmod>2026-04-05T02:48:41Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/custom-nacos-propertysourcelocator-in-spring-cloud-alibaba-for-dynamic-config-d90f1f91e2be</loc>
    <lastmod>2026-04-05T02:48:39Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/mastering-spring-initbinder-custom-data-binding-in-spring-boot-2-4-8c8a58fa32f6</loc>
    <lastmod>2026-04-05T02:48:33Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/mastering-spring-boot-static-resources-and-content-negotiation-5adf37216ce3</loc>
    <lastmod>2026-04-05T02:48:18Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/mastering-spring-mvc-auto-configuration-in-spring-boot-2-4-12-b19a463e2663</loc>
    <lastmod>2026-04-05T02:48:15Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/how-to-integrate-jax-rs-jersey-into-spring-boot-2-4-full-configuration-guide-af5f93c72246</loc>
    <lastmod>2026-04-05T02:48:15Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/mastering-spring-boot-error-handling-and-custom-error-pages-12324b3c43ef</loc>
    <lastmod>2026-04-05T02:48:13Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/understanding-spring-webflux-request-flow-from-httphandler-to-dispatcherhandler-9e307693bda0</loc>
    <lastmod>2026-04-05T02:48:11Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/master-spring-security-custom-request-interception-login-page-79b94e477897</loc>
    <lastmod>2026-04-05T02:47:50Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/how-to-implement-database-backed-authentication-in-spring-security-ae91daf00d4b</loc>
    <lastmod>2026-04-05T02:47:45Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/understanding-spring-security-s-core-filterchainproxy-and-adding-custom-filters-07dc46c53857</loc>
    <lastmod>2026-04-05T02:47:45Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/mastering-csrf-protection-in-spring-security-with-in-memory-users-51713a788a92</loc>
    <lastmod>2026-04-05T02:47:43Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/mastering-custom-exception-handling-in-spring-security-spring-boot-2-4-5baae06634f6</loc>
    <lastmod>2026-04-05T02:47:41Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/master-spring-security-web-expression-auth-advanced-preauthorize-techniques-52338a7c8f46</loc>
    <lastmod>2026-04-05T02:47:25Z</lastmod>
  </url>
  <url>
    <loc>https://www.besthub.dev/articles/spring-boot-session-auto-configuration-how-filters-and-repositories-work-40d86a4234f1</loc>
    <lastmod>2026-04-05T02:47:23Z</lastmod>
  </url>
</urlset>