<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" >
  <url>
    <loc>https://www.quanxiaoha.com/java-interview</loc>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/agent-architecture-core-components</loc>
    <lastmod>2026-06-29T12:00:15+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/ai-agent-reflection-mechanism-implementation</loc>
    <lastmod>2026-06-29T12:00:15+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/multi-agent-vs-single-agent-design</loc>
    <lastmod>2026-06-29T12:00:15+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/agent-memory-compression-methods</loc>
    <lastmod>2026-06-29T12:00:15+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/agent-reasoning-patterns</loc>
    <lastmod>2026-06-29T12:00:15+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/agent-long-short-term-memory</loc>
    <lastmod>2026-06-29T12:00:15+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/ai-agent-memory-mechanism-design</loc>
    <lastmod>2026-06-29T12:00:15+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/react-plan-execute-reflection-difference</loc>
    <lastmod>2026-06-29T12:00:15+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/agent-vs-llm-difference</loc>
    <lastmod>2026-06-29T12:00:15+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/self-rag-reflection-tokens</loc>
    <lastmod>2026-06-29T12:00:15+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/how-to-evaluate-rag-system</loc>
    <lastmod>2026-06-29T12:00:15+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/rag-hyde-query-rewriting</loc>
    <lastmod>2026-06-29T12:00:15+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/vector-database-selection-guide</loc>
    <lastmod>2026-06-29T12:00:15+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/rag-hallucination-solutions</loc>
    <lastmod>2026-06-29T12:00:15+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/rag-query-rewriting-guide</loc>
    <lastmod>2026-06-29T12:00:15+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/rag-failure-modes-optimization</loc>
    <lastmod>2026-06-29T12:00:15+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/recursive-vs-semantic-chunking</loc>
    <lastmod>2026-06-29T12:00:15+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/rag-rerank-guide</loc>
    <lastmod>2026-06-29T12:00:15+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/hybrid-search-rag</loc>
    <lastmod>2026-06-29T12:00:15+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/dubbo-cache-mechanism</loc>
    <lastmod>2026-06-29T12:00:15+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/dubbo-protocols-comparison</loc>
    <lastmod>2026-06-29T12:00:15+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/rag-vs-finetuning-vs-prompt-engineering</loc>
    <lastmod>2026-06-29T12:00:15+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/dubbo-loadbalance-strategies</loc>
    <lastmod>2026-06-29T12:00:15+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/dubbo-serialization-types</loc>
    <lastmod>2026-06-29T12:00:15+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/fixed-size-chunking-problems-rag</loc>
    <lastmod>2026-06-29T12:00:15+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/rag-chunking-strategies</loc>
    <lastmod>2026-06-29T12:00:15+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/what-is-embedding-1536-dimensions</loc>
    <lastmod>2026-06-29T12:00:15+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/why-rag-uses-vector-database</loc>
    <lastmod>2026-06-29T12:00:15+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/rag-full-process-guide</loc>
    <lastmod>2026-06-29T12:00:15+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/what-is-rag-and-why-need-it</loc>
    <lastmod>2026-06-29T12:00:15+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/dubbo-graceful-shutdown-how-it-works</loc>
    <lastmod>2026-06-29T12:00:14+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/dubbo-service-invocation-process</loc>
    <lastmod>2026-06-29T12:00:14+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/why-rpc-faster-than-http</loc>
    <lastmod>2026-06-29T12:00:14+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/dubbo-spi-vs-jdk-spi-difference</loc>
    <lastmod>2026-06-29T12:00:14+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/dubbo-architecture-overview</loc>
    <lastmod>2026-06-29T12:00:14+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/what-happens-when-you-type-url-in-browser</loc>
    <lastmod>2026-06-29T12:00:14+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/difference-between-router-and-switch</loc>
    <lastmod>2026-06-29T12:00:14+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/what-is-cdn-cache-mechanism</loc>
    <lastmod>2026-06-29T12:00:14+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/ipv6-vs-ipv4-difference</loc>
    <lastmod>2026-06-29T12:00:14+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/forward-proxy-vs-reverse-proxy</loc>
    <lastmod>2026-06-29T12:00:14+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/what-is-network-partition</loc>
    <lastmod>2026-06-29T12:00:14+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/tcp-sticky-packet-split-packet-problem</loc>
    <lastmod>2026-06-29T12:00:14+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/redis-cache-database-consistency-solutions</loc>
    <lastmod>2026-06-29T12:00:08+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/mysql-binlog-redo-undo-difference</loc>
    <lastmod>2026-06-29T12:00:08+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/cross-origin-problem-solutions</loc>
    <lastmod>2026-06-29T12:00:14+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/tcp-udp-difference</loc>
    <lastmod>2026-06-29T12:00:14+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/symmetric-asymmetric-encryption-difference</loc>
    <lastmod>2026-06-29T12:00:14+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/https-http-difference</loc>
    <lastmod>2026-06-29T12:00:14+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/tcp-reliable-transmission</loc>
    <lastmod>2026-06-29T12:00:14+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/cookie-session-token-difference</loc>
    <lastmod>2026-06-29T12:00:14+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/tcp-three-way-handshake-four-way-wave</loc>
    <lastmod>2026-06-29T12:00:14+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/redis-vs-caffeine-differences</loc>
    <lastmod>2026-06-29T12:00:08+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/thread-pool-queue-full-solutions</loc>
    <lastmod>2026-06-29T12:00:10+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/dynamic-thread-pool-implementation-principle</loc>
    <lastmod>2026-06-29T12:00:10+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/java-thread-pool-creation</loc>
    <lastmod>2026-06-29T12:00:10+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/threadlocalmap-vs-hashmap-differences</loc>
    <lastmod>2026-06-29T12:00:11+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/java-common-locks</loc>
    <lastmod>2026-06-29T12:00:11+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/redis-distributed-lock-safety-mechanism</loc>
    <lastmod>2026-06-29T12:00:08+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/spring-boot-controller-thread-safety</loc>
    <lastmod>2026-06-29T12:00:12+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/runtime-constant-pool-vs-string-constant-pool</loc>
    <lastmod>2026-06-29T12:00:14+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/jvm-classloader-parent-delegation-core-library-protection</loc>
    <lastmod>2026-06-29T12:00:14+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/full-gc-troubleshooting-guide</loc>
    <lastmod>2026-06-29T12:00:14+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/spring-startup-slow-jvm-analysis</loc>
    <lastmod>2026-06-29T12:00:14+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/jvm-synchronized-implementation</loc>
    <lastmod>2026-06-29T12:00:14+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/java-class-unloading-conditions</loc>
    <lastmod>2026-06-29T12:00:14+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/cms-garbage-collector-mechanism-advantages</loc>
    <lastmod>2026-06-29T12:00:14+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/cms-vs-g1-garbage-collector-differences</loc>
    <lastmod>2026-06-29T12:00:14+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/oom-causes-troubleshooting-guide</loc>
    <lastmod>2026-06-29T12:00:14+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/jvm-runtime-memory-areas</loc>
    <lastmod>2026-06-29T12:00:14+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/aot-vs-jit-comparison</loc>
    <lastmod>2026-06-29T12:00:14+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/class-constant-pool-vs-runtime-constant-pool</loc>
    <lastmod>2026-06-29T12:00:13+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/jvm-exit-causes</loc>
    <lastmod>2026-06-29T12:00:13+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/young-gc-full-gc-trigger-conditions</loc>
    <lastmod>2026-06-29T12:00:13+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/jvm-garbage-collection-process</loc>
    <lastmod>2026-06-29T12:00:13+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/full-gc-frequency-guideline</loc>
    <lastmod>2026-06-29T12:00:13+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/jvm-garbage-collector-selection-guide</loc>
    <lastmod>2026-06-29T12:00:13+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/parent-delegation-model-break</loc>
    <lastmod>2026-06-29T12:00:13+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/java-strong-soft-weak-phantom-references</loc>
    <lastmod>2026-06-29T12:00:13+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/young-vs-old-generation-gc-algorithms</loc>
    <lastmod>2026-06-29T12:00:13+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/memory-leak-vs-oom</loc>
    <lastmod>2026-06-29T12:00:13+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/jvm-garbage-collection-algorithms</loc>
    <lastmod>2026-06-29T12:00:13+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/jvm-object-reachability-analysis</loc>
    <lastmod>2026-06-29T12:00:13+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/java-class-loading-process</loc>
    <lastmod>2026-06-29T12:00:13+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/java-compiled-vs-interpreted</loc>
    <lastmod>2026-06-29T12:00:13+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/jvm-startup-parameters-guide</loc>
    <lastmod>2026-06-29T12:00:13+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/rabbitmq-guarantee-message-delivery</loc>
    <lastmod>2026-06-29T12:00:13+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/rabbitmq-consumer-prefetch-limit</loc>
    <lastmod>2026-06-29T12:00:13+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/rabbitmq-transaction-mechanism</loc>
    <lastmod>2026-06-29T12:00:13+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/rabbitmq-dead-letter-queue</loc>
    <lastmod>2026-06-29T12:00:13+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/rabbitmq-delayed-message-implementation</loc>
    <lastmod>2026-06-29T12:00:13+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/rabbitmq-prevent-message-loss</loc>
    <lastmod>2026-06-29T12:00:13+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/rabbitmq-prevent-duplicate-consumption</loc>
    <lastmod>2026-06-29T12:00:13+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/rabbitmq-high-availability</loc>
    <lastmod>2026-06-29T12:00:13+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/rabbitmq-architecture-overview</loc>
    <lastmod>2026-06-29T12:00:13+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/zookeeper-unique-node-creation</loc>
    <lastmod>2026-06-29T12:00:13+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/zookeeper-split-brain-solution</loc>
    <lastmod>2026-06-29T12:00:13+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/implement-distributed-lock-zookeeper</loc>
    <lastmod>2026-06-29T12:00:13+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/zookeeper-service-registry-discovery</loc>
    <lastmod>2026-06-29T12:00:13+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/zookeeper-watch-mechanism</loc>
    <lastmod>2026-06-29T12:00:13+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/zookeeper-data-structure</loc>
    <lastmod>2026-06-29T12:00:13+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/zookeeper-use-cases</loc>
    <lastmod>2026-06-29T12:00:13+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/zookeeper-cp-ap-cap-theory</loc>
    <lastmod>2026-06-29T12:00:12+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/what-is-zookeeper</loc>
    <lastmod>2026-06-29T12:00:12+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/tomcat-max-threads-200</loc>
    <lastmod>2026-06-29T12:00:12+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/tomcat-classloaders</loc>
    <lastmod>2026-06-29T12:00:12+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/tomcat-classloader-mechanism</loc>
    <lastmod>2026-06-29T12:00:12+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/tomcat-io-models</loc>
    <lastmod>2026-06-29T12:00:12+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/springmvc-request-process-flow</loc>
    <lastmod>2026-06-29T12:00:12+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/filter-interceptor-difference</loc>
    <lastmod>2026-06-29T12:00:12+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/how-springboot-auto-configuration-works</loc>
    <lastmod>2026-06-29T12:00:12+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/how-springboot-main-starts-web-container</loc>
    <lastmod>2026-06-29T12:00:12+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/spring-boot-startup-process</loc>
    <lastmod>2026-06-29T12:00:12+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/spring-mvc-three-layer-architecture</loc>
    <lastmod>2026-06-29T12:00:12+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/how-to-warm-up-cache-in-spring-boot</loc>
    <lastmod>2026-06-29T12:00:12+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/why-spring-transaction-not-working</loc>
    <lastmod>2026-06-29T12:00:12+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/spring-transaction-propagation-behaviors</loc>
    <lastmod>2026-06-29T12:00:12+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/what-is-spring-circular-dependency</loc>
    <lastmod>2026-06-29T12:00:12+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/what-is-spring-three-level-cache</loc>
    <lastmod>2026-06-29T12:00:12+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/beanfactory-vs-factorybean-difference</loc>
    <lastmod>2026-06-29T12:00:12+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/design-patterns-in-spring-framework</loc>
    <lastmod>2026-06-29T12:00:12+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/when-spring-aop-not-working</loc>
    <lastmod>2026-06-29T12:00:12+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/what-is-spring-ioc-explained</loc>
    <lastmod>2026-06-29T12:00:12+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/what-is-spring-aop-explained</loc>
    <lastmod>2026-06-29T12:00:12+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/spring-bean-lifecycle-detailed</loc>
    <lastmod>2026-06-29T12:00:12+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/autowired-vs-resource-difference</loc>
    <lastmod>2026-06-29T12:00:12+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/spring-bean-scopes-explained</loc>
    <lastmod>2026-06-29T12:00:12+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/is-spring-bean-thread-safe</loc>
    <lastmod>2026-06-29T12:00:12+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/spring-bean-creation-ways</loc>
    <lastmod>2026-06-29T12:00:12+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/difference-between-springboot-and-spring</loc>
    <lastmod>2026-06-29T12:00:12+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/strategy-pattern-vs-if-else-benefits</loc>
    <lastmod>2026-06-29T12:00:12+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/strategy-vs-factory-pattern-difference</loc>
    <lastmod>2026-06-29T12:00:11+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/what-is-flyweight-pattern</loc>
    <lastmod>2026-06-29T12:00:11+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/factory-pattern-three-types-differences</loc>
    <lastmod>2026-06-29T12:00:11+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/what-is-template-method-pattern</loc>
    <lastmod>2026-06-29T12:00:11+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/what-is-state-pattern</loc>
    <lastmod>2026-06-29T12:00:11+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/what-is-observer-pattern</loc>
    <lastmod>2026-06-29T12:00:11+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/chain-of-responsibility-pattern-explained</loc>
    <lastmod>2026-06-29T12:00:11+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/what-is-proxy-pattern-applications</loc>
    <lastmod>2026-06-29T12:00:11+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/what-is-design-pattern-benefits</loc>
    <lastmod>2026-06-29T12:00:11+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/singleton-pattern-implementations</loc>
    <lastmod>2026-06-29T12:00:11+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/design-patterns-7-basic-principles</loc>
    <lastmod>2026-06-29T12:00:11+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/why-concurrenthashmap-removed-segment-lock-jdk8</loc>
    <lastmod>2026-06-29T12:00:07+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/how-concurrenthashmap-thread-safe</loc>
    <lastmod>2026-06-29T12:00:07+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/fail-fast-vs-fail-safe-java</loc>
    <lastmod>2026-06-29T12:00:07+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/how-set-ensures-unique-elements</loc>
    <lastmod>2026-06-29T12:00:07+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/how-hashmap-hash-method-works</loc>
    <lastmod>2026-06-29T12:00:07+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/hashmap-get-put-workflow-implementation</loc>
    <lastmod>2026-06-29T12:00:07+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/how-hashmap-remove-method-works</loc>
    <lastmod>2026-06-29T12:00:07+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/hashmap-concurrency-issues-problems</loc>
    <lastmod>2026-06-29T12:00:07+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/why-hashmap-treeify-red-black-tree-jdk8</loc>
    <lastmod>2026-06-29T12:00:07+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/why-hashmap-default-load-factor-075</loc>
    <lastmod>2026-06-29T12:00:07+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/how-hashmap-resize-works</loc>
    <lastmod>2026-06-29T12:00:07+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/java-collection-framework-overview</loc>
    <lastmod>2026-06-29T12:00:07+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/hashmap-vs-hashtable-vs-concurrenthashmap</loc>
    <lastmod>2026-06-29T12:00:07+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/arraylist-vs-linkedlist-vs-vector-difference</loc>
    <lastmod>2026-06-29T12:00:07+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/why-bigdecimal-equals-not-for-comparison</loc>
    <lastmod>2026-06-29T12:00:07+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/java-checked-unchecked-exception-difference</loc>
    <lastmod>2026-06-29T12:00:07+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/what-is-uuid-unique-guaranteed</loc>
    <lastmod>2026-06-29T12:00:07+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/java-equals-hashcode-zhongxie-why</loc>
    <lastmod>2026-06-29T12:00:07+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/what-is-java-serialization-deserialization</loc>
    <lastmod>2026-06-29T12:00:06+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/java-deep-vs-shallow-copy</loc>
    <lastmod>2026-06-29T12:00:06+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/why-float-cannot-represent-money</loc>
    <lastmod>2026-06-29T12:00:06+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/spi-vs-api-difference</loc>
    <lastmod>2026-06-29T12:00:06+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/aio-bio-nio-difference</loc>
    <lastmod>2026-06-29T12:00:06+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/bigdecimal-vs-long-amount-representation</loc>
    <lastmod>2026-06-29T12:00:06+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/does-finally-always-execute</loc>
    <lastmod>2026-06-29T12:00:06+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/final-finally-finalize-difference</loc>
    <lastmod>2026-06-29T12:00:06+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/why-java-no-multiple-inheritance</loc>
    <lastmod>2026-06-29T12:00:06+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/understand-java-polymorphism</loc>
    <lastmod>2026-06-29T12:00:06+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/what-is-java-generics</loc>
    <lastmod>2026-06-29T12:00:06+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/what-is-java-reflection-why-slow</loc>
    <lastmod>2026-06-29T12:00:06+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/while-true-vs-for-loop-performance</loc>
    <lastmod>2026-06-29T12:00:06+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/java-interface-vs-abstract-class</loc>
    <lastmod>2026-06-29T12:00:06+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/string-new-abc-create-objects</loc>
    <lastmod>2026-06-29T12:00:06+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/string-stringbuilder-stringbuffer-difference</loc>
    <lastmod>2026-06-29T12:00:06+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/why-string-final-immutable</loc>
    <lastmod>2026-06-29T12:00:06+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/what-is-reentrant-lock</loc>
    <lastmod>2026-06-29T12:00:11+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/what-is-java-memory-model-jmm</loc>
    <lastmod>2026-06-29T12:00:11+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/what-is-happens-before-principle</loc>
    <lastmod>2026-06-29T12:00:11+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/countdownlatch-cyclicbarrier-semaphore-difference</loc>
    <lastmod>2026-06-29T12:00:11+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/what-is-aqs</loc>
    <lastmod>2026-06-29T12:00:11+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/what-is-cas</loc>
    <lastmod>2026-06-29T12:00:11+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/parent-child-thread-data-sharing</loc>
    <lastmod>2026-06-29T12:00:11+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/fair-lock-vs-unfair-lock-difference</loc>
    <lastmod>2026-06-29T12:00:11+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/longadder-vs-atomiclong-difference</loc>
    <lastmod>2026-06-29T12:00:11+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/synchronized-vs-reentrantlock-difference</loc>
    <lastmod>2026-06-29T12:00:11+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/synchronized-lock-upgrade-process</loc>
    <lastmod>2026-06-29T12:00:11+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/synchronized-implementation-lock-upgrade</loc>
    <lastmod>2026-06-29T12:00:11+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/volatile-visible-ordering-memory-barrier</loc>
    <lastmod>2026-06-29T12:00:11+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/volatile-atomicity-false</loc>
    <lastmod>2026-06-29T12:00:11+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/threadlocal-usage-scenarios-context</loc>
    <lastmod>2026-06-29T12:00:11+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/threadlocal-memory-leak-cause-solution</loc>
    <lastmod>2026-06-29T12:00:11+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/java-threadlocal-implementation-memory-leak</loc>
    <lastmod>2026-06-29T12:00:11+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/thread-vs-process-vs-coroutine-difference</loc>
    <lastmod>2026-06-29T12:00:11+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/thread-deadlock-troubleshooting-resolution</loc>
    <lastmod>2026-06-29T12:00:11+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/concurrency-vs-parallelism-difference</loc>
    <lastmod>2026-06-29T12:00:10+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/java-create-thread-methods-runnable-callable</loc>
    <lastmod>2026-06-29T12:00:10+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/java-thread-states-transition-flow</loc>
    <lastmod>2026-06-29T12:00:10+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/daemon-thread-vs-user-thread-difference</loc>
    <lastmod>2026-06-29T12:00:10+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/multithreading-context-switching-performance</loc>
    <lastmod>2026-06-29T12:00:10+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/thread-count-optimization-cpu-io-intensive</loc>
    <lastmod>2026-06-29T12:00:10+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/thread-pool-rejection-policies-abort-caller-runs</loc>
    <lastmod>2026-06-29T12:00:10+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/microservices-definition-challenges</loc>
    <lastmod>2026-06-29T12:00:10+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/hystrix-vs-sentinel-difference-comparison</loc>
    <lastmod>2026-06-29T12:00:10+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/nacos-vs-eureka-vs-zookeeper-comparison</loc>
    <lastmod>2026-06-29T12:00:10+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/nacos-service-registry-discovery-principle</loc>
    <lastmod>2026-06-29T12:00:10+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/feign-first-call-slow-solution</loc>
    <lastmod>2026-06-29T12:00:10+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/loadbalancer-vs-ribbon-difference-replacement</loc>
    <lastmod>2026-06-29T12:00:10+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/http-vs-rpc-difference-comparison</loc>
    <lastmod>2026-06-29T12:00:10+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/spring-cloud-components-nacos-sentinel-introduction</loc>
    <lastmod>2026-06-29T12:00:10+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/dubbo-vs-feign-difference-comparison</loc>
    <lastmod>2026-06-29T12:00:10+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/zuul-gateway-nginx-difference-comparison</loc>
    <lastmod>2026-06-29T12:00:10+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/spring-cloud-gateway-role-microservices</loc>
    <lastmod>2026-06-29T12:00:10+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/jdbc-execution-steps-preparedstatement-tutorial</loc>
    <lastmod>2026-06-29T12:00:10+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/mybatis-executor-types-simple-reuse-batch</loc>
    <lastmod>2026-06-29T12:00:10+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/mybatis-mapper-interface-no-implementation-class</loc>
    <lastmod>2026-06-29T12:00:10+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/mybatis-pagination-plugin-principle</loc>
    <lastmod>2026-06-29T12:00:09+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/mybatis-batch-operation-best-practices</loc>
    <lastmod>2026-06-29T12:00:09+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/mybatis-lazy-loading-implementation-principle</loc>
    <lastmod>2026-06-29T12:00:09+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/mybatis-principle-working-mechanism</loc>
    <lastmod>2026-06-29T12:00:09+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/mybatis-dynamic-sql-guide</loc>
    <lastmod>2026-06-29T12:00:09+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/mybatis-vs-hibernate-comparison</loc>
    <lastmod>2026-06-29T12:00:09+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/mybatis-field-mapping-mechanism</loc>
    <lastmod>2026-06-29T12:00:09+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/mybatis-cache-mechanism-explained</loc>
    <lastmod>2026-06-29T12:00:09+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/mybatis-plugin-working-principle</loc>
    <lastmod>2026-06-29T12:00:09+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/mybatis-sharp-vs-dollar-difference</loc>
    <lastmod>2026-06-29T12:00:09+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/rocketmq-message-reliability-guarantee</loc>
    <lastmod>2026-06-29T12:00:09+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/rocketmq-architecture-overview</loc>
    <lastmod>2026-06-29T12:00:09+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/rocketmq-vs-kafka-rabbitmq-comparison</loc>
    <lastmod>2026-06-29T12:00:09+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/distributed-system-cap-base-theory</loc>
    <lastmod>2026-06-29T12:00:09+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/rocketmq-message-ordering-guarantee</loc>
    <lastmod>2026-06-29T12:00:09+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/rocketmq-transactional-message</loc>
    <lastmod>2026-06-29T12:00:09+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/rocketmq-push-or-pull-model</loc>
    <lastmod>2026-06-29T12:00:09+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/rocketmq-message-accumulation-solution</loc>
    <lastmod>2026-06-29T12:00:09+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/why-redis-does-not-support-rollback</loc>
    <lastmod>2026-06-29T12:00:09+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/redis-data-sharding-explained</loc>
    <lastmod>2026-06-29T12:00:09+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/redis-cluster-split-brain-solution</loc>
    <lastmod>2026-06-29T12:00:09+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/redis-cluster-modes-explained</loc>
    <lastmod>2026-06-29T12:00:09+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/redis-zset-implementation-details</loc>
    <lastmod>2026-06-29T12:00:09+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/redis-hot-key-problem-solution</loc>
    <lastmod>2026-06-29T12:00:09+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/redis-big-key-problem-solution</loc>
    <lastmod>2026-06-29T12:00:09+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/cache-breakdown-penetration-avalanche-solutions</loc>
    <lastmod>2026-06-29T12:00:09+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/redis-safe-key-traversal-with-scan</loc>
    <lastmod>2026-06-29T12:00:09+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/innodb-add-index-lock-table-explained</loc>
    <lastmod>2026-06-29T12:00:08+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/innodb-table-page-row-locks-explained</loc>
    <lastmod>2026-06-29T12:00:08+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/mysql-optimistic-lock-pessimistic-lock-implementation</loc>
    <lastmod>2026-06-29T12:00:08+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/mysql-leftmost-prefix-matching-principle</loc>
    <lastmod>2026-06-29T12:00:08+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/database-normalization-denormalization-guide</loc>
    <lastmod>2026-06-29T12:00:08+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/mysql-why-not-recommend-multi-table-join</loc>
    <lastmod>2026-06-29T12:00:08+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/why-not-use-stored-procedures</loc>
    <lastmod>2026-06-29T12:00:08+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/mysql-index-design-principles</loc>
    <lastmod>2026-06-29T12:00:08+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/mysql-sql-optimization-guide</loc>
    <lastmod>2026-06-29T12:00:08+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/mysql-index-slow-query-reasons</loc>
    <lastmod>2026-06-29T12:00:08+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/what-is-database-deadlock-and-how-to-solve</loc>
    <lastmod>2026-06-29T12:00:08+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/mysql-dirty-read-phantom-read-non-repeatable-read</loc>
    <lastmod>2026-06-29T12:00:07+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/mysql-slow-query-optimization</loc>
    <lastmod>2026-06-29T12:00:07+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/mysql-truncate-delete-drop-difference</loc>
    <lastmod>2026-06-29T12:00:07+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/innodb-index-types-explained</loc>
    <lastmod>2026-06-29T12:00:07+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/mysql-count-star-count-1-count-column-difference</loc>
    <lastmod>2026-06-29T12:00:07+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/mysql-unique-index-vs-primary-key-difference</loc>
    <lastmod>2026-06-29T12:00:07+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/mysql-why-not-use-foreign-keys</loc>
    <lastmod>2026-06-29T12:00:07+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/mysql-auto-increment-primary-key-exhausted-solution</loc>
    <lastmod>2026-06-29T12:00:07+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/mysql-table-lookup-query-how-to-avoid</loc>
    <lastmod>2026-06-29T12:00:07+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/mysql-deep-pagination-optimization</loc>
    <lastmod>2026-06-29T12:00:07+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/mysql-innodb-vs-myisam</loc>
    <lastmod>2026-06-29T12:00:07+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/redis-simple-dynamic-string</loc>
    <lastmod>2026-06-29T12:00:09+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/redis-transactions-vs-lua-scripts</loc>
    <lastmod>2026-06-29T12:00:09+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/redis-memory-eviction-policies</loc>
    <lastmod>2026-06-29T12:00:09+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/redis-expiration-policy</loc>
    <lastmod>2026-06-29T12:00:09+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/redis-delayed-message-implementation</loc>
    <lastmod>2026-06-29T12:00:08+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/redis5-stream-message-queue</loc>
    <lastmod>2026-06-29T12:00:08+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/redis-pub-sub-implementation</loc>
    <lastmod>2026-06-29T12:00:08+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/redis-distributed-lock-implementation</loc>
    <lastmod>2026-06-29T12:00:08+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/redis-rdb-aof-persistence-difference</loc>
    <lastmod>2026-06-29T12:00:08+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/redis-key-value-design-principles</loc>
    <lastmod>2026-06-29T12:00:08+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/redis-single-thread-why-so-fast</loc>
    <lastmod>2026-06-29T12:00:08+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/is-redis-single-thread-or-multi-thread</loc>
    <lastmod>2026-06-29T12:00:08+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/what-is-the-difference-between-char-and-varchar-in-mysql</loc>
    <lastmod>2026-06-29T12:00:07+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/what-diff-redis-memcached</loc>
    <lastmod>2026-06-29T12:00:08+08:00</lastmod>
  </url>
  <url>
    <loc>https://www.quanxiaoha.com/java-interview/redis-data-type</loc>
    <lastmod>2026-06-29T12:00:08+08:00</lastmod>
  </url>
</urlset>