2023-07-18 10:07
@北流家园网 普通JavaBean,没啥内容,就是固定了属性字段,因为Kv等类的属性是set进去的动态的,而返回结构第一级是固定格式,每次写比较麻烦。
2023-07-06 18:09
Enjoy 模板引擎专为 java 开发者打造,所以坚持两个核心设计理念:一是在模板中可以直接与 java 代码通畅地交互,二是尽可能沿用 java 语法规则,将学习成本降到极致。
因此,立即掌握 90% 的用法,只需要记住一句话:Enjoy 模板引擎表达式与 Java 是直接打通的。
这不是JF特色功能么? 只要不开放给前端无权限的自由填写就没问题了。
而且JF 5.0.2版本后,静态方法调用也改了:
Enjoy 模板引擎的静态方法调用与静态属性访问表达式默认值改为了 "不开启",如果用到这两类表达式,需要通过如下配置开启:
// 以下配置支持静态方法调用表达式:com.jfinal.kit.StrKit::isBlank('abc')
engine.setStaticMethodExpression(true);
// 以下配置支持静态属性访问表达式:com.jfinal.core.Constant::JFINAL_VERSION
engine.setStaticFieldExpression(true);
2023-06-28 14:28
@ipan 集群项目推荐直接使用j2cache这个开源中国红薯大佬的工具。该分享是刚工作时对老项目的微改造,并不通用
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-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是最便捷的,不妨先从“喜欢”前端开始:)很有意思的