由于某客户经常有小项目抛来(主要是完成某CRM和某ERP 的数据交互),这种项目特别是字段需求变更超级频繁。借着这次项目和以前几个实战经验,特此苦心经营一周重构的项目终于快收尾了。以后再有类似项目88%工作就可以交给实施人员配置搞定。以下记录下几个坑。
一:jetty 报错 kotlin-stdlib META-INF/versions/9/module-info.class
解决: okhttp3 4.9.3 问题,版本降到4.8.1 解决
这是个上传文件遇到的问题,往CRM传文件我一开始用的apache HttpPost 捣鼓了很久也没搞定,后然反编译官方示范jar看到用了okhttp,然后碰到了这坑
二: jackson "data":{"fileId":2034923154165085} 后面解析为 {fileId=2034923154165085}
解决:使用阿里JSON搞定
这个问题预期很明确给我一个map,但是jackson-2.6.1 给我了一个string, 包括预期一个list<map> 也给我搞成 fileId=2034923154165085 这种形式,还丢失数据。看样子找机会要干掉jackson了。
另外记录下注意点
1. apache BeanUtils setProperty 和 copyProperty 的区别,setProperty对基础类型赋值null不会报错,而是会给一个类型默认值。(这问题有印象百度居然找不到区别,实验了特此记录下)