2017-05-21 16:31
@JFinal 你可以在配置文件中引入 baseUploadPath 与 baseDownloadPath,在开发时,将这两个配置指向项目根下面的某处,而在生产环境下改下配置,不要指向项目的根下面
2017-05-21 16:28
@netwild 你可以将 baseUploadPath 与 baseDownloadPath 设置为相同的目录,然后上传完成后,直接用 renderFiel(...) 就可以下载了
baseUploadPath 是 getFile(...)文件上传保存文件的基础路径,而 baseDownloadPath 是 renderFile(...) 文件下载时文件所在的基础路径
getFile(...) 与 renderFile(...) 这两个方法在调用的时候,还可以带上一个路径值,这个路径值是相对于 baseXxxxPath 的路径
总之,baseXxxPath 就是一个基础路径,上传与下载都是在这个基础路径之下去玩
2017-05-20 15:20
可以额外定义一个 annotation,然后在 AuthInterceptor 中读取出来,例如:
@Before(AuthInterceptor.class)
@Para(123)
public void index()
然后在 AuthInterceptor 中通过 inv.getMethod().getAnnotation().value() 获取到该值
通过常情况下并不需要上面的方法来传递,例如,通过 inv.getActionKey() 来获取当前 action 对应的值,这个值可以事先用 Map 映射好
还可以通过 inv.getController().getPara(...) 得到参数中的值来知道参数是什么。
如果参数是全局的,或者是 Routes 级的,还可以在配置拦截器的时候通过构造方法传进去:addInterceptor(new AuthInterceptor(123));
还有一种方式是,通过创建继承类 class MyAuthInterceptor extends AuthInterceptor,在这两个类的构造方法中指定不同的参数值
2017-05-20 15:13
@bu0.0gu 首先要确保 jfinal 版本为 3.1 或者 3.0,然后还要确保 ViewType 是否为 JFINAL_TEMPLAE
2017-05-19 10:28
@aloneJFinal 目前还没有用过 kotlin,暂时没有计划
此外,kotlin 不是直接与 java 打通的吗? 那么在 kotlin 下直接用 jfinal 不就可以了?