2018-05-16 18:01

异常已经很明显 oracle.jdbc.driver.OracleDriver is deprecated.

这个驱动已经不建议使用,换一个即可

2018-05-16 18:00

batch(String sql, Object[][] paras, int batchSize) 这类方法是使用一条 sql ,批量插入 n 条数据,那么你的 paras 要可以满足 sql 的需求才行

例如 sql 中用到的参数个数,paras 要的数量要正确,是不是允许为 null 值等问题要处理好

此外,通过你的异常来看,是主键重复了

jfinal 的这个 batch 方法仅仅是将你的 sql + paras 直接扔给了 JDBC,自身并没有干预过这个过程,确保 sql 与 paras 是正确就好

2018-05-16 17:57

@Maxwoo 取决于你用什么客户端,例如可以用 httpclient、OKHttp 这样的第三方客户端来发数据就要以

如果你是用浏览器里头的 javascript 发的 ajax 请求就不可以,因为这个本质上不是 body 中存数据,仍然是 key=value 型数据

这个问题本质上与 jfinal 无关,完全是你客户端发送的方式,换用 OkHttp 试一下即可

2018-05-16 17:41

这个分享填补了 ErrorRender 扩展的空白,点赞、收藏

2018-05-16 12:18

@tom_b 开源放 gitee.com 或者 github.com 才最好

2018-05-16 11:13

@潇洒太爷 期待开源,感谢你的分享

2018-05-16 11:13

项目开源不?

2018-05-16 11:10

考虑开源不? 好东西要分享啊

2018-05-15 19:51

@或是的话 眼尖啊,就是这里出错了

2018-05-15 19:13

@dengfeng 先注掉 handler与 interceptor 试一下可不可以

2018-05-15 18:25

@dengfeng clean 一下项目,然后勾选 eclipse 的自动编译,重启一下 ecilpse 看看

2018-05-15 18:14

估计是某个未知的小细节没做到位,所以查不到数据,例如权限不对,例如没有数据,再例如 jdbcUrl 配置错误连到了别的数据库等等,总之要单步调试来解决问题

2018-05-15 18:12

jfinal 仅仅只是将你的 sql 与参数直接扔给了 JDBC 去查询数据库,只要 JDBC 支持你现在这个 sql + 参数,那 jfinal 就一定支持

建议你单步调试一下看是什么原因,或者直接用 JDBC 连数据库,手动操作一下,看有没有结果,操作方式大至如下:
Connection conn = DbKit.getConfig("jdbc").getConnection();
PreparedStatement pst = conn.prepareStatement(sql);
pst.setObject(1, item);
ResultSet rs = pst.executeQuery();
然后迭代从 rs 中读取结果

2018-05-15 17:47

@dengfeng action 带参需要配置一个参数,这个在文档中介绍得很清楚:
http://www.jfinal.com/doc/3-3

2018-05-15 17:46

将 druidPlugin.setFilters("stat,wall"); 这句也改成 addFilter(new WallFilter()) addFilter(new StatFilter()) 的风格即可

因为你的 druidPlugin.setFilters("stat,wall"); 会冲掉前面的 addFilter