2017-01-05 14:16

使用这一行代码:queryNumber(...).intValue() 就可以统一了,或者 queryNumber(...).longValue()

2017-01-05 14:15

单独使用AR 在手册中有详细的例子,在首页下载 jfinal 手册一看就明白。关系只需要调用 druidPlugin.stop() 即可,在哪关闭,要看你什么时候想回收资源,在你想回收这个资源的时空关闭

2017-01-05 14:14

扩展一下 ISerializer 接口,参考 FstSerializer 这个实现类不去做序列化,然后 redisPlugin.setSerializer(...) 就好

2017-01-04 11:42

@super超 可以对 RedisPlugin 做些自行扩展,都是开源的东西,扩展起来很方便

2017-01-04 11:39

自行获取 Jedis 对象,注意一下资源的回收问题,可以看看 Cache 类里面是如何回收 jedis 对象资源的,照此办理就好

2017-01-04 11:38

对 Jedis 有些了解是最好的,因为 jfinal 的 redis plugin 是对 Jedis 这个工具的二次封装,可以通过 cache.getJedis() 直接获取到 Jedis 对象,这样就能直接绕过 jfinal 去使用更加底层的 Jedis 了

2017-01-04 11:24

@super超 通过这种方式解决后,有多少数据库,只需要通过 Redis.use(...) 切换过去就好,非常方便,当然这个 Redis.use(...) 方法并不仅仅是用来切换数据库,还可以事先指向另一台 redis 服务器,这样就可以切换到不同的服务端

2017-01-04 11:20

再提醒一下,获取 incr incrBy decr decrBy 设置的数据,需要使用 getCounter(key) 方法,而不能使用 get(key) 方法

2017-01-04 11:19

创建另一个,指向 database 2
RedisPlugin rp = new RedisPlugin("db2", ip, 8888, 30, pass, 2);
me.add(rp)

然后用的时候 Redis.use("db2").get(...) 不要使用 select(2) 来切换数据库,这个 select 方法是需要配合 Redis.call(...) 来使用的

2017-01-04 11:10

为 database 0 以外的数据库再创建别一个 RedisPlugin 对象,使用 Redis.use(...) 的方式切换过去再调用其方法: Redis.use(otherDb).get(...)

注意:指定 database 创建 RedisPlugin 有相应的构造方法可以使用,注意看一下

2017-01-04 10:55

简单说上传就用 getFile() 下载就用 renderFile(),例子的话,在 oschina 上搜索一下相关项目:http://git.oschina.net/search?search=jfinal&type=project&condition=forks_count

2017-01-03 17:23

@java小王 删除与修改都是用的 Db.update(...) 方法

2017-01-03 15:45

@leejanfin 还没有发布,再等几天

2017-01-03 15:32

做一个 MyInterceptor extends I18nInterceptor扩展一下,然后将 inv.inovke() 这行代码往前移动,放在 switchView 操作前面去就可以了。这是个 bug,新版本已修复该问题,多多关注社区动态,近期的新版本已经搞定

2017-01-03 15:31

在多数情况下,findAll() 这种方式不是 jfinal 提倡使用的 api,jfinal 提倡 select 具体的字段,可以养成更好的习惯,而且无条件查询表中所有数据的情况并不是经常发生,即便有这种需求,也可以通过 find("select * from t") 来实现,这种实现方式不仅代码量并没有提升,而且开发者自己明确自己是否真的需要无条件 select * 查询当前表中所有数据

而对于 findFrist(searchEntity) ,jfinal 并不是很容易地确定该怎么去利用 searchEntity 中的查询条件,例如:是利用其中的所有条件? 还是利用部分条件? 是某个条件用 and 还是某些条件用 or 和 not?还是用 not exists 和 in?

查询条件的多少与利用方式是一个极其个性化、业务化的事情,如果 jfinal 去插手这个事情,事情可能变得更糟糕,并且更加复杂。所以对于这个问题,jfinal 是开放 String sql 与 Object... sql,这两个参数来让用户自由去发挥,无招往往才是最好的招

当然,为了方便用户更加方便和灵活的定制 sql,目前的 jfinal 版本还做得不够,这正是即将推出的 jfinal 新版本要做的事情,多多关注社区动态,近期发布新版本