我的应用程序是基于一些api,它有多个版本。例如
- v1: User (name: String,姓:String)
- v2: User (name: String,姓:String, middleName: String)有没有比为每个版本创建另一个POJO类和创建另一组控制器,服务等更好的解决方案?
谁能给我提示一下我应该找什么?
在我看来,最好的方法是拥有一个版本化的上下文路径。类似于以下端点:
- 域/v1/…
- 域/v2/…
这意味着您将至少有2个不同的控制器(每个版本一个)和2个不同的模型。在未来的某个时候,如果你想坚持使用其中一个,而你的消费者已经迁移到另一个,你可以简单地放弃其中一个。
如果模型v1和v2之间的差异很大,这是正确的。如果它们不是那么多,或者不是那么复杂,你可能想看看JSON视图。