В этой статье представлены Spring Boot и Kotlin, чтобы отображать представления веб -сайтов с использованием шаблон -двигателя Thymeleaf.
Статический доступ к ресурсам
Когда мы разрабатываем веб -приложения, нам нужно ссылаться на большое количество статических ресурсов, таких как JS, CSS и изображения. Как поддержать эти статические ресурсы, используя Spring Boot и Kotlin? , очень просто.
Конфигурация по умолчанию
Spring Boot предоставляет статические местоположения каталогов ресурсов по умолчанию и должны быть размещены в рамках ClassPath, а имя каталога должно соответствовать следующим правилам:
/static/public/resources/meta-inf/resources
Например: мы можем создать Static в SRC/Main/Resources/Directory и разместить файл изображения в этом месте. После начала программы попробуйте получить доступ к http: // localhost: 8080/ruby.jpg. Если изображение может отображаться, конфигурация будет успешной.
Рендеринг веб -страницы
Ранее запрос был обработан через @RestController, а возвращенный контент был объектом JSON. Если вам нужно отобразить HTML -страницу, как ее реализовать?
Шаблонный двигатель
Под шаблоном двигателя, рекомендованного Spring Boot, мы можем быстро начать разработку динамических веб -сайтов.
Spring Boot предоставляет шаблоны конфигурации по умолчанию со следующими основными типами:
Thymeleaffreemarkergrovymustache
Spring Boot рекомендует использовать эти шаблонные двигатели, чтобы избежать использования JSP. Если вам нужно использовать JSP, вы не сможете реализовать различные функции Spring Boot. Для получения подробной информации вы можете увидеть следующий текст: поддержка конфигурации JSP.
Когда вы используете любой из шаблонных двигателей выше, их путь настройки шаблона по умолчанию: SRC/Main/Resources/Stemplates. Конечно, этот путь также может быть изменен. Для получения подробной информации вы можете запросить и изменить его в свойствах конфигурации последующих шаблонных двигателей.
Тимелиф
Thymeleaf является шаблоном XML/XHTML/HTML5, который можно использовать для разработки приложений в средах веб-и не-WEB. Это библиотека Java с открытым исходным кодом, основанная на лицензии Apache License 2.0 и была создана Даниэлем Фернандесом, автором библиотеки шифрования Java Jasypt.
Thymeleaf предоставляет дополнительный модуль для интеграции Spring MVC. При разработке приложений вы можете использовать Thymeleaf для полной замены JSP или других шаблонных двигателей, таких как Freemarker и т. Д. Основной целью Thymeleaf является обеспечение хорошо сформированного метода создания шаблонов, который может быть правильно отображаться браузером, а также может использоваться в качестве статического моделирования. Вы можете использовать его для создания проверенных шаблонов XML и HTML. По сравнению с написанием логики или кода разработчикам просто нужно добавить атрибуты тега в шаблон. Затем эти свойства тега выполняют предварительно сформированную логику в DOM (модель объекта документа).
Пример шаблона:
<! Doctype html> <html xmlns: th = "http://www.w3.org/1999/xhtml"> <head lang = "en"> <meta charset = "utf-8"/> <title> Quanke.name </title> </Head> <body> <h1 th: nath wanke. World </h1> </body> </html>
Можно видеть, что Thymeleaf в основном добавляется в тег HTML в виде атрибутов. Когда браузер анализирует HTML, он будет игнорировать его, когда он проверит, что нет атрибута. Следовательно, шаблон Thymeleaf может быть непосредственно записан через браузер, который очень способствует разделению передних и задних концов.
Чтобы использовать Thymeleaf в Spring Boot, вам нужно только ввести следующие зависимости и написать файл шаблона по пути шаблона по умолчанию SRC/Main/Resources/Templates, чтобы завершить его.
Compile "org.springframework.boot: Spring-Boot-Starter-Thymeleaf: $ spring_boot_version"
После завершения конфигурации приведите простой пример, основанный на проекте Quick Start, приведите простой пример для отображения страницы через Thymeleaf.
Импорт org.springframework.steretype.controllerimport org.springframework.ui.modelmapimport org.springframework.web.bind.annotation.requestmapping/*** Создан http://quanke.name на 2018/1/10. */ @Controlerclass hellocontroller {@requestmapping ("/") Fun Index (map: modelmap): string {// Добавить атрибут в чтение map.addattribute ("host", "http://quanke.name") в шаблоне // Название файла return -returnmlate/indexm. "Индекс"}}По умолчанию добавьте файл index.html в каталоге SRC/Main/Resources/Templates.
<! Doctype html> <html xmlns: th = "http://www.w3.org/1999/xhtml"> <head lang = "en"> <meta charset = "utf-8"/> <title> Quanke.name </title> </Head> <body> <h1 th: nath wanke. World </h1> </body> </html>
Добавьте метод запуска Spring Boot, реализованный с использованием языка Kotlin:
Импорт org.springframework.boot.springapplicationImport org.springframework.boot.autoconfigure.springbootapplication/*** Создан http://quanke.name на 2018/1/1/9. */@SpringBootApplicationClass ApplicationFun Main (args: array <string>) {springApplication.run (application :: class.java, *args)}}Как показано на приведенной выше странице, вы можете напрямую открыть HTML -страницу для отображения Hello World, но после запуска программы посетите http: // localhost: 8080/, что показывает значение хоста в контроллере: http://quanke.name, которое достигает логического разделения данных, не разрушая собственное содержание HTML.
Чтобы получить больше синтаксиса страницы Thymeleaf, пожалуйста, посетите официальную документацию Thymeleaf для запроса.
Настройка параметров по умолчанию Thymeleaf
Если вам необходимо изменить конфигурацию по умолчанию, просто скопируйте атрибуты, которые вы хотите изменить ниже на Application.yml и изменить их на необходимое значение, например, изменение расширения файла шаблона, изменение пути шаблона по умолчанию и т. Д.
# Включить шаблон caching.spring.tymeleaf.cache = true # Проверьте, что местоположение шаблонов существует. Spring.ThyMeLeaf.Check-Template-Location = true # значение типа контента. Encoding.spring.tymeleaf.encoding = UTF-8 # COMPS-SPESTED Список имен представлений, которые должны быть исключены из Resolution.spring.tymeleaf.exclud-View-name = # режим шаблона, который будет применен к шаблонам. См. Также StandardTemplateModeHandlers.spring.ThymeLeaf.Mode = html5 # префикс, который готовятся к просмотру имена при построении url.spring.thymeleaf.prefix = classpath:/ templates/ # суффикс, который прилагается к просмотру именам при строительстве url.spring.thymelfix = .html. Spring.Thymeleaf.template-Resolver-order = # порядка резольвера шаблона в цепи. Spring.ThyMeleaf.View-Name = # Список имен просмотров, которые можно разрешить.
Проверьте окружающую среду или среду разработки, чтобы избежать неожиданных проблем. Общие настройки: spring.tymeleaf.cache = true
Поддержка конфигурации JSP
Spring Boot не рекомендуется, но если вы должны его использовать, вы можете назвать этот проект как строки: поддержка JSP
В целом, Котлин очень хорошо поддерживает Spring Boot. Вам нужно только использовать Spring Boot в Java и перевести его в Kotlin.
Суммировать
Выше приведено метод использования шаблон -двигателя Thymeleaf для отображения видов веб -сайта с помощью Spring Boot и Kotlin, введенного вам. Я надеюсь, что это будет полезно для вас. Если у вас есть какие -либо вопросы, пожалуйста, оставьте мне сообщение, и редактор ответит вам вовремя. Большое спасибо за вашу поддержку сайту wulin.com!