2020-11-27 14:47

@当下星辰 不是Tomcat部署,是什么容器运行的?

2020-11-27 14:45

Service并发?Service不要有全局业务成员变量就没有并发问题。如果一定要有成员变量参与代码执行的话,那就不要叫Service,改名为XXHandle或者其他的,每次使用时用new 一个新对象进行执行就可以。

可以再描述一下你的业务是要做什么,这样我们才好给更符合业务的建议

2020-11-27 14:28

是MySQL吗?JF没有做这个转换操作。 可以在源码中看到,只是:
Object value; value = rs.getObject(i); columns.put(labelNames[i], value);
没有null和“”的处理的。

可以先在Navicat等工具中执行 SQL ,看一下SQL的执行结果是什么样子。
或者在首页的demo下载运行跑个例子看看。

2020-11-27 14:12

不是Tomcat部署,是什么容器运行的?
https://my.oschina.net/jfinal/blog/353062

可能还是有加载项目两次导致的,
检查一下是不是每个任务器都是同时执行两次, 如果只有它一个,那就检查是不是有地方重复调用了。

如果实在找不到原因,可以先建立一个静态布尔变量,任务进入之后就标记true,任务结束再改为false,为true时就直接结束任务,临时顶一下

2020-11-27 14:03

生成器与 JavaBean
https://jfinal.com/doc/5-4

JBolt 插件下开发 各种生成
https://jfinal.com/doc/1-10

或者自己定制撸一个也非常方便
https://jfinal.com/doc/6-11

2020-11-27 09:23

和JF没啥关系,直接用就行。非要有个初始化地方的话,在 JFinalConfig 继承类中可以添加吧 https://jfinal.com/doc/2-8

https://help.aliyun.com/document_detail/106230.html?spm=a2c4g.11174283.6.608.10dd12f7Tblk7u#title-t1c-cpp-twq

2020-11-27 09:17

Caused by: java.lang.ClassNotFoundException: com.sun.jna.Library

2020-11-26 19:22

在java里面写代码,方法不静态情况下,也需要有地方创建对象实例化才能调用到啊。

再说模板为啥要调用Controller方法啊,业务方法应该抽取到 Service才合适,这样的话就能#(com.jfinal.MyKit::me).method(paras) 或者 #(com.org.Service::me).test()

如果是需要用到被请求的本Controller对象,可以在Action中用 set("this", this); 这样模板里面就可以 #(this.test()) 这样可以调用本类的方法。

2020-11-26 14:53

最新版JF吗?看代码是有忽略的.setHostnameVerifier(trustAnyHostnameVerifier)
贴个网址上来看看

2020-11-26 14:50

直接用,https://help.aliyun.com/document_detail/106230.html?spm=a2c4g.11174283.6.608.10dd12f7Tblk7u

2020-11-24 10:03

在 https://jfinal.com/my/message/friend/1 中查看订单编号, 波总上线后就给拉入群了

2020-11-24 09:59

没读过源码也没遇见过,是不是jar没有放全啊?

2020-11-23 17:50

如果不确定record里面字段的话,建议sql指明字段
String sql = "insert into user(name, cash) values(?, ?)";
int[] result = Db.use().batch(sql, "name, cash", list, 500);
这样子写比较方便。
PS一个小优化操作:http://www.jfinal.com/share/2300

2020-11-22 01:24

感觉不如改成:
Object o = ((Model)t).get(fieldName);来得方便

2020-11-22 01:18

回想了一下,Field确实不行,应该用Method才对,
getFieldValue方法改成getMethodValue (...){
return t.getClass().getMethod("get", String.class).invoke(t, fieldName);}