<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet type="text/xsl" href="//alexkosarev.name/wp-content/plugins/wordpress-seo/css/main-sitemap.xsl"?>
<urlset xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:image="http://www.google.com/schemas/sitemap-image/1.1" xsi:schemaLocation="http://www.sitemaps.org/schemas/sitemap/0.9 http://www.sitemaps.org/schemas/sitemap/0.9/sitemap.xsd http://www.google.com/schemas/sitemap-image/1.1 http://www.google.com/schemas/sitemap-image/1.1/sitemap-image.xsd" xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
	<url>
		<loc>https://alexkosarev.name/</loc>
		<lastmod>2026-07-23T11:16:43+00:00</lastmod>
	</url>
	<url>
		<loc>https://alexkosarev.name/2016/05/15/%d0%bf%d1%80%d0%b8%d0%b2%d0%b5%d1%82-%d0%bc%d0%b8%d1%80/</loc>
		<lastmod>2016-05-15T12:58:19+00:00</lastmod>
	</url>
	<url>
		<loc>https://alexkosarev.name/2016/10/22/%d0%a1%d1%82%d1%80%d0%b8%d0%bc-%d0%bf%d1%80%d0%be%d1%81%d1%82%d0%be%d0%b5-%d0%b2%d0%b5%d0%b1-%d0%bf%d1%80%d0%b8%d0%bb%d0%be%d0%b6%d0%b5%d0%bd%d0%b8%d0%b5-%d0%bd%d0%b0-spring-boot/</loc>
		<lastmod>2016-10-22T17:51:11+00:00</lastmod>
	</url>
	<url>
		<loc>https://alexkosarev.name/2016/10/24/%d0%a1%d1%82%d1%80%d0%b8%d0%bc-%d0%bf%d1%80%d0%be%d1%81%d1%82%d0%be%d0%b5-%d0%b2%d0%b5%d0%b1-%d0%bf%d1%80%d0%b8%d0%bb%d0%be%d0%b6%d0%b5%d0%bd%d0%b8%d0%b5-%d0%bd%d0%b0-spring-boot-%d0%b7%d0%b0%d0%b2/</loc>
		<lastmod>2016-10-24T16:19:47+00:00</lastmod>
	</url>
	<url>
		<loc>https://alexkosarev.name/2017/02/08/spring-framework-database-spring-data-jpa/</loc>
		<lastmod>2017-02-08T09:13:51+00:00</lastmod>
	</url>
	<url>
		<loc>https://alexkosarev.name/2016/06/22/maven-archetypes-netbeans/</loc>
		<lastmod>2017-06-26T03:23:52+00:00</lastmod>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2016/06/netbeans-maven-archetype-1.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2016/06/netbeans-maven-archetype-2.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2016/06/netbeans-maven-archetype-3.png</image:loc>
		</image:image>
	</url>
	<url>
		<loc>https://alexkosarev.name/2016/12/29/about-pathvariable/</loc>
		<lastmod>2017-06-26T03:25:31+00:00</lastmod>
	</url>
	<url>
		<loc>https://alexkosarev.name/2017/02/09/spring-data-jpa-magic-methods/</loc>
		<lastmod>2017-06-26T03:26:15+00:00</lastmod>
	</url>
	<url>
		<loc>https://alexkosarev.name/2016/06/24/spring-boot-example-guestbook/</loc>
		<lastmod>2017-06-26T03:27:12+00:00</lastmod>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2016/06/spring-boot-guestbook.png</image:loc>
		</image:image>
	</url>
	<url>
		<loc>https://alexkosarev.name/2016/06/22/getting-started-vaadin/</loc>
		<lastmod>2017-06-26T03:27:34+00:00</lastmod>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2016/06/vaadin-stub.png</image:loc>
		</image:image>
	</url>
	<url>
		<loc>https://alexkosarev.name/2016/06/14/spring-framework-named-parameter-jdbc-template/</loc>
		<lastmod>2017-06-26T03:28:08+00:00</lastmod>
	</url>
	<url>
		<loc>https://alexkosarev.name/2016/06/13/netbeans-code-coverage/</loc>
		<lastmod>2017-06-26T03:28:36+00:00</lastmod>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2016/06/netbeans-code-coverage.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2016/06/netbeans-code-coverage-2.png</image:loc>
		</image:image>
	</url>
	<url>
		<loc>https://alexkosarev.name/2016/05/26/spring-framework-and-beans-initialization/</loc>
		<lastmod>2017-06-26T03:28:45+00:00</lastmod>
	</url>
	<url>
		<loc>https://alexkosarev.name/2016/05/25/letsencrypt-certbot-dialogerror/</loc>
		<lastmod>2017-06-26T03:29:00+00:00</lastmod>
	</url>
	<url>
		<loc>https://alexkosarev.name/2016/05/24/ubuntu-server-gitlab-pg_dump/</loc>
		<lastmod>2017-06-26T03:29:10+00:00</lastmod>
	</url>
	<url>
		<loc>https://alexkosarev.name/2016/05/19/spring-security-token-authentication-part-1/</loc>
		<lastmod>2017-06-26T03:29:21+00:00</lastmod>
	</url>
	<url>
		<loc>https://alexkosarev.name/2016/06/13/spring-framework-jdbctemplate/</loc>
		<lastmod>2017-06-26T03:32:56+00:00</lastmod>
	</url>
	<url>
		<loc>https://alexkosarev.name/2017/08/08/application-development-with-spring-part-1/</loc>
		<lastmod>2017-08-08T03:42:24+00:00</lastmod>
	</url>
	<url>
		<loc>https://alexkosarev.name/2017/08/08/thymeleaf-template-engine/</loc>
		<lastmod>2017-08-08T08:17:29+00:00</lastmod>
	</url>
	<url>
		<loc>https://alexkosarev.name/2017/10/29/one-test-to-rule-them-all-ru/</loc>
		<lastmod>2017-11-01T03:15:13+00:00</lastmod>
	</url>
	<url>
		<loc>https://alexkosarev.name/2017/11/01/spring-restdocs-and-spring-cloud-contract-with-cucumber/</loc>
		<lastmod>2017-11-09T04:48:34+00:00</lastmod>
	</url>
	<url>
		<loc>https://alexkosarev.name/2017/11/09/spring-restdocs-and-spring-cloud-contract-with-cucumber-and-spring-webflux/</loc>
		<lastmod>2017-11-09T05:14:50+00:00</lastmod>
	</url>
	<url>
		<loc>https://alexkosarev.name/2018/07/04/spring-security-oauth-2-0-with-apereo-cas/</loc>
		<lastmod>2018-07-04T04:29:03+00:00</lastmod>
	</url>
	<url>
		<loc>https://alexkosarev.name/2018/07/05/practice-solid-dip/</loc>
		<lastmod>2018-07-05T08:27:45+00:00</lastmod>
	</url>
	<url>
		<loc>https://alexkosarev.name/2018/07/12/practice-solid-lsp/</loc>
		<lastmod>2018-07-12T04:05:58+00:00</lastmod>
	</url>
	<url>
		<loc>https://alexkosarev.name/2018/07/27/n-tier-java-part1/</loc>
		<lastmod>2018-07-27T11:34:42+00:00</lastmod>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2018/07/simple.png</image:loc>
		</image:image>
	</url>
	<url>
		<loc>https://alexkosarev.name/2018/07/27/n-tier-java-part2/</loc>
		<lastmod>2018-07-27T11:37:06+00:00</lastmod>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2018/07/classes-advanced.png</image:loc>
		</image:image>
	</url>
	<url>
		<loc>https://alexkosarev.name/2018/07/31/bean-validation-xml-config/</loc>
		<lastmod>2018-07-31T04:57:52+00:00</lastmod>
	</url>
	<url>
		<loc>https://alexkosarev.name/2019/01/10/spring-framework-functional-bean-registration/</loc>
		<lastmod>2019-01-10T09:27:59+00:00</lastmod>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2019/01/spring.png</image:loc>
		</image:image>
	</url>
	<url>
		<loc>https://alexkosarev.name/2019/01/10/spring-framework-functional-bean-registration-en/</loc>
		<lastmod>2019-01-10T09:35:04+00:00</lastmod>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2019/01/spring.png</image:loc>
		</image:image>
	</url>
	<url>
		<loc>https://alexkosarev.name/2019/01/18/boosting-spring-boot-with-autoconfigurations/</loc>
		<lastmod>2019-01-18T07:00:57+00:00</lastmod>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2019/01/spring_boot_logo.png</image:loc>
		</image:image>
	</url>
	<url>
		<loc>https://alexkosarev.name/2019/02/15/mongodb-codecs/</loc>
		<lastmod>2019-02-15T09:19:52+00:00</lastmod>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2019/01/mongo_java.png</image:loc>
		</image:image>
	</url>
	<url>
		<loc>https://alexkosarev.name/2019/02/20/reactive-web-with-kotlin/</loc>
		<lastmod>2019-02-20T08:02:50+00:00</lastmod>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2019/02/deps.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2019/02/ezgif.com-video-to-gif2.gif</image:loc>
		</image:image>
	</url>
	<url>
		<loc>https://alexkosarev.name/2019/01/30/java-and-mongo-basic-operations/</loc>
		<lastmod>2019-02-20T08:32:18+00:00</lastmod>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2019/01/mongo_java.png</image:loc>
		</image:image>
	</url>
	<url>
		<loc>https://alexkosarev.name/2019/01/10/blog-updates/</loc>
		<lastmod>2019-03-04T08:07:52+00:00</lastmod>
	</url>
	<url>
		<loc>https://alexkosarev.name/2019/03/08/rest-api-with-spring/</loc>
		<lastmod>2019-03-08T10:33:00+00:00</lastmod>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2019/01/spring.png</image:loc>
		</image:image>
	</url>
	<url>
		<loc>https://alexkosarev.name/2019/03/15/optional-in-java/</loc>
		<lastmod>2019-03-15T11:26:05+00:00</lastmod>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2019/03/duke.png</image:loc>
		</image:image>
	</url>
	<url>
		<loc>https://alexkosarev.name/2019/05/04/spring-framework-simple-jdbc-insert/</loc>
		<lastmod>2019-05-04T06:09:19+00:00</lastmod>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2019/01/spring.png</image:loc>
		</image:image>
	</url>
	<url>
		<loc>https://alexkosarev.name/2019/06/20/ioc-di-and-dl/</loc>
		<lastmod>2019-06-20T04:58:50+00:00</lastmod>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2019/06/IoC.png</image:loc>
		</image:image>
	</url>
	<url>
		<loc>https://alexkosarev.name/2019/07/11/tutorial-java-web-application-with-spring-part1/</loc>
		<lastmod>2019-07-11T05:10:00+00:00</lastmod>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2019/01/spring.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2019/07/products_list.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2019/07/product_page.png</image:loc>
		</image:image>
	</url>
	<url>
		<loc>https://alexkosarev.name/2019/11/21/spring-webflux-jms-to-sse/</loc>
		<lastmod>2019-11-21T06:12:08+00:00</lastmod>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2019/01/spring.png</image:loc>
		</image:image>
	</url>
	<url>
		<loc>https://alexkosarev.name/2020/06/08/testing-spring-with-testcontainers-ru/</loc>
		<lastmod>2020-06-08T08:02:09+00:00</lastmod>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2020/06/testcontainers.png</image:loc>
		</image:image>
	</url>
	<url>
		<loc>https://alexkosarev.name/2020/06/12/hexagonal-architecture/</loc>
		<lastmod>2020-06-12T10:58:55+00:00</lastmod>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2020/06/n_tier.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2020/06/hex.png</image:loc>
		</image:image>
	</url>
	<url>
		<loc>https://alexkosarev.name/2020/08/14/application-servers-in-microservices-and-cloud-era/</loc>
		<lastmod>2020-08-14T08:54:08+00:00</lastmod>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2020/08/wildfly_logo_stacked_600px.png</image:loc>
		</image:image>
	</url>
	<url>
		<loc>https://alexkosarev.name/2021/03/13/472/</loc>
		<lastmod>2021-03-13T13:06:12+00:00</lastmod>
	</url>
	<url>
		<loc>https://alexkosarev.name/2021/04/21/%d0%bf%d0%be%d0%bb%d0%b5%d0%b7%d0%bd%d1%8b%d0%b5-%d0%b8%d0%bd%d1%81%d1%82%d1%80%d1%83%d0%bc%d0%b5%d0%bd%d1%82%d1%8b-%d1%80%d0%b0%d0%b7%d1%80%d0%b0%d0%b1%d0%be%d1%82%d1%87%d0%b8%d0%ba%d0%b0-sdkman/</loc>
		<lastmod>2021-04-21T08:36:36+00:00</lastmod>
	</url>
	<url>
		<loc>https://alexkosarev.name/2021/08/31/flow-control-without-exceptions-in-java/</loc>
		<lastmod>2022-03-21T03:19:06+00:00</lastmod>
	</url>
	<url>
		<loc>https://alexkosarev.name/2022/12/08/distributed-identifiers/</loc>
		<lastmod>2022-12-08T05:58:07+00:00</lastmod>
	</url>
	<url>
		<loc>https://alexkosarev.name/2023/02/16/the-path/</loc>
		<lastmod>2023-02-21T18:48:14+00:00</lastmod>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2023/02/image-2023-01-31-09-30-46-319.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2023/02/image-2023-01-31-09-41-37-871.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2023/02/image-2023-02-01-09-57-29-402.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2023/02/image-2023-02-16-13-24-47-487.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2023/02/image-2023-02-16-13-25-17-685.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2023/02/image-2023-02-16-13-25-50-940.png</image:loc>
		</image:image>
	</url>
	<url>
		<loc>https://alexkosarev.name/2023/02/10/solid-in-details-srp/</loc>
		<lastmod>2023-02-24T06:23:28+00:00</lastmod>
	</url>
	<url>
		<loc>https://alexkosarev.name/2023/02/13/solid-in-details-ocp/</loc>
		<lastmod>2023-02-24T06:24:57+00:00</lastmod>
	</url>
	<url>
		<loc>https://alexkosarev.name/2023/01/12/spring-security-mask-csrf/</loc>
		<lastmod>2023-02-24T06:34:09+00:00</lastmod>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2023/01/spring_sec.png</image:loc>
		</image:image>
	</url>
	<url>
		<loc>https://alexkosarev.name/2022/12/22/tips-graalvm-native-image-jackson-deserialization/</loc>
		<lastmod>2023-02-24T06:41:20+00:00</lastmod>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2022/12/graalvm.png</image:loc>
		</image:image>
	</url>
	<url>
		<loc>https://alexkosarev.name/2022/12/08/spring-in-a-nutshell-rest-service-development/</loc>
		<lastmod>2023-02-24T06:43:14+00:00</lastmod>
	</url>
	<url>
		<loc>https://alexkosarev.name/2023/02/28/solid-in-details-srp-video/</loc>
		<lastmod>2023-02-28T10:16:07+00:00</lastmod>
	</url>
	<url>
		<loc>https://alexkosarev.name/2023/03/02/solid-in-details-ocp-video/</loc>
		<lastmod>2023-03-02T13:23:07+00:00</lastmod>
	</url>
	<url>
		<loc>https://alexkosarev.name/2023/03/14/adapter-design-pattern/</loc>
		<lastmod>2023-03-14T05:46:12+00:00</lastmod>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2023/03/adapter.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2023/03/class_adapter.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2023/03/object_adapter.png</image:loc>
		</image:image>
	</url>
	<url>
		<loc>https://alexkosarev.name/2023/03/20/decorator/</loc>
		<lastmod>2023-03-22T05:24:51+00:00</lastmod>
	</url>
	<url>
		<loc>https://alexkosarev.name/2023/03/23/dependency-injection-and-lookup/</loc>
		<lastmod>2023-03-23T04:04:23+00:00</lastmod>
	</url>
	<url>
		<loc>https://alexkosarev.name/2023/03/02/solid-in-details-lsp/</loc>
		<lastmod>2023-03-28T11:01:03+00:00</lastmod>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2023/03/20230302_lsp_violation.png</image:loc>
		</image:image>
	</url>
	<url>
		<loc>https://alexkosarev.name/2023/03/28/inversion-of-control/</loc>
		<lastmod>2023-04-08T04:32:41+00:00</lastmod>
	</url>
	<url>
		<loc>https://alexkosarev.name/2023/04/08/template-method/</loc>
		<lastmod>2023-04-08T04:44:26+00:00</lastmod>
	</url>
	<url>
		<loc>https://alexkosarev.name/2023/04/13/self-signed-certificates/</loc>
		<lastmod>2023-04-13T09:00:00+00:00</lastmod>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2023/04/image-2023-04-12-18-43-15-957.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2023/04/image-2023-04-12-18-48-46-529.png</image:loc>
		</image:image>
	</url>
	<url>
		<loc>https://alexkosarev.name/2023/05/23/solid-in-details-dip/</loc>
		<lastmod>2023-05-23T11:01:39+00:00</lastmod>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2023/05/without_dip.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2023/05/with_dip.png</image:loc>
		</image:image>
	</url>
	<url>
		<loc>https://alexkosarev.name/2023/05/27/deep-dive-into-spring-security-for-servlet-api-part-1/</loc>
		<lastmod>2023-05-27T11:40:52+00:00</lastmod>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2023/01/spring_sec.png</image:loc>
		</image:image>
	</url>
	<url>
		<loc>https://alexkosarev.name/2022/12/29/spring-in-a-nutshell-testing-rest-services/</loc>
		<lastmod>2023-05-27T11:50:42+00:00</lastmod>
	</url>
	<url>
		<loc>https://alexkosarev.name/2019/03/11/lambdas-in-java/</loc>
		<lastmod>2023-05-27T11:51:42+00:00</lastmod>
	</url>
	<url>
		<loc>https://alexkosarev.name/2023/06/03/authentication-entry-point-spring-security/</loc>
		<lastmod>2023-06-03T09:48:10+00:00</lastmod>
	</url>
	<url>
		<loc>https://alexkosarev.name/2023/06/02/debugging-spring-security/</loc>
		<lastmod>2023-06-03T09:49:37+00:00</lastmod>
	</url>
	<url>
		<loc>https://alexkosarev.name/2023/06/01/retrieving-auhenticated-user-in-spring-security/</loc>
		<lastmod>2023-06-03T09:49:44+00:00</lastmod>
	</url>
	<url>
		<loc>https://alexkosarev.name/2023/05/28/authentication-in-spring-security/</loc>
		<lastmod>2023-06-03T09:50:59+00:00</lastmod>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2023/05/authentication.png</image:loc>
		</image:image>
	</url>
	<url>
		<loc>https://alexkosarev.name/2023/05/31/basic-authentication-in-spring-security/</loc>
		<lastmod>2023-06-03T09:51:36+00:00</lastmod>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2023/05/basic_unauthorized.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2023/05/basic_success.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2023/05/basic_failure.png</image:loc>
		</image:image>
	</url>
	<url>
		<loc>https://alexkosarev.name/2023/06/05/docker-compose-and-testcontainers-in-spring-boot-3-1/</loc>
		<lastmod>2023-06-05T13:14:43+00:00</lastmod>
	</url>
	<url>
		<loc>https://alexkosarev.name/2018/07/03/practice-solid-srp/</loc>
		<lastmod>2023-07-01T11:24:57+00:00</lastmod>
	</url>
	<url>
		<loc>https://alexkosarev.name/2023/07/01/isp-solid-in-details/</loc>
		<lastmod>2023-07-01T14:15:09+00:00</lastmod>
	</url>
	<url>
		<loc>https://alexkosarev.name/2023/02/20/spring-jdbc-in-details-simplejdbcinsert/</loc>
		<lastmod>2023-07-14T10:35:39+00:00</lastmod>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2023/02/image-2023-02-20-09-57-12-982.png</image:loc>
		</image:image>
	</url>
	<url>
		<loc>https://alexkosarev.name/2023/07/15/spring-security-csrf/</loc>
		<lastmod>2023-07-15T12:13:06+00:00</lastmod>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2023/07/csrf-example.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2023/07/csrf.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2023/07/csrf-processing.png</image:loc>
		</image:image>
	</url>
	<url>
		<loc>https://alexkosarev.name/2023/08/07/jakarta-bean-validation-method-validation/</loc>
		<lastmod>2023-08-07T09:15:31+00:00</lastmod>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2023/07/bean_validation.svg</image:loc>
		</image:image>
	</url>
	<url>
		<loc>https://alexkosarev.name/2023/07/20/objects-validation-in-jakarta-bean-validation/</loc>
		<lastmod>2023-08-07T09:15:51+00:00</lastmod>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2023/07/bean_validation.svg</image:loc>
		</image:image>
	</url>
	<url>
		<loc>https://alexkosarev.name/2023/07/20/jakarta-bean-validation-3-0-intro/</loc>
		<lastmod>2023-08-07T09:16:21+00:00</lastmod>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2023/07/bean_validation.svg</image:loc>
		</image:image>
	</url>
	<url>
		<loc>https://alexkosarev.name/2018/07/30/bean-validation-api/</loc>
		<lastmod>2023-08-07T09:17:32+00:00</lastmod>
	</url>
	<url>
		<loc>https://alexkosarev.name/2023/10/26/spring-boot-maven-and-docker/</loc>
		<lastmod>2023-10-26T14:18:02+00:00</lastmod>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2023/10/containers.jpg</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2023/10/dependencies.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2023/10/fat-jar-internals.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2023/10/extracted-fat-jar.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2023/10/layers.png</image:loc>
		</image:image>
	</url>
	<url>
		<loc>https://alexkosarev.name/2024/03/28/about-sc24/</loc>
		<lastmod>2024-03-28T03:34:36+00:00</lastmod>
	</url>
	<url>
		<loc>https://alexkosarev.name/2024/04/10/sc24ep01/</loc>
		<lastmod>2024-04-10T07:32:00+00:00</lastmod>
	</url>
	<url>
		<loc>https://alexkosarev.name/2024/07/08/dependency-track-for-java/</loc>
		<lastmod>2024-07-08T12:07:10+00:00</lastmod>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2024/07/shield-data-protection-status-a-check-mark-on-the-shield-vector.jpg</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2024/07/dtrack_login.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2024/07/dtrack_change_password.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2024/07/dtrack_dashboard.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2024/07/dtrack_new_project.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2024/07/dtrack_project_details.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2024/07/dtrack_api_key.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2024/07/dtrack_dependencies.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2024/07/dtrack_vulnerabilities.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2024/07/dtrack_vulnerability_details.png</image:loc>
		</image:image>
	</url>
	<url>
		<loc>https://alexkosarev.name/2024/08/06/cross-origin-resource-sharing-cors/</loc>
		<lastmod>2024-08-06T09:55:45+00:00</lastmod>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2024/08/cors.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2024/08/cors_simple.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2024/08/cors_not_simple.png</image:loc>
		</image:image>
	</url>
	<url>
		<loc>https://alexkosarev.name/2024/08/06/cors-spring-web/</loc>
		<lastmod>2024-08-06T11:07:02+00:00</lastmod>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2019/01/spring.png</image:loc>
		</image:image>
	</url>
	<url>
		<loc>https://alexkosarev.name/2024/08/15/cors-spring-web-flux/</loc>
		<lastmod>2024-09-17T16:49:04+00:00</lastmod>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2019/01/spring.png</image:loc>
		</image:image>
	</url>
	<url>
		<loc>https://alexkosarev.name/2024/09/17/jvm-jre-jdk/</loc>
		<lastmod>2024-09-17T16:49:21+00:00</lastmod>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2019/03/Duke_Java_mascot_waving.svg</image:loc>
		</image:image>
	</url>
	<url>
		<loc>https://alexkosarev.name/2024/10/13/jdk-installation-in-windows/</loc>
		<lastmod>2024-10-13T06:11:04+00:00</lastmod>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2024/10/java_windows_s.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2024/10/azul_selectors.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2024/10/jdk_msi_01.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2024/10/jdk_msi_02.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2024/10/jdk_msi_result.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2024/10/winget_search.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2024/10/winget_install.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2024/10/winget_result.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2024/10/manual_system_props.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2024/10/manual_environment_variables.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2024/10/manual_edit_environment_variable.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2024/10/manual_add_path_environment_variable.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2024/10/manual_add_java_home.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2024/10/manual_result.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2024/10/jdk_msi_result-1.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2024/10/manual_java_home.png</image:loc>
		</image:image>
	</url>
	<url>
		<loc>https://alexkosarev.name/2024/10/22/redis-intro/</loc>
		<lastmod>2024-10-23T02:17:26+00:00</lastmod>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2024/10/redis_logo-1.png</image:loc>
		</image:image>
	</url>
	<url>
		<loc>https://alexkosarev.name/2024/10/25/about-mq/</loc>
		<lastmod>2024-10-25T08:32:50+00:00</lastmod>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2024/10/mq-message-queue-mq-1.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2024/10/mq_scheme.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2024/10/queue.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2024/10/mq.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2024/10/brokerless_first.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2024/10/brokerless_second.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2024/10/mqbroker.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2024/10/consumer-list-1.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2024/10/stream.png</image:loc>
		</image:image>
	</url>
	<url>
		<loc>https://alexkosarev.name/2024/10/31/kafka-intro/</loc>
		<lastmod>2024-10-31T13:57:14+00:00</lastmod>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2024/10/kafka.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2024/10/stream-1.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2024/10/topic_partitions_producers.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2024/10/topic_consumers.png</image:loc>
		</image:image>
	</url>
	<url>
		<loc>https://alexkosarev.name/2024/11/08/kafka-partitions-and-replicas/</loc>
		<lastmod>2024-11-08T14:00:21+00:00</lastmod>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2024/10/kafka.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2024/11/partition_distribution.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2024/11/keyless_partitions.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2024/11/keyed_partitions.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2024/11/partition_producers.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2024/11/group_single_consumer.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2024/11/multiple_consumers.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2024/11/excessive_consumer.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2024/11/multiple_groups.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2024/11/replication_factor.png</image:loc>
		</image:image>
	</url>
	<url>
		<loc>https://alexkosarev.name/2024/11/12/clustered-zookeeper/</loc>
		<lastmod>2024-11-12T07:17:02+00:00</lastmod>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2024/11/apache_zookeeper_logo_icon_169571.webp</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2024/11/zoo_commands.png</image:loc>
		</image:image>
	</url>
	<url>
		<loc>https://alexkosarev.name/2024/11/04/kafka-clustering/</loc>
		<lastmod>2024-11-12T12:14:52+00:00</lastmod>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2024/10/kafka.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2024/11/kafka_cluster_with_zookeeper.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2024/11/kafka_cluster_with_kraft.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2024/11/kafka_listeners.png</image:loc>
		</image:image>
	</url>
	<url>
		<loc>https://alexkosarev.name/2024/11/12/kafka-with-zookeeper/</loc>
		<lastmod>2024-11-12T12:17:39+00:00</lastmod>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2024/11/zookeeper-kafka.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2024/11/kafka_listeners.png</image:loc>
		</image:image>
	</url>
	<url>
		<loc>https://alexkosarev.name/2024/12/03/kafka-sending-messages/</loc>
		<lastmod>2024-12-03T08:21:42+00:00</lastmod>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2024/10/kafka.png</image:loc>
		</image:image>
	</url>
	<url>
		<loc>https://alexkosarev.name/2024/12/04/kafka-receiving-messages/</loc>
		<lastmod>2024-12-04T05:50:49+00:00</lastmod>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2024/10/kafka.png</image:loc>
		</image:image>
	</url>
	<url>
		<loc>https://alexkosarev.name/2025/04/28/java-virtual-threads/</loc>
		<lastmod>2025-04-28T11:49:53+00:00</lastmod>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2025/04/java_virtual_threads.png</image:loc>
		</image:image>
	</url>
	<url>
		<loc>https://alexkosarev.name/2026/07/09/jsr310-intro/</loc>
		<lastmod>2026-07-09T10:37:57+00:00</lastmod>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2026/07/a469b300-9af7-4688-b210-5e7a434e7b75.png</image:loc>
		</image:image>
	</url>
	<url>
		<loc>https://alexkosarev.name/2026/07/09/jsr-310-time-sources/</loc>
		<lastmod>2026-07-09T12:06:47+00:00</lastmod>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2026/07/a469b300-9af7-4688-b210-5e7a434e7b75.png</image:loc>
		</image:image>
	</url>
	<url>
		<loc>https://alexkosarev.name/2026/07/23/jsr-310-instant/</loc>
		<lastmod>2026-07-23T11:16:43+00:00</lastmod>
		<image:image>
			<image:loc>https://alexkosarev.name/wp-content/uploads/2026/07/a469b300-9af7-4688-b210-5e7a434e7b75.png</image:loc>
		</image:image>
	</url>
</urlset>
<!-- XML Sitemap generated by Yoast SEO -->