1.r.61 发行注记
Jul 10, 2017 10:38:44 AM
作者:wendal
1.r.61 岗地苹果 发行注记(20170417)
恩,你比之前快了.
启动加速, 指Scans类的初始化过程,当项目里面有上百个jar的时候,老版本需3s,现在仅需50ms
运行加速, 指FastClass已经完全重写并默认启用,而且对使用者是透明的
乐观锁,由crskyp提供
来,体验一下飞一般的速度
在此感谢社区,QQ群里以各种方式贡献的童鞋,^_^,未能一一记录,深表歉意
JDK6的用户请使用 1.r.61.r2
主要变化:
- update: 重写了Scans类的初始化过程,性能提升50+倍
- update: 内置的asm升级到5.2.0,这次无删减了.
- update: 重写FastClass实现,非常接近原生的性能了.
- update: Mirror与FastClass的透明化融合
- update: 关于 org.nutz.resource.Scans 覆盖问题 issue_1227
- update: servlet api更新到3.1.0, 运行时继续兼容servlet api 2.5+
- fix: ViewProcessor的ViewModel参数判断问题 issue_1209
- fix: Http.getStatusText根本不工作
- fix: Module类没能继承父类的@At方法issue_1212
- fix: FilePostSender与golang服务器的兼容性问题 issue_1214
- fix: AbstractContext的putAll方法有bug issue_1221
- fix: Strings.isEmail()规则不完整 issue_1215
- fix: Lang.each方法与JDK8闭包的兼容性问题 issue_1228
- fix: 注入一个类型不合的对象到另外一个对象的属性时,报错信息让人迷惑 issue_1232
- fix: 腾讯云Mysql数据库被识别为DB2 issue_1210
- add: 乐观锁(dao.updateWithVersion)
- add: 增加 Http的Request HEAD方法的支持 issue_1206
- add: Http.upload上传文件,支持同一个参数含有多个文件 issue_1220
- add: 提供不需要@column的机制和驼峰式命名的全局开关 issue_1217
- add: JsonFormat支持支持粒度更小的空值控制,例如setNullStringAsEmtry issue_1225
- add: JsonFormat支持时区设置 issue_1208
- add: Cnd支持JDK序列化 issue_1207
- add: 新的Daos.queryCount方法
- add: Lang添加sha2系列快捷方法
- add: SimpleDataSource支持国产的博阳数据库
- add: Http.get支持参数map
- add: Tmpl类支持更多语法
- remove: LazyNutDao
- remove: httpdns 有更多更专业的库提供这个功能
部分新功能介绍
原Daos.queryCount(String)已废弃,替换为Daos.queryCount(Sql),该方法能适应更多场景.
Sql sql = Sqls.create(...);
// 原本
long count = Daos.queryCount(sql.toString());
// 现在
long count = Daos.queryCount(sql);
乐观锁及其底层方法
// 通过@Column(version=true)指定版本控制属性
dao.updateWithVersion(pet, null);
// 通过编码方式指定版本控制属性
dao.updateAndIncrIfMatch(pet, null, "version");
fetchByJoin/queryByJoin 一条SQL取出@One关联对象
platoon = dao.fetchByJoin(Platoon.class, null, "wendal");
文档更新
- nutzwx 的入门文档
- nutzmongo 的入门文档
- 各种小修改,继续整理,准备全面转markdown
详细列表:
- issue@github
欢迎访问官网 及 Nutz社区,以获取更多信息
Nutz社区已经累计了近4000个帖子, 20000+条回复,平均回复时间少于10分钟哦,白天基本上秒回!
本页面的文字允许在知识共享 署名-相同方式共享 3.0协议和GNU自由文档许可证下修改和再使用。