| 限定符和类型 | 方法和说明 |
|---|---|
static Engine |
ElKit.getEngine() |
| 限定符和类型 | 方法和说明 |
|---|---|
Engine |
ActiveRecordPlugin.getEngine() |
| 限定符和类型 | 字段和说明 |
|---|---|
protected Engine |
MappingKitGenerator.engine |
protected Engine |
ModelGenerator.engine |
protected Engine |
BaseModelGenerator.engine |
| 限定符和类型 | 方法和说明 |
|---|---|
Engine |
SqlKit.getEngine() |
| 限定符和类型 | 方法和说明 |
|---|---|
Engine |
Engine.addDirective(String directiveName,
Class<? extends Directive> directiveClass)
添加自定义指令,keepLineBlank 使用默认值
|
Engine |
Engine.addDirective(String directiveName,
Class<? extends Directive> directiveClass,
boolean keepLineBlank)
添加自定义指令
建议添加自定义指令时明确指定 keepLineBlank 变量值,其规则如下:
1:keepLineBlank 为 true 时, 该指令所在行的前后空白字符以及末尾字符 '\n' 将会被保留
一般用于具有输出值的指令,例如 #date、#para 等指令
2:keepLineBlank 为 false 时,该指令所在行的前后空白字符以及末尾字符 '\n' 将会被删除
一般用于没有输出值的指令,例如 #for、#if、#else、#end 这种性质的指令
示例:
addDirective("now", NowDirective.class, true)
|
Engine |
Engine.addEnum(Class<? extends Enum<?>> enumClass) |
Engine |
Engine.addSharedFunction(ISource source)
Add shared function by ISource
|
Engine |
Engine.addSharedFunction(String... fileNames)
Add shared function by files
|
Engine |
Engine.addSharedFunction(String fileName)
Add shared function by file
|
Engine |
Engine.addSharedFunctionByString(String content)
Add shared function by string content
|
Engine |
Engine.addSharedMethod(Class<?> sharedMethodFromClass)
Add shared method from class
|
Engine |
Engine.addSharedMethod(Object sharedMethodFromObject)
Add shared method from object
|
Engine |
Engine.addSharedObject(String name,
Object object)
Add shared object
|
Engine |
Engine.addSharedStaticMethod(Class<?> sharedStaticMethodFromClass)
Add shared static method of Class
|
static Engine |
Engine.create(String engineName)
Create engine with engine name managed by JFinal
|
static Engine |
Engine.remove(String engineName)
Remove engine with engine name managed by JFinal
|
Engine |
Engine.removeDirective(String directiveName)
Remove directive
|
Engine |
Engine.removeSharedMethod(Class<?> clazz)
Remove shared Method of the Class
|
Engine |
Engine.removeSharedMethod(Method method)
Remove shared Method
|
Engine |
Engine.removeSharedMethod(String methodName)
Remove shared Method by method name
|
Engine |
Engine.removeSharedObject(String name) |
Engine |
Engine.setBaseTemplatePath(String baseTemplatePath) |
Engine |
Engine.setCacheStringTemplate(boolean cacheStringTemplate)
方法获取的模板,默认配置为 false
|
Engine |
Engine.setCompressor(Compressor compressor)
配置 Compressor 可对模板中的静态内容进行压缩
可通过该方法配置自定义的 Compressor 来代替系统默认实现,例如:
engine.setCompressor(new MyCompressor());
|
Engine |
Engine.setCompressorOn()
设置开启压缩功能。
|
Engine |
Engine.setCompressorOn(char separator)
两种配置的压缩率是完全一样的
|
Engine |
Engine.setDatePattern(String datePattern) |
Engine |
Engine.setDevMode(boolean devMode)
设置 true 为开发模式,支持模板文件热加载
设置 false 为生产模式,不支持模板文件热加载,以达到更高的性能
|
Engine |
Engine.setEncoderFactory(EncoderFactory encoderFactory)
Enjoy 模板引擎对 UTF-8 的 encoding 做过性能优化,某些罕见字符
无法被编码,可以配置为 JdkEncoderFactory 解决问题:
engine.setEncoderFactory(new JdkEncoderFactory());
|
Engine |
Engine.setEncoding(String encoding) |
Engine |
Engine.setOutputDirectiveFactory(OutputDirectiveFactory outputDirectiveFactory)
Set output directive factory
|
Engine |
Engine.setReloadModifiedSharedFunctionInDevMode(boolean reloadModifiedSharedFunctionInDevMode)
Engine 独立设置为 devMode 可以方便模板文件在修改后立即生效,
但如果在 devMode 之下并不希望对 addSharedFunction(...),
添加的模板进行是否被修改的检测可以通过此方法设置 false 参进去
注意:Engine 在生产环境下(devMode 为 false),该参数无效
|
Engine |
Engine.setSourceFactory(ISourceFactory sourceFactory)
设置 ISourceFactory 用于为 engine 切换不同的 ISource 实现类
ISource 用于从不同的来源加载模板内容
配置为 ClassPathSourceFactory 时特别注意:
由于 JFinal 会在 configEngine(Engine me) 方法调用 “之前”,会默认调用一次如下方法:
me.setBaseTemplatePath(PathKit.getWebRootPath())
而 ClassPathSourceFactory 在以上默认值下不能工作,所以需要通过如下方式清掉该值:
me.setBaseTemplatePath(null)
或者配置具体要用的 baseTemplatePath 值,例如:
me.setBaseTemplatePath("view");
|
Engine |
Engine.setToClassPathSourceFactory()
设置为 ClassPathSourceFactory 的快捷方法
|
Engine |
Engine.setToJdkEncoderFactory()
配置为 JdkEncoderFactory,支持 utf8mb4,支持 emoji 表情字符,
支持各种罕见字符编码
|
Engine |
Engine.setWriterBufferSize(int bufferSize) |
static Engine |
Engine.use()
Using the main Engine
|
static Engine |
Engine.use(String engineName)
Using the engine with engine name
|
| 限定符和类型 | 方法和说明 |
|---|---|
static void |
Engine.setMainEngine(Engine engine)
Set main engine
|
| 限定符和类型 | 字段和说明 |
|---|---|
static Engine |
JFinalViewResolver.engine |
| 限定符和类型 | 方法和说明 |
|---|---|
Engine |
JFinalViewResolver.getEngine() |
Copyright © 2022. All rights reserved.