<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
            <url>
            <loc>https://grenierdudev.com</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/explore</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/explore/q</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/posts</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/playground</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/cours/list</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/exercise/list</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/category/list</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/account/login</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/account/registration</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/help</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/about-us</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/open-source/list</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/jobs/list</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/forum</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://shop.grenierdudev.com</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://blog.grenierdudev.com</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://blog.grenierdudev.com/blog</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter/</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/les-bases-de-spring-boot-2d29df3</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/securisez-vos-api-spring-boot-avec-spring-security-et-jwt-2919710</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter/creer-un-projet-spring-boot-avec-spring-initializr-3c9bf5</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter/comprendre-la-configuration-automatique-et-controlleurs-de-spring-boot-326e886</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter/comprendre-les-controlleur-et-restcontroller-controller-spring-boot-218c9b9</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter/demonstration-d-une-application-spring-securite-avec-code-source-317ff9f</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter/comprendre-le-json-web-token-dans-spring-security-1b7ed06</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter/comment-implementer-le-login-et-configurer-le-jwt-filter-dans-spring-security-15e7819</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter/spring-boot-api-creer-un-utilisateur-et-tester-le-login-12cbf1d</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter/spring-boot-api-validation-et-revocation-de-token-connexion-54f74a</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter/spring-boot-api-deconnexion-refresh-token-et-invalidation-des-tokens-640dcb</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/creer-un-projet-spring-boot-avec-spring-initializr-2c452a6</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/creer-un-projet-spring-boot-avec-spring-initializr-2c452a6/prev</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/creer-un-projet-spring-boot-avec-spring-initializr-2c452a6/next</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/importer-le-projet-et-premier-demarrage-20de4ca</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/importer-le-projet-et-premier-demarrage-20de4ca/prev</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/importer-le-projet-et-premier-demarrage-20de4ca/next</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/comment-fonctionne-la-configuration-automatique-de-spring-boot-et-les-dependances-535fbe</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/comment-fonctionne-la-configuration-automatique-de-spring-boot-et-les-dependances-535fbe/prev</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/comment-fonctionne-la-configuration-automatique-de-spring-boot-et-les-dependances-535fbe/next</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/creez-votre-premier-controleur-rest-spring-boot-2b057b1</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/creez-votre-premier-controleur-rest-spring-boot-2b057b1/prev</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/creez-votre-premier-controleur-rest-spring-boot-2b057b1/next</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/comprendre-controller-vs-restcontroller-2d3259b</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/comprendre-controller-vs-restcontroller-2d3259b/prev</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/comprendre-controller-vs-restcontroller-2d3259b/next</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/demonstration-d-une-application-cree-avec-spring-security-et-json-web-token-jwt-19724ee</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/demonstration-d-une-application-cree-avec-spring-security-et-json-web-token-jwt-19724ee/prev</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/demonstration-d-une-application-cree-avec-spring-security-et-json-web-token-jwt-19724ee/next</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/telecharger-l-api-rest-spring-security-sur-github-17a3b23</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/telecharger-l-api-rest-spring-security-sur-github-17a3b23/prev</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/telecharger-l-api-rest-spring-security-sur-github-17a3b23/next</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/architecture-fonctionnement-et-configuration-de-jwt-et-spring-security-49a15e</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/architecture-fonctionnement-et-configuration-de-jwt-et-spring-security-49a15e/prev</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/architecture-fonctionnement-et-configuration-de-jwt-et-spring-security-49a15e/next</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/creation-de-jwtauthfilter-et-configuration-dans-spring-security-2a53ddf</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/creation-de-jwtauthfilter-et-configuration-dans-spring-security-2a53ddf/prev</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/creation-de-jwtauthfilter-et-configuration-dans-spring-security-2a53ddf/next</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/comment-gerer-les-exceptions-dans-spring-security-a36f7e</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/comment-gerer-les-exceptions-dans-spring-security-a36f7e/prev</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/comment-gerer-les-exceptions-dans-spring-security-a36f7e/next</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/comment-implementer-le-login-avec-jwt-et-spring-security-controller-d68668</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/comment-implementer-le-login-avec-jwt-et-spring-security-controller-d68668/prev</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/comment-implementer-le-login-avec-jwt-et-spring-security-controller-d68668/next</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/comment-implementer-le-login-avec-jwt-et-spring-security-userservice-2e06483</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/comment-implementer-le-login-avec-jwt-et-spring-security-userservice-2e06483/prev</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/comment-implementer-le-login-avec-jwt-et-spring-security-userservice-2e06483/next</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/comment-implementer-le-login-avec-jwt-et-spring-security-jwtservice-1c31083</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/comment-implementer-le-login-avec-jwt-et-spring-security-jwtservice-1c31083/prev</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/comment-implementer-le-login-avec-jwt-et-spring-security-jwtservice-1c31083/next</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/comment-implementer-le-login-avec-jwt-et-spring-security-access-token-1f56dac</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/comment-implementer-le-login-avec-jwt-et-spring-security-access-token-1f56dac/prev</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/comment-implementer-le-login-avec-jwt-et-spring-security-access-token-1f56dac/next</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/comment-implementer-le-login-avec-jwt-et-spring-security-refresh-token-1c031cf</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/comment-implementer-le-login-avec-jwt-et-spring-security-refresh-token-1c031cf/prev</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/comment-implementer-le-login-avec-jwt-et-spring-security-refresh-token-1c031cf/next</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/spring-boot-api-explication-de-la-creation-de-compte-22abc29</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/spring-boot-api-explication-de-la-creation-de-compte-22abc29/prev</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/spring-boot-api-explication-de-la-creation-de-compte-22abc29/next</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/spring-boot-api-tester-le-login-avec-la-generation-des-tokens-8a502</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/spring-boot-api-tester-le-login-avec-la-generation-des-tokens-8a502/prev</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/spring-boot-api-tester-le-login-avec-la-generation-des-tokens-8a502/next</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/spring-boot-api-comment-extraire-le-header-341cb3d</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/spring-boot-api-comment-extraire-le-header-341cb3d/prev</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/spring-boot-api-comment-extraire-le-header-341cb3d/next</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/spring-boot-api-comment-extraire-et-valider-le-jwt-filtre-2997442</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/spring-boot-api-comment-extraire-et-valider-le-jwt-filtre-2997442/prev</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/spring-boot-api-comment-extraire-et-valider-le-jwt-filtre-2997442/next</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/spring-boot-api-comment-extraire-et-valider-le-jwt-jwtservice-et-test-de-validation-260882b</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/spring-boot-api-comment-extraire-et-valider-le-jwt-jwtservice-et-test-de-validation-260882b/prev</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/spring-boot-api-comment-extraire-et-valider-le-jwt-jwtservice-et-test-de-validation-260882b/next</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/spring-boot-api-jwt-spring-boot-comment-intercepter-et-valider-le-token-expiration-du-token-28a3d62</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/spring-boot-api-jwt-spring-boot-comment-intercepter-et-valider-le-token-expiration-du-token-28a3d62/prev</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/spring-boot-api-jwt-spring-boot-comment-intercepter-et-valider-le-token-expiration-du-token-28a3d62/next</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/spring-boot-api-jwt-spring-boot-comment-intercepter-et-valider-le-token-test-expiration-2c58d8a</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/spring-boot-api-jwt-spring-boot-comment-intercepter-et-valider-le-token-test-expiration-2c58d8a/prev</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/spring-boot-api-jwt-spring-boot-comment-intercepter-et-valider-le-token-test-expiration-2c58d8a/next</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/spring-boot-api-jwt-spring-boot-comment-implementer-la-revocation-de-token-26b81b1</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/spring-boot-api-jwt-spring-boot-comment-implementer-la-revocation-de-token-26b81b1/prev</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/spring-boot-api-jwt-spring-boot-comment-implementer-la-revocation-de-token-26b81b1/next</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/spring-boot-api-jwt-spring-boot-verification-de-la-revocation-du-token-31bf72c</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/spring-boot-api-jwt-spring-boot-verification-de-la-revocation-du-token-31bf72c/prev</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/spring-boot-api-jwt-spring-boot-verification-de-la-revocation-du-token-31bf72c/next</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/spring-boot-api-jwt-spring-boot-comment-authentifier-l-utilisateur-1846a26</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/spring-boot-api-jwt-spring-boot-comment-authentifier-l-utilisateur-1846a26/prev</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/spring-boot-api-jwt-spring-boot-comment-authentifier-l-utilisateur-1846a26/next</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/spring-boot-api-jwt-spring-boot-comment-implementer-la-deconnexion-149f53f</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/spring-boot-api-jwt-spring-boot-comment-implementer-la-deconnexion-149f53f/prev</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/spring-boot-api-jwt-spring-boot-comment-implementer-la-deconnexion-149f53f/next</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/spring-boot-api-jwt-spring-boot-comment-implementer-la-deconnexion-test-151cc78</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/spring-boot-api-jwt-spring-boot-comment-implementer-la-deconnexion-test-151cc78/prev</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/spring-boot-api-jwt-spring-boot-comment-implementer-la-deconnexion-test-151cc78/next</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/spring-boot-api-jwt-spring-boot-comment-regenerer-les-access-token-grace-a-refresh-token-13c7550</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/spring-boot-api-jwt-spring-boot-comment-regenerer-les-access-token-grace-a-refresh-token-13c7550/prev</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/course/chapter-content/spring-boot-api-jwt-spring-boot-comment-regenerer-les-access-token-grace-a-refresh-token-13c7550/next</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/forum</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/forum/categories</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/forum/list</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/forum/rules</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/category/java-a77b85</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/category/spring-boot-182dd21</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/category/javascript-2026dce</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/category/vue-js-15d0b5a</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/category/android-280e8af</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/exercise/level?level=BASIC</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/exercise/level?level=MEDIUM</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/exercise/level?level=ADVANCED</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/exercise/category?slug=java-a77b85</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/exercise/category?slug=spring-boot-182dd21</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/exercise/category?slug=javascript-2026dce</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/exercise/category?slug=vue-js-15d0b5a</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
        <url>
            <loc>https://grenierdudev.com/exercise/category?slug=android-280e8af</loc>
            <lastmod>2026-04-03T23:36Z</lastmod>
            <changefreq>daily</changefreq>
            <priority>0.8</priority>
        </url>
</urlset>
