Enjoy
Enjoy — это легковесный шаблонизатор на основе языка Java. Он весит всего 228 КБ и не зависит ни от каких сторонних библиотек. Его минималистичный дизайн включает всего семь основных команд: if, for, switch, set, define, include и render, что делает его изучение максимально простым. Enjoy использует уникальные алгоритмы DKFF (Dynamic Key Feature Forward) для лексического анализа и DLRD (Double Layer Recursive Descent) для синтаксического анализа, избегая необходимости в javacc, antlr или jflex генераторах кода.
Координаторы Maven
<dependency>
<groupId>com.jfinal</groupId>
<artifactId>enjoy</artifactId>
<version>5.2.2</version>
</dependency>
Основные характеристики Enjoy
Простой пример:
@Configuration
public class SpringBootConfig {
@Bean(name = "jfinalViewResolver")
public JFinalViewResolver getJFinalViewResolver() {
// Создание объекта ViewResolver для интеграции со Spring boot
JFinalViewResolver jfr = new JFinalViewResolver();
// Конфигурация для Spring boot
jfr.setSuffix(".html");
jfr.setContentType("text/html;charset=UTF-8");
jfr.setOrder(0);
// Получение объекта engine для конфигурации Enjoy шаблонизатора, аналогично предыдущей главе
Engine engine = JFinalViewResolver.engine;
// Настройка режима разработки для включения горячей перезагрузки конфигурации
engine.setDevMode(true);
// Использование ClassPathSourceFactory для загрузки шаблонов из class path и jar-файлов
engine.setToClassPathSourceFactory();
// При использовании ClassPathSourceFactory необходимо использовать setBaseTemplatePath
// вместо jfr.setPrefix("/view/")
engine.setBaseTemplatePath("/view/");
// Добавление шаблонных функций
engine.addSharedFunction("/common/_layout.html");
engine.addSharedFunction("/common/_paginate.html");
// Дополнительная конфигурация аналогична предыдущей главе
// engine.addDirective(...)
// engine.addSharedMethod(...);
return jfr;
}
}
<bean id="viewResolver" class="com.jfinal.template.ext.spring.JFinalViewResolver">
<!-- Режим горячей перезагрузки шаблонов -->
<property name="devMode" value="true" />
<!-- Конфигурация shared function, разделяется запятыми для нескольких файлов -->
<property name="sharedFunction" value="/view/_layout.html, /view/_paginate.html" />
<!-- Поддержка доступа к session через #(session.value) -->
<property name="sessionInView" value="true" />
<property name="prefix" value="/view/" />
<property name="suffix" value=".html" />
<property name="order" value="1" />
<property name="contentType" value="text/html; charset=utf-8" />
</bean>
Read me находится в процессе дополнения. Подробные инструкции доступны на официальном сайте: https://www.jfinal.com/doc/6-1.
Официальная документация JFinal Enjoy: https://www.jfinal.com/doc/6-1
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )