aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--build.gradle.kts2
-rw-r--r--src/main/java/ru/mrfoxygmfr/warehouse_accounting/http/config/HttpConfig.java53
2 files changed, 55 insertions, 0 deletions
diff --git a/build.gradle.kts b/build.gradle.kts
index 8b71ebc..4db3c43 100644
--- a/build.gradle.kts
+++ b/build.gradle.kts
@@ -30,6 +30,8 @@ dependencies {
implementation("org.springframework.boot:spring-boot-starter-data-jpa")
implementation("org.springframework.boot:spring-boot-starter-actuator")
implementation("io.hypersistence:hypersistence-utils-hibernate-63:3.9.5")
+ implementation("org.thymeleaf:thymeleaf")
+ implementation("org.thymeleaf:thymeleaf-spring6")
compileOnly("org.projectlombok:lombok")
compileOnly("jakarta.persistence:jakarta.persistence-api")
diff --git a/src/main/java/ru/mrfoxygmfr/warehouse_accounting/http/config/HttpConfig.java b/src/main/java/ru/mrfoxygmfr/warehouse_accounting/http/config/HttpConfig.java
new file mode 100644
index 0000000..35e1ccd
--- /dev/null
+++ b/src/main/java/ru/mrfoxygmfr/warehouse_accounting/http/config/HttpConfig.java
@@ -0,0 +1,53 @@
+package ru.mrfoxygmfr.warehouse_accounting.http.config;
+
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.web.servlet.ViewResolver;
+import org.springframework.web.servlet.config.annotation.ViewControllerRegistry;
+import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
+import org.thymeleaf.spring6.SpringTemplateEngine;
+import org.thymeleaf.spring6.view.ThymeleafViewResolver;
+import org.thymeleaf.templateresolver.ClassLoaderTemplateResolver;
+
+@Configuration
+public class HttpConfig implements WebMvcConfigurer {
+
+ @Bean
+ public ClassLoaderTemplateResolver templateResolver() {
+
+ var templateResolver = new ClassLoaderTemplateResolver();
+
+ templateResolver.setPrefix("templates/");
+ templateResolver.setCacheable(false);
+ templateResolver.setSuffix(".html");
+ templateResolver.setTemplateMode("HTML");
+ templateResolver.setCharacterEncoding("UTF-8");
+
+ return templateResolver;
+ }
+
+ @Bean
+ public SpringTemplateEngine templateEngine() {
+
+ var templateEngine = new SpringTemplateEngine();
+ templateEngine.setTemplateResolver(templateResolver());
+
+ return templateEngine;
+ }
+
+ @Bean
+ public ViewResolver viewResolver() {
+
+ var viewResolver = new ThymeleafViewResolver();
+
+ viewResolver.setTemplateEngine(templateEngine());
+ viewResolver.setCharacterEncoding("UTF-8");
+
+ return viewResolver;
+ }
+
+ @Override
+ public void addViewControllers(ViewControllerRegistry registry) {
+ registry.addViewController("/").setViewName("operations");
+ }
+}