2019-04-30 15:55

PS:建库 一定要记得使用 管理员(有权限的)比如root , 阿里云等云数据库是 不给这个账户的, 你得申请为 超级管理员账户,才能好使

2019-04-30 15:41

我有几个项目就是用的动态建库以及更新数据库, 因为是传统项目改造过去的。 所以一个客户就是一个数据库。这样就产生了很多数据库, 数据库结构都一样。 升级功能和维护表结构的时候, 就需要同步处理所有的库。 手动处理是不能的。就是利用 Db.use(xx).update去执行各种sql, 增删改查。
如果项目是 Db + Record 的话, ActiveRecordPlugin 启动后,是不用管的,是天然动态的。
如果是Model的话,ActiveRecordPlugin 需要重启的,先关闭再开启一下就可以了, 或者代码处理一下 Mapping 那个管理类,详细去看源码,不多,加起来只有几百行

2019-04-20 12:33

赞,利用Enjoy 的Shared Method 扩展或者 Shared Object扩展 ,把 jfinal的 Db工具类 放入Enjoy对象 就能支持直接写SQL了

2019-04-20 12:27

看来楼主已经找到方法了。
Handler可以接管所有web请求, 在handle方法里 改变 target 参数,将其变为一个参数传递到后面的handle, https://www.jfinal.com/doc/2-7

2019-04-15 20:29

aiXcoder已经渗透很广泛了啊, 我在Cloud Studio上是1月多开始用的,现在应该更牛逼了, 更新一下再试试!
https://studio.dev.tencent.com/plugins/detail/937
image.png

2019-04-12 13:45

点赞 + 收藏

2019-04-12 10:21

@zhbs_钟楠 换个PDF文件试试, 有拦截器做了文件类型验证?

2019-04-11 22:06

BeanUtils.copyProperties 这个工具类,我没用过, 不过Model有更快速的拷贝方式 _setAttrs 等系列方法

2019-04-11 22:03

手册:https://www.jfinal.com/doc/12-1
代码 贴的太少, 没法看,
先检查这里有配置其他的JsonFactory没
public void configConstant(Constants me) {
me.setJsonFactory(xxx);
}

再检查对象是否有值,比如提前打印看看
LogKit.info( JsonKit.toJson(claimTKInfo) );
renderJson(claimTKInfo);

2019-04-11 21:51

@zhbs_钟楠 这个异常我没见过, 不过可以给几个点,去排查:
https://www.jfinal.com/doc/3-7
3.7 getFile文件上传
Controller提供了getFile系列方法支持文件上传。

特别注意:如果客户端请求为multipart request(form表单使用了enctype="multipart/form-data"),那么必须先调用getFile系列方法才能使getPara系列方法正常工作,因为multipart request需要通过getFile系列方法解析请求体中的数据,包括参数。同样的道理在Interceptor、Validator中也需要先调用getFile。

文件默认上传至项目根路径下的upload子路径之下,该路径称为文件上传基础路径。可以在 JFinalConfig.configConstant(Constants me)方法中通过me.setBaseUploadPath(baseUploadPath) 设置文件上传基础路径,该路径参数接受以”/”打头或者以windows磁盘盘符打头的绝对路径,即可将基础路径指向项目根径之外,方便单机多实例部署。当该路径参数设置为相对路径时,则是以项目根为基础的相对路径。

还有常见错误的是没有 导入 jar包

2019-04-11 16:48

这样的话, User user = getBean(User .class,"");
service里用新建对象 new User()._setAttrs(user).remove(xxxx)或者keep保留些参数

2019-04-11 16:40

@mrbai2018 如果要用Db Record 等JF的工具类的话, 就需要启动了, 如果有启动 JF 的JFinalConfig 得话,就不用手动去调了

2019-04-11 16:24

Model.put() 方法是不会更新 到数据库的。
Model.set() 的字段会被标记,跟新时会写入数据库