2023-06-04 23:01

@JFinal 还得是老大搭的架子美啊,想要个啥功能,JF里面淘一下改薄改薄比市面的还好用

2023-05-24 13:07

个人认为不如直接使用MixedJsonFactory 性能更高,配置一下就可以了:
public void configConstant(Constants me) {
me.setJsonFactory(new MixedJsonFactory());
}
官方提供了 MixedJson、MixedJsonFactory 实现,这个实现让转 json string 时使用 JFinalJson,反向转成对象则使用 FastJson。
https://jfinal.com/doc/12-2

必须Fast转字符串的话就继承FastJsonFactory和FastJson改一下返回值:
return JSON.toJSONString(object) 改为 :
return JSON.toJSONString(r, SerializerFeature.WriteMapNullValue);
就可以了

2023-05-17 17:46

@zzutligang 本来也不是BUG,原因是代理软件给JF的数据就是HTTP协议,那JF自然返回给它HTTP协议的连接。JF4.9.1是加入了判断header参数X-Forwarded-Proto的,这个得代理软件设置该参数,比如NGINX可以配置proxy_set_header 。花生壳应该是不支持配置该参数。如果代理软件配置不了参数,那就把参数配置到JF项目里了,我们以前的老项目都是写配置文件里面的

2023-05-17 14:55

可以再装一个NGINX,配置加上:
#JFinal nginx 代理 https 的场景,需要使用如下配置:
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Forwarded-Port $server_port;
这样就变成了 花生壳》NGINX 》JF

或者修改项目,重定向url 前面加一个配置项:https://+ 域名 + url

或重写RedirectRender使其读配置文件判断是否加上面内容

2023-05-12 18:15

不划算,JF的Model并不是传统的JavaBean,手动编写getXXX、setXXX方法极不方便。Model没有成员变量属性,所以也用不上IDEA的属性生成get/set,而且就算反射拿到setXXX方法获取其参数类型,比如String类型,那也不知道应该设置多长varchar还是text还是其他。所以工具作用不大。
目前了解到的一个场景就是,老项目Model有生成setXXX方法,但是丢失数据库结构了,需要找回数据库表的时候,可以利用反射Model生成建表SQL,约定Java类型对应的数据库字段类型,建表后再微调数据库。。。但是感觉不如重新做一个各个框架都可以用上最新的了

2023-04-26 16:15

@陈伟 看需求combobox的选定值 ,是否需要后台存储,还是前端零时使用。
需要后端存储交互的话,就是把选定值提交了,其他地方用的时候Java取。
如果只是前端当前页临时使用的话,那JS是最便捷的,不妨先从“喜欢”前端开始:)很有意思的

2023-04-26 14:59

@陈伟 不如说说业务需求,上面没法解决,你思路是错的。根据业务我看能给你推荐一种实现方案不

2023-04-26 14:46

??? JF的Enjoy模板引擎是在后端Java里面执行的。
你这是JS代码在前端浏览器里面执行的。
两个东西了。。。概念逻辑一定要清晰,实在记不住区分不清的话,JS代码规定只在JS文件里面写就没事了

2023-04-26 12:42

指令没有返回值,如果需要里面的运算结果值,我一般搭配#set 指令使用。
就是:
#define fnX()
#set(x = 123)
#end
#@fnX() #(x) 《外面直接用约定的键名调用

2023-04-23 15:00

@dkmilk 开始也是明文+HTTPS,奇安信扫描后说要加密,又用对称加密了。后面他们又找到前端存储的那个秘钥了。。。得~ 又改成非对称了。。。

2023-04-20 19:16

https://jfinal.com/share/2649

2023-04-20 18:53

我们项目有类似的需求,模板存在数据库的,租户可定制内容。使用的自定义ISource,稍后我分享出来