问题背景:
一个dubbo接口,返回值为一个排序的 List,为了排序方便,对List<model>中的model实体实现了comparable接口,重载了compare方法。在dubbo工程中跑单元测试一切正常
但是部署到注册中心后,在客户端调用该接口的结果却发现排序是无效的。
原因:dubbo接口的model实体,必须实现Serializable接口。如果再实现别的接口,则可能会导致无效。
解决方法:
去掉model实现的comparable接口, 改用 Collections.sort(list, new compatore{})这种方式实现
implements Comparable 这种方式本身也是不推荐的,这样就写死了,如果有的场景需要安装别的字段排序,就没法兼容了