2018-03-27 16:46
@rirai 其实你要是真的把 spring 用起来,碰到的问题远远比你用 jfinal 要多得多
我用 spring 三年多时间,看过 spring 很多代码,对其十分了解
2018-03-27 16:25
集成 swagger 参考一下这两个贴子:
http://www.jfinal.com/share/347
http://www.jfinal.com/share/356
jfinal 一直专注于 MVC + ORM,你可以想象成是 spring mvc + hibernate/mybatis,一个框架自然会有自己的定位以及重点专注的目标
spring 由于历史悠久,再加上培训机构的推波助澜生态比较大,集成的周边很多。但缺点也会很明显:臃肿、学习成本高、代码量大、可控性差
可以试着读一下 Spring 源代码,光是使用 AbstractTemplateViewResolver 扩展出一个 view 来,里头有七层继承以及各种关联,是非常痛苦的一件事情
而 jfinal 扩展一个 view,只需要继承一下 Render,Render 就一层一看就明白怎么扩展
使用 Spring 基本上你只能将之当成黑盒子,老老实实地照着它的文档去使用,很难很费劲去了解它内部的工作方式,spring 太庞大了
此外,即便是 spring 的生态大,你在使用 Spring + swagger 等第三方的时候未必不会碰到问题
2018-03-26 15:19
@badouyuren 不是 jfinal 不支持,而是 jfinal 反射使用 java.util.LinkedHashMap$LinkedKeySet 这个内部类时 JDK 不允许,可能是有什么安全策略,具体还没研究过
用 java 代码调用 map.keySet() 是可以的,但是 enjoy 是先获取的 Method 对象,然后 method.invoke() 反射调用的这个 keySet() 方法,所以出了问题
这个问题归根结底是 JDK 不允许这么来调而引发的, enjoy 本身是支持这个功能的
另外,你还可以试试这个:
#for( x : map.entrySet())
#(x.getKey())
#(x.getValue())
#(x.key)
#(x.value)
#end
总之就是 Java 表达式规则
2018-03-26 14:10
@溪碧旗 先配置好日志,然后有异常会自然输出到控制台
下载首页的 jfinal demo,直接用上里头的 log4j 配置与 jar 包