2016-11-17 12:06
你刚刚发的这篇贴子,贴的这张截图就是用的 jfinal 之下的 ueditor,这个问题本质上来说与 jfinal 毫无关系,只需要完全按照料 ueditor 的官方文档进行配置即可:http://fex.baidu.com/ueditor/#server-deploy , 尤其要注意一下 "后端配置说明"
当然,既然你问到这个问题,我再告诉你一种完全不需要 ueditor 所提供的 controller.js 与相关 jar 包的集成方式:
1:创建一个 FileUploadController,配置路由为 "/common/upload"
2:在 FileUploadController 中创建一个 public void index() 方法,添加如下几行代码:
public void index() {
if ("config".equals(getPara("action"))) {
// 这里千万注意 "config.json" 文件前方的目录一定要正确
render("/assets/ueditor/jsp/config.json");
return;
}
// "upfile" 来自 config.json 中的 imageFieldName 配置项
UpoadFile uf = getFile("upfile");
}
3:将 ueditor.config.js 这个配置文件中原来的
serverUrl: URL + "jsp/controller.jsp" 改为如下配置:
serverUrl: "/common/upload"
也就是配置成指向前面建立的 FileUploadController 的 index() 方法路由,相当于让 FileUploadController.index() 来接管 ueditor 原来用 controller.jsp 处理上传请求的功能
4:经过这种改造后,jfinal 接管了文件上传请求,配置文件"ueditor/jsp/config.json"中的 "imageFieldName" 后面的配置可以用于 getFile(...) 的参数,当然你也可以不用这个参数,直接用不带参的 getFile() 来获取上传文件
此法可以不需要引入 ueditor 要求的那几个与文件上传有前端的 jar 包,记得搞定后回社区分享频道分享出来,有很多朋友需要
2016-11-17 09:58
@cknote 关键要先定位错误,将日志配置好,那么在启动的时候日志里面会有异常信息,根据这些异常信很快就可以解决
此外,tomcat 安装目下的 "logs" 目录下的 catalina.out 文件也会有一些非常重要的异常信息,要解决问题必须定位问题
2016-11-16 16:11
@l745230 配置好日志,异常堆栈信天然就会被写入日志,注意不要让自己的 try catch 吃掉异常,这样 jfinal 就管不到你的异常了
2016-11-16 10:46
生成器是根据 JDBC 反射结果来生成的字段类型,而 sqlite3 驱动对于 int 型返回的却是 string。可以通过继承 BaseModelGenerator 对这类字段进行强制处理,生成器完全面向扩展设计,就是为了解决这些不符合 JDBC 规范的意外情况
此外,这个问题已做了备忘,jfinal 2.3 会处理一下 sqlite 3 的问题
最后,注册是为了对 jfinal 以及社区发展情况有更好的了解,以便于将项目和社区做得更加完善。开源软件的作者花费了无数的时间和心血做项目并分享出来,如果使用者连去填写两个字段并点击注册按钮的心都没有,一般有两个原因:一是这类人毫无感恩回馈之心,二是并不是 jfinal 的真正用户
2016-11-15 17:09
@美兰湖 如果用到了 jfinal 的 activerecord 注意用一下 Db.batch(...) 方法,这样插入数据会快很多
2016-11-15 16:41
@白菜先生 这个功能不仅在 jfinal 第一版就有了,而且并不是采用 LAST_INTER_ID(),也不是采用发送两次请求,而是用的 JDBC 提供的专门用于在 insert 的同时即可立即获取自增主键的一个参数得到的,是最优方案
2016-11-15 16:39
@白菜先生 这个功能在 jfinal 0.1 版本的时候就有了,直接这样用:
1:user.save();
2:int id = user.getId()
如果没有生成 getter 方法的话这样用:
int id = user.getInt("id")