【发布时间】:2019-02-25 01:21:24
【问题描述】:
假设我有一个名为 Employee 的 postgres 表,其中包含以下列:
- 身份证
- 名字
- 姓氏
- 就业
- 日期
- 经理
- 部门
我有兴趣拥有一个 REST 端点,这样/employee/{ID} 将以 JSON 格式返回该特定员工的所有信息,但如果我指定 /employee/{ID}/FirstName,那么它将仅以 JSON 格式返回特定员工的名字,@ 987654323@ 将以 JSON 格式返回员工的姓氏,依此类推。有没有一种很好的方法来实现这一点,而不是实现一个端点来访问每一列?谢谢。
【问题讨论】:
-
你不能用一个端点来做吗,即。
/employee/{id}/{attribute}并将attribute映射到列名? -
我相信这是我正在寻找的解决方案。但这是否也意味着在我的端点函数中我必须有一个映射函数从属性中检索列?我想我的主要问题是,现在数据库中有 7 列,我可以按照您提到的那样定义它,但是如果将来添加第 8 列,我们是否可以创建端点现在这样我们就不必在添加新列时更改代码了?
-
当我在端点中使用
{attribute}时,它是一个通配符——通常使用PathVariable(或等效项)实现。确保您用于 REST / MVC 的任何库都支持这一点。如果是这样,那么您将需要编写映射。如果您添加新列,映射将需要更改,但您的端点不会。 -
谢谢 我相信“如果添加新列,映射将需要更改”是我真正想要验证的内容。