2017-03-16 10:35

这是分享哈,贴子应该发到分享频道,感谢你的分享,赞一个 ^_^

2017-03-16 10:34

@小飞象 搞生态在计划之中,当前还有些事没做完,资源也不够,搞生态是需要花钱的

2017-03-16 10:33

将 getFiles("upload"); 改为 getFiles(); 然后再确保一下当前运行的 JVM 在 linux 下对 /share/upload/ 有写权限

总之,在 linux 下面一定要确定对文件和目录是否有读写权限,如果没有,可以用一下 chmod 来改下权限,或者以 root 身份运行 JVM

2017-03-15 20:21

用客户端连下数据库,看速度如何

2017-03-15 17:01

@HotDoor 记得搞定后来分享频道发个贴分享下啊

2017-03-15 17:00

@HotDoor 做一个 BaseController, 在其中实现一个 getModels() 功能来支持这个功能,方便重用

2017-03-15 16:59

@wyntergreg 可以试一试通过扩展 ISerializer ,并在这个扩展类中啥也不干来实现你想要的:是否可以把序列化改成可配置参数 这个功能

由于 redis 只支持 String 与 byte[] 这两种类型,而 java 类型是无限多的,例如 User 就是个类型,所以只有做序列化才可以存放无限种类的 java 对象进去,因此不做序列化的方案不好做

你可以试着做一下,记得搞定后再回来在分享频道发贴啊

2017-03-15 16:01

@HotDoor 让 modelName 带上一个下标,然后后端用一个 for 循环配合 getModel处理一下,例如:
input name="user_0"
input name="user_1"

for (int i=0; i < size; i++) {
user = getModel(User.class, "user_" + i);
list.add(user);
}

2017-03-15 15:39

@HotDoor 让多个对象使用不同的 modelName 前缀,然后通过调用不同的 getModel 来获取,例如:
User user = getModel(User.class);
Account account = getModel(Account.class);

2017-03-15 15:38

@伊森 单步调试跟踪到更深的地方,如 MultipartRquest 之中,这里才是 path 拼接的最终地方,baseUploadPath 是在启动时候会拼接的,也可以调试一下

2017-03-15 15:37

NFS 具体是啥? Network File System 吗? 做这些是与 jfinal 无关的,直接做就行

2017-03-15 15:35

@wyntergreg 取用的时候,仍然用 jfinal 提供的 api 就可以了。如果你用别的工具取用,也只需要用同样的反向序列化算法就可以

你试着扩展一下 ISerializer 这个扩口来改变一下序列化算法,其中官方给出了两个实现类,一个是 fst 实现,一个是 jdk 实现,或许 jdk 实现就可以,你通过下面的代码切换一下:
redisPlugin.setSerializer(new JdkSerializer())

2017-03-15 14:52

不是加了前缀,是存之前先将数据做了序列化转换,再存进去,序列化转换操作时会添加额外的数据进行类型的标注

2017-03-15 13:59

@伊森 看看你的 baseUploadPath 是什么值,设置一个断点在 getFile 上,单步调试到底层 jfinal 源代码,瞬间就知道了