2016-11-15 09:49
@Dreamlu 在划分服务的时候保障一下不要跨数据源事务,每个小型服务通常使用一个数据源就好,多个服务再协同工作
2016-11-14 17:35
@欧阳小泽 在 SessionInViewInterceptor 的 intercept 方法中设置一个断点,单步调试一下,看下面这行代码有没有被执行即可:
c.setAttr("session", session);
2016-11-14 17:33
@幻城主 控制台没输出异常,先确保日志配置是否正确, log4j.properties 文件要放在正确的位置,并且配置要正确,相关的 jar 包要有
具体可以在 jfinal 社区首页下载 jfinal demo ,将里面的 log4j.properties 文件和 jar copy来出用
2016-11-14 16:05
@charlox 可以引入一个 MyModel 继承自 Model,覆盖掉其中的 getter 方法,转换一下,可以这样来:
getNumber(attr).intValue()
这样就可以将 BigDecimal 转成 Integer 了,实现了两种数据库的统一
然后通过继承 BaseModelGenerator,将 BaseModel从原来的继承 Model 转而继承 MyModel 就打完收工了
jfinal 2.3 会将 ModelBuilder、RecordBuilder 接取成抽象类并让 Dialect 持有它,那个时候就可以通过定制这两个实现类来实现更为方便的控制了
2016-11-13 16:05
@小木学堂 没错,不是什么产品都要追求那种超长时间占用,小而美也是一个很好的方向,如果小程序做得足够好,虽然占用的用户时长很短,但是互联网的好处就是不受时空所限,用户量也可以是海量的,商业价值也可以是巨大的
2016-11-13 14:37
amazon 的创始人贝索斯小时候的一个经历,造就了他提倡的“善良比聪明更重要”。张小龙上一次演讲提到,他很担心微心占用了大家很多的时间,这极大体现了他的“善良”之心,一般的做产品的人会与此相反,希望自己的产品能最大程度地占用用户的时间,造成的后果是将人们带入了更加碎片化的时代
时间的碎片化对用户来说是非常大的伤害,这个从我上个月停用微信朋友圈,删掉关注的公众号,删掉所有产生内容的 app 后所带来的价值飞越得到了极大的验证
而小程序就是这样的一个理念,平时不打扰用户,用户有需要的时候用完即走,既带来价值,又不对用户造成损害
所以 jfinal.com 社区,目前为止也没搞出什么特别打扰用户的功能,jfinal 希望静静的呆在这里,朋友们有空的时间自己来看看就好
2016-11-13 14:28
@netwild 下个月上 jfinal 2.3 ,确保四年冠,多多关注社区动态,感谢支持社区发展
2016-11-13 13:44
再针对后面具体的问题做个简要回答:
1:Json 无论是转换性能,还是传输体积都是很好的方案,类似于腾迅开放平台、微信公众号这类巨型系统,都是走的 json 以及 xml,不会有问题。json 转换使用 FastJson 确保高性能,阿里巴巴内部都用的这个东东
2:HttpClient 是一个比较老的项目,很久没有关注过它的性能了,可以尝试一些比较轻量级的新的 http 工具包,例如 okhttp,比较下性能,选择最好的
3:http 的开销比 socket 确实是大了点,不过好在开销的消耗集中在每次请求都有三次握手,所以,一定要注意要开启 http 的 keep alive,并用心跳请求保持住长连接,这样可以让 http 建立长连接,不用每次请求都再重新建立连接