<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="/sitemap.xsl"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:news="http://www.google.com/schemas/sitemap-news/0.9" xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:image="http://www.google.com/schemas/sitemap-image/1.1" xmlns:video="http://www.google.com/schemas/sitemap-video/1.1"><url><loc>https://gavin-james.github.io/</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/architecture/</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/about/</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/framework/</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/front/</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/more/</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/more/skill.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/resource/</loc><lastmod>2026-09-15T01:37:07.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/tool/</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/tool/mermaid.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/architecture/distributed/cap-base.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/architecture/distributed/distributed-lock.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/architecture/distributed/distributed-transaction.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/architecture/distributed/id-generator.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/architecture/distributed/overview.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/architecture/distributed/session.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/architecture/high-concurrency/cache.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/architecture/high-concurrency/overview.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/architecture/high-concurrency/ratelimit.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/architecture/high-concurrency/seckill.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/architecture/microservice/governance.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/architecture/microservice/observability.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/architecture/microservice/overview.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/architecture/microservice/split.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/framework/orm/jpa.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/framework/orm/mybatis.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/framework/orm/overview.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/framework/mq/kafka.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/framework/mq/overview.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/framework/mq/rabbitmq.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/framework/mq/rocketmq.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/framework/web/netty.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/framework/web/tomcat.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/framework/spring/aop.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/framework/spring/boot-auto-config.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/framework/spring/boot-practice.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/framework/spring/cloud-gateway.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/framework/spring/cloud-nacos.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/framework/spring/cloud-sentinel.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/framework/spring/ioc.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/framework/spring/mvc.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/framework/spring/overview.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/framework/spring/security.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/framework/spring/spring-boot.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/framework/spring/spring-cloud.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/framework/spring/spring-framework.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/framework/spring/spring-transaction.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/certificate/cert-cmm.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/certificate/cert-dengbao.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/certificate/cert-iso27001.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/certificate/dev-x-overview.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/cron/dev-cron-x-tools.html</loc><lastmod>2026-10-10T19:48:14.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/cron/dev-cron-x-usage.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/design/adapter.html</loc><lastmod>2023-06-28T01:56:10.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/design/bridge.html</loc><lastmod>2023-06-28T01:56:10.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/design/builder.html</loc><lastmod>2023-06-28T01:56:10.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/design/command.html</loc><lastmod>2023-06-28T01:56:10.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/design/composite.html</loc><lastmod>2023-06-28T01:56:10.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/design/decorator.html</loc><lastmod>2023-06-28T01:56:10.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/design/end.html</loc><lastmod>2023-06-28T01:56:10.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/design/facade.html</loc><lastmod>2023-06-28T01:56:10.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/design/factory.html</loc><lastmod>2026-10-10T19:48:14.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/design/flyweight.html</loc><lastmod>2023-06-28T01:56:10.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/design/interpreter.html</loc><lastmod>2023-06-28T01:56:10.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/design/iterator.html</loc><lastmod>2023-06-28T01:56:10.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/design/mediator.html</loc><lastmod>2023-06-28T01:56:10.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/design/memento.html</loc><lastmod>2023-06-28T01:56:10.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/design/observer.html</loc><lastmod>2023-06-28T01:56:10.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/design/prototype.html</loc><lastmod>2023-06-28T01:56:10.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/design/proxy.html</loc><lastmod>2023-06-28T01:56:10.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/design/responsibility.html</loc><lastmod>2023-06-28T01:56:10.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/design/seven-principles.html</loc><lastmod>2023-06-28T01:56:10.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/design/single.html</loc><lastmod>2023-06-28T01:56:10.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/design/state.html</loc><lastmod>2023-06-28T01:56:10.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/design/strategy.html</loc><lastmod>2023-06-28T01:56:10.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/design/summary.html</loc><lastmod>2023-06-28T01:56:10.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/design/template-method.html</loc><lastmod>2023-06-28T01:56:10.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/design/thought.html</loc><lastmod>2023-06-28T01:56:10.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/design/uml-class-diagram.html</loc><lastmod>2023-06-28T01:56:10.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/design/visitor.html</loc><lastmod>2023-06-28T01:56:10.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/opensource/dev-agpl.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/opensource/dev-knowledge.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/opensource/dev-mulan.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/opensource/dev-opensource.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/opensource/dev-x-overview.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/dev-agile/dev-lean-enterprise.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/dev-agile/dev-pratice-ddd.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/dev-agile/dev-pratice-tdd.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/dev-agile/dev-th-agile-kanban.html</loc><lastmod>2026-10-10T19:48:14.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/dev-agile/dev-th-agile-scrum.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/dev-agile/dev-th-agile-xp.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/dev-agile/dev-th-agile.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/dev-agile/dev-th-waterfall-model.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/dev-agile/dev-th-waterfall-vwxh.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/dev-agile/dev-workflow.html</loc><lastmod>2026-10-10T19:48:14.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/dev-agile/dev-x-overview.html</loc><lastmod>2026-10-10T19:48:14.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/package/dev-package-x-apache-common.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/package/dev-package-x-google-guava.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/package/dev-package-x-hu-tool.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/package/dev-package-x-json.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/package/dev-package-x-log.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/package/dev-package-x-lombok.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/package/dev-package-x-mapstruct.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/package/dev-package-x-others.html</loc><lastmod>2026-10-10T19:48:14.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/package/dev-package-x-overview.html</loc><lastmod>2023-12-26T09:56:01.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/package/dev-package-x-spring-util.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/pattern/10_bridge.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/pattern/11_compsite.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/pattern/12_decorator.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/pattern/13_flyweight.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/pattern/14_proxy.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/pattern/15_chain.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/pattern/16_strategy.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/pattern/17_template.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/pattern/18_command.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/pattern/19_observer.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/pattern/1_overview.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/pattern/20_visitor.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/pattern/21_state.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/pattern/22_interpreter.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/pattern/23_iterator.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/pattern/24_mediator.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/pattern/25_memento.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/pattern/2_singleton.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/pattern/3_simple_factory.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/pattern/4_factory_method.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/pattern/5_abstract_factory.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/pattern/6_builder.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/pattern/7_prototype.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/pattern/8_facade.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/pattern/9_adapter.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/protocol/dev-protocol-dns.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/protocol/dev-protocol-http.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/protocol/dev-protocol-ip.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/protocol/dev-protocol-network-basic.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/protocol/dev-protocol-osi7.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/protocol/dev-protocol-overview.html</loc><lastmod>2023-12-26T09:56:01.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/protocol/dev-protocol-tcpip.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/protocol/dev-protocol-tool-netstat.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/protocol/dev-protocol-tool-tcpdump.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/protocol/dev-protocol-tool-wireshark.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/protocol/dev-protocol-udp.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/protocol/dev-protocol-url.html</loc><lastmod>2026-10-10T19:48:14.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/refactor/dev-refactor-if-else.html</loc><lastmod>2023-12-26T09:56:01.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/refactor/dev-refactor-not-null.html</loc><lastmod>2023-12-26T09:56:01.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/regex/dev-regex-all.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/regex/dev-regex-tools.html</loc><lastmod>2026-10-10T19:48:14.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/regex/dev-regex-usage.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/security/dev-security-overview.html</loc><lastmod>2023-12-26T09:56:01.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/security/dev-security-x-click-hijack.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/security/dev-security-x-csrf.html</loc><lastmod>2026-10-10T19:48:14.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/security/dev-security-x-ddos.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/security/dev-security-x-injection.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/security/dev-security-x-owasp.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/security/dev-security-x-xss.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/security/dev-security-y-pentest-workflow.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/security/dev-security-y-pratice.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/spec/dev-microservice-kangwei.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/spec/dev-th-acid.html</loc><lastmod>2026-10-10T19:48:14.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/spec/dev-th-base.html</loc><lastmod>2026-10-10T19:48:14.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/spec/dev-th-cap.html</loc><lastmod>2026-10-10T19:48:14.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/spec/dev-th-solid.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/spec/dev-x-overview.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/usage/dev-usage-exe-package.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/usage/dev-usage-export-pdf.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/usage/dev-usage-flotjs.html</loc><lastmod>2026-10-10T19:48:14.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/usage/dev-usage-input-password.html</loc><lastmod>2026-10-10T19:48:14.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/usage/dev-usage-jar-readfile.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/usage/dev-usage-newObj.html</loc><lastmod>2026-10-10T19:48:14.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/usage/dev-usage-overview.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/usage/dev-usage-zkfinger.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/usage/dev-usage-zuosi.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/nosql-es/elasticsearch-awesome-es.html</loc><lastmod>2026-10-10T19:48:14.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/nosql-es/elasticsearch-backup.html</loc><lastmod>2023-12-26T08:34:19.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/nosql-es/elasticsearch-wrapper-query.html</loc><lastmod>2023-12-26T08:34:19.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/nosql-es/elasticsearch-x-agg-bucket.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/nosql-es/elasticsearch-x-agg-metric.html</loc><lastmod>2023-12-26T08:34:19.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/nosql-es/elasticsearch-x-agg-pipeline.html</loc><lastmod>2023-12-26T08:34:19.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/nosql-es/elasticsearch-x-dsl-com.html</loc><lastmod>2023-12-26T08:34:19.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/nosql-es/elasticsearch-x-dsl-full-text.html</loc><lastmod>2023-12-26T08:34:19.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/nosql-es/elasticsearch-x-dsl-term.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/nosql-es/elasticsearch-x-index-mapping.html</loc><lastmod>2023-12-26T08:34:19.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/nosql-es/elasticsearch-x-index-template.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/nosql-es/elasticsearch-x-install.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/nosql-es/elasticsearch-x-introduce-1.html</loc><lastmod>2023-12-26T08:34:19.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/nosql-es/elasticsearch-x-introduce-2.html</loc><lastmod>2023-12-26T08:34:19.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/nosql-es/elasticsearch-x-usage.html</loc><lastmod>2023-12-26T08:34:19.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/nosql-es/elasticsearch-y-peformance.html</loc><lastmod>2023-12-26T08:34:19.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/nosql-es/elasticsearch-y-th-1.html</loc><lastmod>2023-12-26T08:34:19.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/nosql-es/elasticsearch-y-th-2.html</loc><lastmod>2023-12-26T08:34:19.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/nosql-es/elasticsearch-y-th-3.html</loc><lastmod>2023-12-26T08:34:19.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/nosql-es/elasticsearch-y-th-4.html</loc><lastmod>2023-12-26T08:34:19.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/nosql-es/elasticsearch-z-hello.html</loc><lastmod>2023-12-26T08:34:19.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/nosql-es/elasticsearch-z-meituan.html</loc><lastmod>2023-12-26T08:34:19.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/nosql-es/elasticsearch-z-tencent.html</loc><lastmod>2023-12-26T08:34:19.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/nosql-es/elasticsearch.html</loc><lastmod>2023-12-26T08:34:19.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/sql/sql-db-howitworks.html</loc><lastmod>2023-12-26T08:34:19.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/sql/sql-db-theory-concept.html</loc><lastmod>2023-12-26T08:34:19.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/sql/sql-db-theory-design.html</loc><lastmod>2023-12-26T08:34:19.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/sql/sql-db-theory.html</loc><lastmod>2023-12-26T08:34:19.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/sql/sql-db.html</loc><lastmod>2026-10-10T19:48:14.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/nosql-redis/db-redis-data-type-enc.html</loc><lastmod>2023-12-26T08:34:19.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/nosql-redis/db-redis-data-type-special.html</loc><lastmod>2023-12-26T08:34:19.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/nosql-redis/db-redis-data-type-stream.html</loc><lastmod>2023-12-26T08:34:19.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/nosql-redis/db-redis-data-types.html</loc><lastmod>2023-12-26T08:34:19.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/nosql-redis/db-redis-introduce.html</loc><lastmod>2023-12-26T08:34:19.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/nosql-redis/db-redis-overview.html</loc><lastmod>2023-12-26T08:34:19.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/nosql-redis/db-redis-x-cache.html</loc><lastmod>2023-12-26T08:34:19.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/nosql-redis/db-redis-x-cluster.html</loc><lastmod>2023-12-26T08:34:19.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/nosql-redis/db-redis-x-copy.html</loc><lastmod>2023-12-26T08:34:19.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/nosql-redis/db-redis-x-event.html</loc><lastmod>2023-12-26T08:34:19.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/nosql-redis/db-redis-x-performance.html</loc><lastmod>2023-12-26T08:52:28.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/nosql-redis/db-redis-x-pub-sub.html</loc><lastmod>2023-12-26T08:34:19.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/nosql-redis/db-redis-x-rdb-aof.html</loc><lastmod>2023-12-26T08:34:19.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/nosql-redis/db-redis-x-redis-ds.html</loc><lastmod>2023-12-26T08:34:19.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/nosql-redis/db-redis-x-redis-object.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/nosql-redis/db-redis-x-sentinel.html</loc><lastmod>2023-12-26T08:34:19.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/nosql-redis/db-redis-x-trans.html</loc><lastmod>2023-12-26T08:34:19.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/nosql-redis/db-redis-x-version-lastest.html</loc><lastmod>2023-12-26T08:34:19.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/nosql-redis/db-redis-y-monitor.html</loc><lastmod>2023-12-26T08:34:19.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/nosql-redis/db-redis-y-mt-1.html</loc><lastmod>2023-12-26T08:34:19.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/nosql-redis/db-redis-y-weibo.html</loc><lastmod>2023-12-26T08:34:19.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/nosql-redis/db-redis-z-mianshi.html</loc><lastmod>2023-12-26T08:34:19.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/nosql-mongo/mongo-performance-improve.html</loc><lastmod>2023-12-26T08:34:19.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/nosql-mongo/mongo-performance-model.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/nosql-mongo/mongo-x-basic.html</loc><lastmod>2023-12-26T08:34:19.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/nosql-mongo/mongo-x-ecosystem.html</loc><lastmod>2023-12-26T08:34:19.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/nosql-mongo/mongo-x-usage-1.html</loc><lastmod>2023-12-26T08:34:19.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/nosql-mongo/mongo-x-usage-2.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/nosql-mongo/mongo-x-usage-3.html</loc><lastmod>2023-12-26T08:34:19.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/nosql-mongo/mongo-x-usage-4.html</loc><lastmod>2023-12-26T08:34:19.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/nosql-mongo/mongo-x-usage-5.html</loc><lastmod>2023-12-26T08:34:19.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/nosql-mongo/mongo-y-arch.html</loc><lastmod>2023-12-26T08:34:19.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/nosql-mongo/mongo-y-cache.html</loc><lastmod>2023-12-26T08:34:19.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/nosql-mongo/mongo-y-checkpoint.html</loc><lastmod>2023-12-26T08:34:19.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/nosql-mongo/mongo-y-doc.html</loc><lastmod>2023-12-26T08:34:19.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/nosql-mongo/mongo-y-ds.html</loc><lastmod>2023-12-26T08:34:19.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/nosql-mongo/mongo-y-introduce.html</loc><lastmod>2026-10-10T19:48:14.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/nosql-mongo/mongo-y-page.html</loc><lastmod>2023-12-26T08:34:19.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/nosql-mongo/mongo-y-trans.html</loc><lastmod>2023-12-26T08:34:19.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/nosql-mongo/mongo-z-backup.html</loc><lastmod>2026-10-10T19:48:14.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/nosql-mongo/mongo-z-index.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/nosql-mongo/mongo-z-rep.html</loc><lastmod>2023-12-26T08:34:19.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/nosql-mongo/mongo-z-sharding.html</loc><lastmod>2023-12-26T08:34:19.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/nosql-mongo/mongo.html</loc><lastmod>2023-12-26T08:34:19.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/nosql-mongo/postgresql-replace.html</loc><lastmod>2023-12-26T08:34:19.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/sql-lan/sql-lan-leetcode.html</loc><lastmod>2023-12-26T08:34:19.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/sql-lan/sql-lan-optimize.html</loc><lastmod>2023-12-26T08:34:19.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/sql-lan/sql-lan-pratice.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/sql-lan/sql-lan.html</loc><lastmod>2023-12-26T08:34:19.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/sql-mysql/sql-mysql-b-tree.html</loc><lastmod>2023-12-26T08:34:19.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/sql-mysql/sql-mysql-devide.html</loc><lastmod>2026-10-10T19:48:14.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/sql-mysql/sql-mysql-engine.html</loc><lastmod>2026-10-10T19:48:14.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/sql-mysql/sql-mysql-execute.html</loc><lastmod>2023-12-26T08:34:19.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/sql-mysql/sql-mysql-index-improve-mt.html</loc><lastmod>2023-12-26T08:34:19.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/sql-mysql/sql-mysql-mvcc.html</loc><lastmod>2023-12-26T08:34:19.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/sql-mysql/sql-mysql-overview.html</loc><lastmod>2023-12-26T08:34:19.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/sql-mysql/sql-mysql-performance.html</loc><lastmod>2026-10-10T19:48:14.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/sql-mysql/sql-mysql-slave.html</loc><lastmod>2026-10-10T19:48:14.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/sql-mysql/sql-mysql-sql-advisor-mt.html</loc><lastmod>2023-12-26T08:34:19.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/sql-mysql/sql-mysql-sql-costmodel-mt.html</loc><lastmod>2023-12-26T08:34:19.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/sql-mysql/sql-mysql-sql-parser.html</loc><lastmod>2023-12-26T08:34:19.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/sql-mysql/sql-mysql-theory.html</loc><lastmod>2023-12-26T08:34:19.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/sql-mysql/sql-mysql-xunjian-mt.html</loc><lastmod>2023-12-26T08:34:19.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/db/sql-oracle/sql-oracle-overview.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/front/css/overview.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/front/html/overview.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/front/js/async.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/front/js/overview.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/front/react/hooks.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/front/react/overview.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/front/vue/component.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/front/vue/overview.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/basic/java-advanced-spi.html</loc><lastmod>2026-10-10T19:48:14.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/basic/java-basic-lan-basic.html</loc><lastmod>2023-07-24T01:04:58.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/basic/java-basic-lan-sum.html</loc><lastmod>2023-07-24T01:04:58.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/basic/java-basic-oop.html</loc><lastmod>2023-07-24T01:04:58.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/basic/java-basic-x-annotation.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/basic/java-basic-x-exception.html</loc><lastmod>2023-07-24T01:04:58.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/basic/java-basic-x-generic.html</loc><lastmod>2023-07-24T01:04:58.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/basic/java-basic-x-reflection.html</loc><lastmod>2023-07-24T01:04:58.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/collection/java-collection-ArrayList.html</loc><lastmod>2023-12-25T09:17:23.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/collection/java-collection-LinkedList.html</loc><lastmod>2023-12-25T09:17:23.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/collection/java-collection-PriorityQueue.html</loc><lastmod>2023-12-25T09:17:23.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/collection/java-collection-Queue_Stack.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/collection/java-collection-all.html</loc><lastmod>2026-10-10T19:48:14.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/collection/java-map-HashMap_HashSet.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/collection/java-map-LinkedHashMap_LinkedHashSet.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/collection/java-map-TreeMap_TreeSet.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/collection/java-map-WeakHashMap.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/io/java-io-aio.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/io/java-io-basic-category.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/io/java-io-basic-code-inputstream.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/io/java-io-basic-code-outputstream.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/io/java-io-basic-design-pattern.html</loc><lastmod>2026-10-10T19:48:14.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/io/java-io-basic-usage.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/io/java-io-bio.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/io/java-io-model.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/io/java-io-nio-netty.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/io/java-io-nio-select-epoll.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/io/java-io-nio-zerocopy.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/io/java-io-nio.html</loc><lastmod>2023-12-26T08:34:19.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/io/java-io-overview.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/javaup/java-8-up-overview.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/javaup/java10.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/javaup/java11.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/javaup/java12-17.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/javaup/java12.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/javaup/java13.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/javaup/java14.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/javaup/java15.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/javaup/java16.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/javaup/java17.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/javaup/java8-anno-repeat.html</loc><lastmod>2026-10-10T19:48:14.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/javaup/java8-default.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/javaup/java8-javafx.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/javaup/java8-jre.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/javaup/java8-localdatetime.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/javaup/java8-optional.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/javaup/java8-others.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/javaup/java8-permgen.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/javaup/java8-stampedlock.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/javaup/java8-stream.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/javaup/java8-type-anno.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/javaup/java8-type.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/javaup/java8.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/javaup/java9-11.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/javaup/java9.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/jvm/java-jvm-agent-arthas.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/jvm/java-jvm-agent-usage.html</loc><lastmod>2026-10-10T19:48:14.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/jvm/java-jvm-class-enhancer.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/jvm/java-jvm-class.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/jvm/java-jvm-classload.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/jvm/java-jvm-cms-gc.html</loc><lastmod>2026-10-10T19:48:14.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/jvm/java-jvm-debug-idea.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/jvm/java-jvm-debug-tools-linux.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/jvm/java-jvm-debug-tools-list.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/jvm/java-jvm-gc-g1.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/jvm/java-jvm-gc-zgc.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/jvm/java-jvm-gc.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/jvm/java-jvm-jmm.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/jvm/java-jvm-oom-offheap.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/jvm/java-jvm-oom-tool.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/jvm/java-jvm-oom.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/jvm/java-jvm-param.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/jvm/java-jvm-struct.html</loc><lastmod>2023-12-26T08:34:19.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/jvm/java-jvm-thread-dump.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/jvm/java-jvm-x-introduce.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/jvm/java-jvm-x-overview.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/others/awesome-java.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/others/better-java.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/thread/java-thread-x-juc-AtomicInteger.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/thread/java-thread-x-juc-collection-BlockingQueue.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/thread/java-thread-x-juc-collection-ConcurrentHashMap.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/thread/java-thread-x-juc-collection-ConcurrentLinkedQueue.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/thread/java-thread-x-juc-collection-CopyOnWriteArrayList.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/thread/java-thread-x-juc-executor-ForkJoinPool.html</loc><lastmod>2026-10-10T19:48:14.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/thread/java-thread-x-juc-executor-FutureTask.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/thread/java-thread-x-juc-executor-ScheduledThreadPoolExecutor.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/thread/java-thread-x-juc-executor-ThreadPoolExecutor.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/thread/java-thread-x-juc-overview.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/thread/java-thread-x-juc-tool-countdownlatch.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/thread/java-thread-x-juc-tool-cyclicbarrier.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/thread/java-thread-x-juc-tool-exchanger.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/thread/java-thread-x-juc-tool-phaser.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/thread/java-thread-x-juc-tool-semaphore.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/thread/java-thread-x-key-final.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/thread/java-thread-x-key-synchronized.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/thread/java-thread-x-key-volatile.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/thread/java-thread-x-lock-AbstractQueuedSynchronizer.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/thread/java-thread-x-lock-LockSupport.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/thread/java-thread-x-lock-ReentrantLock.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/thread/java-thread-x-lock-ReentrantReadWriteLock.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/thread/java-thread-x-lock-all.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/thread/java-thread-x-overview.html</loc><lastmod>2026-10-10T19:48:14.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/thread/java-thread-x-theorty.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/thread/java-thread-x-thread-basic.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/java/thread/java-thread-x-threadlocal.html</loc><lastmod>2023-12-25T08:42:25.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/tool/docker/compose.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/tool/docker/overview.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/tool/git/branching.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/tool/git/overview.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/tool/gradle/01.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/tool/ide/overview.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/tool/jenkins/overview.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/tool/linux/overview.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/tool/linux/shell.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/tool/maven/overview.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/algorithms-structures/alg-basic/alg-basic-array.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/algorithms-structures/alg-basic/alg-basic-graph-aoe.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/algorithms-structures/alg-basic/alg-basic-graph-bfs-dfs.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/algorithms-structures/alg-basic/alg-basic-graph-min-distance.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/algorithms-structures/alg-basic/alg-basic-graph-min-tree.html</loc><lastmod>2026-10-10T19:48:14.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/algorithms-structures/alg-basic/alg-basic-graph-topo-sort.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/algorithms-structures/alg-basic/alg-basic-graph.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/algorithms-structures/alg-basic/alg-basic-hashtable.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/algorithms-structures/alg-basic/alg-basic-linklist.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/algorithms-structures/alg-basic/alg-basic-overview.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/algorithms-structures/alg-basic/alg-basic-stack_queue.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/algorithms-structures/alg-basic/alg-basic-tree-balance.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/algorithms-structures/alg-basic/alg-basic-tree-hafman.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/algorithms-structures/alg-basic/alg-basic-tree-redblack.html</loc><lastmod>2026-10-10T19:48:14.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/algorithms-structures/alg-basic/alg-basic-tree-search.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/algorithms-structures/alg-basic/alg-basic-tree-trie.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/algorithms-structures/alg-basic/alg-basic-tree.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/algorithms-structures/alg-core/alg-core-backtracking.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/algorithms-structures/alg-core/alg-core-devide-two.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/algorithms-structures/alg-core/alg-core-divide-and-conquer.html</loc><lastmod>2026-10-10T19:48:14.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/algorithms-structures/alg-core/alg-core-dynamic.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/algorithms-structures/alg-core/alg-core-greedy.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/algorithms-structures/alg-core/alg-core-overview.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/algorithms-structures/alg-core/alg-core-search.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/algorithms-structures/alg-other/alg-other-mind.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/algorithms-structures/alg-sort/alg-sort-overview.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/algorithms-structures/alg-sort/alg-sort-x-bubble.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/algorithms-structures/alg-sort/alg-sort-x-bucket.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/algorithms-structures/alg-sort/alg-sort-x-fast.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/algorithms-structures/alg-sort/alg-sort-x-heap.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/algorithms-structures/alg-sort/alg-sort-x-insert.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/algorithms-structures/alg-sort/alg-sort-x-merge.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/algorithms-structures/alg-sort/alg-sort-x-radix.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/algorithms-structures/alg-sort/alg-sort-x-select.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/algorithms-structures/alg-sort/alg-sort-x-shell.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/algorithms-structures/alg-domain/alg-domain-bigdata-bloom-filter.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/algorithms-structures/alg-domain/alg-domain-bigdata-bucket.html</loc><lastmod>2026-10-10T19:48:14.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/algorithms-structures/alg-domain/alg-domain-bigdata-db-index.html</loc><lastmod>2026-10-10T19:48:14.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/algorithms-structures/alg-domain/alg-domain-bigdata-devide-and-hash.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/algorithms-structures/alg-domain/alg-domain-bigdata-map-reduce.html</loc><lastmod>2026-10-10T19:48:14.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/algorithms-structures/alg-domain/alg-domain-bigdata-outsort.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/algorithms-structures/alg-domain/alg-domain-bigdata-overview.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/algorithms-structures/alg-domain/alg-domain-char-match-bf.html</loc><lastmod>2026-10-10T19:48:14.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/algorithms-structures/alg-domain/alg-domain-char-match-bm.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/algorithms-structures/alg-domain/alg-domain-char-match-kmp.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/algorithms-structures/alg-domain/alg-domain-char-match-st.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/algorithms-structures/alg-domain/alg-domain-char-match.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/algorithms-structures/alg-domain/alg-domain-distribute-overview.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/algorithms-structures/alg-domain/alg-domain-distribute-x-consistency-hash.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/algorithms-structures/alg-domain/alg-domain-distribute-x-paxos.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/algorithms-structures/alg-domain/alg-domain-distribute-x-raft.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/algorithms-structures/alg-domain/alg-domain-distribute-x-zab.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/algorithms-structures/alg-domain/alg-domain-id-snowflake.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/algorithms-structures/alg-domain/alg-domain-load-balance.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/algorithms-structures/alg-domain/alg-domain-machine.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/algorithms-structures/alg-domain/alg-domain-overview.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/algorithms-structures/alg-domain/alg-domain-security-degist.html</loc><lastmod>2026-10-10T19:48:14.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/algorithms-structures/alg-domain/alg-domain-security-secure.html</loc><lastmod>2026-10-10T19:48:14.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/algorithms-structures/alg-domain/alg-domain-security-sm.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/algorithms-structures/alg-domain/alg-domain-suggest.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/quality-assurance/code-style/code-style-alibaba.html</loc><lastmod>2026-10-10T19:48:14.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/quality-assurance/code-style/code-style-google.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/quality-assurance/code-style/code-style-twitter.html</loc><lastmod>2026-10-10T20:37:55.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/quality-assurance/code-style/dev-x-overview.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/quality-assurance/ut/dev-qt-code-style-1.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/quality-assurance/ut/dev-qt-code-style-2.html</loc><lastmod>2026-10-10T19:48:14.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/quality-assurance/ut/dev-qt-code-style.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/quality-assurance/ut/dev-qt-overview.html</loc><lastmod>2023-12-26T09:56:01.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/quality-assurance/ut/dev-qt-sonarlint.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/quality-assurance/ut/dev-qt-spotbugs.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/quality-assurance/ut/dev-ut-springboot2.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/quality-assurance/ut/dev-ut-unit-test.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/quality-assurance/ut/dev-ut-x-junit-idea.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/quality-assurance/ut/dev-ut-x-junit.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/quality-assurance/ut/dev-ut-x-junit5.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url><url><loc>https://gavin-james.github.io/develop/quality-assurance/ut/dev-ut-x-mockito.html</loc><lastmod>2023-12-27T08:55:11.000Z</lastmod><changefreq>daily</changefreq></url></urlset>