2015-10-17 3 views
1

Я пытаюсь использовать Thymeleaf в сети, в которой я играю, и, похоже, не может показаться, что я обдумываю конфигурацию/настройку.Конфигурация Thymeleaf и Spring4

Раньше я использовал веб-папку для хранения активов и jsp/html и т. Д., Но теперь это кажется излишним, поскольку папка представлений переместилась на ресурсы. Это точно?

Моя структура выглядит следующим образом:

src-main-java-various controllers/models etc 
src-main-resources-Meta-inf - persistence.xml 
src-main-resources-spring-config.xml 
src-main-resources-views-test.html etc etc 
src-main-webapp-assets-css - now in the wrong place? 
src-main-webapp-WEB-INF-html/jsp = now irrelevant? 

Извинение, если это похоже на немой вопрос, я не могу найти достойный учебник, который не имеет противоречивую информации в нем.

Я в основном пытаюсь создать простое веб-приложение, использующее лист тимьяна вместо jsp-файлов. Любые указатели в правильном направлении получают благодарность.

До сих пор у меня есть ConfigClass, содержащий

@Bean 
    public ViewResolver viewResolver() { 
     ClassLoaderTemplateResolver templateResolver = new ClassLoaderTemplateResolver(); 
     templateResolver.setTemplateMode("XHTML"); 
     templateResolver.setPrefix("views/"); 
     templateResolver.setSuffix(".html"); 
     SpringTemplateEngine engine = new SpringTemplateEngine(); 
     engine.setTemplateResolver(templateResolver); 

     ThymeleafViewResolver viewResolver = new ThymeleafViewResolver(); 
     viewResolver.setTemplateEngine(engine); 
     return viewResolver; 
    } 

, который, как представляется, ключевым за всем, но, как это из учебника я не уверен, что это хорошо/плохо/неправильно/плохая практика и т.д. ,

ответ

0

Попробуйте Spring Boot, который также заботится обо всех конфигурациях по умолчанию и их зависимостях.

Spring Boot Начало работы здесь, чтобы использовать Thymeleaf добавить ниже зависимость в пом файла

<dependency> 
    <groupId>org.springframework.boot</groupId> 
    <artifactId>spring-boot-starter-thymeleaf</artifactId> 
</dependency> 

Spring Загрузочный конфигурирует остальное все.

После того, как вы с ним знакомы вы можете переопределить настройки по умолчанию

1

HTML-файлы я обычно положить в папке ресурсов предназначены для шаблонов электронных писем - это не мнения вашего веб-приложения. Просмотры должен оставаться под webapp/WEB-INF папкой.

Для загрузки изображений с webapp/WEB-INFServletContext, так же как и любые обычные приложения SpringMVC) используйте ServletContextTemplateResolver. ClassLoaderTemplateResolver используется, если ваши шаблоны находятся в пути к классам (например, шаблоны электронной почты).

Вот мое производство конфигурации

@Bean 
public ViewResolver viewResolver() { 
    ServletContextTemplateResolver templateResolver = new ServletContextTemplateResolver(); 
    templateResolver.setTemplateMode("HTML5"); 
    templateResolver.setPrefix("/WEB-INF/html/"); 
    templateResolver.setSuffix(".html"); 
    SpringTemplateEngine engine = new SpringTemplateEngine(); 
    engine.setTemplateResolver(templateResolver); 

    ThymeleafViewResolver viewResolver = new ThymeleafViewResolver(); 
    viewResolver.setTemplateEngine(engine); 
    return viewResolver; 
} 

Мой каталог

src-main-java --> Java classes (Spring controllers, etc.) 
src-main-resources --> xml configs 
src-main-webapp-css --> CSS files 
src-main-webapp-js --> Javascript files 
src-main-webapp-WEB-INF-views --> HTML5 files 
Смежные вопросы