Я пытаюсь получить доступ к моим статическим ресурсам на моем HTML, используя следующий код:Статические ресурсы с использованием Spring и Thymeleaf
<link th:href="@{css/main.css}" rel="stylesheet" type="text/css" />
Но только работает, когда я ставлю @{static/css/main.css}
. Я знаю, что когда вы устанавливаете папку ресурсов, вам не нужно устанавливать статическую папку каждый раз при вызове статического файла.
Моя структура папок:
/webapp
=== /static
==========/css
==========/js
=== /WEB-INF
==========/views
Установка на весну Mvc конфиги:
....
@EnableWebMvc
public class WebMvcConfig extends WebMvcConfigurerAdapter implements ApplicationContextAware {
private ApplicationContext applicationContext;
@Bean
public ViewResolver viewResolver() {
ThymeleafViewResolver resolver = new ThymeleafViewResolver();
resolver.setTemplateEngine(templateEngine());
resolver.setCharacterEncoding("UTF-8");
return resolver;
}
private TemplateEngine templateEngine() {
SpringTemplateEngine engine = new SpringTemplateEngine();
engine.setTemplateResolver(templateResolver());
return engine;
}
private ITemplateResolver templateResolver() {
SpringResourceTemplateResolver resolver = new SpringResourceTemplateResolver();
resolver.setApplicationContext(applicationContext);
resolver.setPrefix("/WEB-INF/views/");
resolver.setSuffix(".html");
resolver.setCacheable(false); // On production , turn TRUE
resolver.setTemplateMode(TemplateMode.HTML);
return resolver;
}
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
registry.addResourceHandler("/static/**").addResourceLocations("/static/");
}
@Override
public void configureDefaultServletHandling(DefaultServletHandlerConfigurer configurer) {
configurer.enable();
}
Я использую Spring 4 и Thymeleaf 3 бета. Каждый файл css-js-image, который я использую, мне нужно написать «static» на пути. Этот код, который закодирован, не работает, чтобы не писать полный путь. Зачем?
Что мне нужно сделать, чтобы не установить «статическую» папку на мой HTML. Просто установите папку «css», а затем приложение знает, где находится «статическая» папка, находя эти папки? –
См. Обновление ... –
Я просто думал, что путь, которым я грустил, был правильным. Я хочу поместить ресурсы в папку webapps. Его также правильно установить файлы, используя путь с «статическим» каталогом? –