2018-09-06 15:28
@Dull enjoy 中已经存在的 ClassPathSource 已经包含了你前面实现的 JarSource 功能,直接用就可以了,无需扩展
2018-09-06 15:24
@逗不逗 使用生成器来生成映射,自动化以后就不会出这类错误了,下载首页的 jfinal demo,其中有生成器的代码, copy 即用
2018-09-06 12:31
@Dull 用户自己的代码,如果 A 依赖 B , B 依赖 C , 如果这时 C 依赖于 A,就形成了间接循环依赖,对这类情况的 json 转换必然会造成无限循环,默认转换 30 层对于大部分情况是够用的
看来默认转换深度得再调整得大一点
2018-09-06 12:01
@Dull 何必那么麻烦,功能都在那呢,直接使用:
engine.getTemplate(new ClassPathSource(tplPath));
Engine 中的 getTemplate 重载了很多方便的方法,满足绝大部分需求,即便是不满足,也可以使用 getTemplate(ISource) 方法,这个方法中 ISource 可以让你扩展出从任意地方加载模板
enjoy 内部的 ClassPathSourceFactory、ClassPathSource 不仅仅是可以读取 jar 包内的模板,还同时可以读取 class path 下面的模板,所谓的 class path 下面的模板就是你的 JVM 启动时生效的 class path,通常是下面的这种路径:
WEB-INF/classes
target/classes
bin
总之这个 class path 是 JVM 启动时去找 class 文件的地方