2020-09-05 19:20
@__ 你的表达式是每 5 分钟调度一次,应该是可以的,如果不行,改成下面的试试:
0-59/5 * * * *
也就是说,将第一个 * 号改成指定确切的时间范围
文档中有如下说明:
常见错误:cron4j在表达式中使用除号指定增加幅度时与linux稍有不同。例如在linux中表达式 10/3 * * * * 的含义是从第10分钟开始,每隔三分钟调度一次,而在cron4j中需要使用 10-59/3 * * * * 来表达。避免这个常见错误的技巧是:当需要使用除号指定增加幅度时,始终指定其范围。
基于上面的技巧,每隔2分钟调度一次的表达式为:0-59/2 * * * * 或者 */2 * * * * , 而不能是0/2 * * * *
2020-09-02 17:20
@Code_Cat 多数 json 转换工具是根据 getter 方法来转换的
你手头的 Record 中的 getter 方法就是那些: getColumns()、getColumnNames()、getColumnValues()
你可以调用 getColumns() 拿到 Map 来转换
也可以用一下 jfinal 中的 JFinalJson.getJson().toJson(...);
2020-09-01 11:19
@北流家园网 MixedJsonFactory 需要使用高版本的 jfinal 才能配置让 datePattern 生效,你用的哪个版本
2020-08-26 22:55
这个办法极好,点赞 + 收藏
前不久 @eova 作者也提出过要添加这个支持,我正考虑要添加到 jfinal 新版本中去:
https://blog.csdn.net/wodeyuer125/article/details/50502914
原因是windows内核集成了gui,而linux上没有启动x server
解决办法:
1.启动x server
2.在java运行参数上加-Djava.awt.headless=true
用tomcat 和 Undertow 都可能遇到这个问题, 尤其是 Centos 7
就是不知道开启这个配置有没有啥副作用:
System.setProperty("java.awt.headless","true");
2020-08-24 21:11
@fmpoffice 同一台服务器用 nginx 支持更方便, undertow 走另外的端口即可
2020-08-23 15:44
先创建如下函数,可以将表单数据转成 json 字符串
function formToJsonString(formId) {
var paramArray = $('#' + formId).serializeArray();
// 表单参数转 json 对象
var jsonObj = {};
$(paramArray).each(function() {
jsonObj[this.name] = this.value;
});
// json 对象转 json 字符串
return JSON.stringify(jsonObj);
}
然后用如下函数发送 json 字符串到后端:
$.ajax({
type: "post",
url: "http://localhost/action",
contentType: 'application/json; charset=UTF-8', // 关键参数
dataType: 'json',
data: formToJsonString("表单id"),
success: function(ret) {
}
});
注意,关键参数是 contentType: 'application/json; charset=UTF-8'
将所有数据以 string 格式发送到后端以后,再用如下代码转成 json :
String jsonStr = getRawData();
Map map = FastJson.getJson().parse(jsonStr, Map.class);
转成 map 以后,再转成各种 jave bean 就方便多了,并且 fastjson 也有比较智能的方法转为更符合你要求的类型,这个你看一下 fastjson 的 parse 方法