2018-05-28 11:32

@JFinal 好的,没问题

2018-05-28 10:32

@JFinal 您客气了,希望能帮到jfinal更好的发展。

2018-05-27 15:27

已经分享过去 https://gitee.com/snakes/jfinal_fk ,初步已经实现,如果jfinal考虑b合并的话,还需要 一些整合部分代码。

2018-05-27 13:47

已经写好了,我怎么发给您? 邮箱么?

2018-05-26 17:48

@JFinal 对,我知道,我的意思是自动生成,在modelgenerator.java 运行的时候,配置一些外键和 关系,然后自动生成这样的代码,是否值得? 如果值得,我可以写这部分

2017-06-24 10:29

@JFinal 简易却不简单,您的jfinal实在太棒了!

2017-06-24 10:22

jfianl 2.x 版本的改动方法:

@Override //覆盖同名方法
public class JFinalNewJson extends JFinalJson {
protected String toKeyValue(String key, Object value, StringBuilder sb, int depth){
sb.append('\"');
if(key == null)
sb.append("null");
else
escape(key, sb);
sb.append('\"').append(':');

sb.append(toJson(value, depth));
//基类方法return toString()导致性能问题
return null;
}
}



然后在 Config.java

@Override
public void configConstant(Constants me) {
//切入进去用JFinalNewJson 处理
JsonManager.me().setDefaultJsonFactory( new IJsonFactory() {
@Override
public Json getJson() {
return new JFinalNewJson();
}
});
}

2017-06-24 10:11

动手测试了一下

StringBuilder sb = new StringBuilder();
long t = System.currentTimeMillis();
for (int i = 0; i < 1000000; i++) {
sb.append(i);
}
long t2 = System.currentTimeMillis();
String s = sb.toString();
System.out.println("time:" + (t2 - t) );

1百万次 耗时40ms



StringBuilder sb = new StringBuilder();
long t = System.currentTimeMillis();
for (int i = 0; i < 1000000; i++) {
sb.append(i);
sb.toString(); //多加了这句代码
}
long t2 = System.currentTimeMillis();
String s = sb.toString();
System.out.println("time:" + (t2 - t) );

1百万次 耗时无法忍受,关掉了。
10万次 耗时:4758

因此把这句代码改为 return null; 无论从内存消耗,还是大量压力访问,JFinal的json性能肯定杠杠的!