| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970 |
- package space.anyi.config;
- import org.springframework.context.annotation.Bean;
- import org.springframework.context.annotation.ComponentScan;
- import org.springframework.context.annotation.Configuration;
- import org.springframework.web.servlet.config.annotation.EnableWebMvc;
- import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
- import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
- import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
- import org.thymeleaf.spring5.SpringTemplateEngine;
- import org.thymeleaf.spring5.templateresolver.SpringResourceTemplateResolver;
- import org.thymeleaf.spring5.view.ThymeleafViewResolver;
- import org.thymeleaf.templatemode.TemplateMode;
- /**
- * @fileName: SpringMvcConfig
- * @projectName: SSM_template
- * @package: space.anyi.config
- * @author: 杨逸
- * @date:2026/4/24 14:02
- * @description: SpringMvc配置类替代spring-mvc.xml
- */
- @Configuration
- @ComponentScan(basePackages = {"space.anyi.controller"}) // 扫描Controller
- @EnableWebMvc // 启用Spring MVC注解
- public class SpringMvcConfig implements WebMvcConfigurer {
- // 配置视图解析器
- @Bean
- public ThymeleafViewResolver thymeleafViewResolver(SpringTemplateEngine templateEngine){
- ThymeleafViewResolver viewResolver = new ThymeleafViewResolver();
- viewResolver.setTemplateEngine(templateEngine);
- viewResolver.setCharacterEncoding("UTF-8");
- viewResolver.setCache(false);
- return viewResolver;
- }
- //模板引擎
- @Bean
- public SpringTemplateEngine templateEngine(SpringResourceTemplateResolver templateResolver) {
- SpringTemplateEngine templateEngine = new SpringTemplateEngine();
- templateEngine.setTemplateResolver(templateResolver);
- templateEngine.setEnableSpringELCompiler(true);
- return templateEngine;
- }
- //模板解析器
- @Bean
- public SpringResourceTemplateResolver templateResolver() {
- SpringResourceTemplateResolver templateResolver = new SpringResourceTemplateResolver();
- templateResolver.setPrefix("classpath:/templates/");
- templateResolver.setSuffix(".html");
- templateResolver.setTemplateMode(TemplateMode.HTML5);
- templateResolver.setCharacterEncoding("UTF-8");
- templateResolver.setCacheable(false);
- return templateResolver;
- }
- // 配置静态资源处理
- @Override
- public void addResourceHandlers(ResourceHandlerRegistry registry) {
- registry.addResourceHandler("/static/**")
- .addResourceLocations("/static/");
- }
- // 配置拦截器(可选)
- @Override
- public void addInterceptors(InterceptorRegistry registry) {
- //registry.addInterceptor(new LoginInterceptor())
- // .addPathPatterns("/**")
- // .excludePathPatterns("/login", "/register");
- }
- }
|