0
在spring rest应用程序上下文中,我试图创建一个通用的响应bean。Rest rest bean extends Map
目的是避免为每种方法创建特定的bean。
我想通过将各种属性绑定到地图来使用标准字段,例如状态和消息。
请看下面的例子:
public class ResponseRestDefault extends HashMap {
private String status;
private String message;
public ResponseRestDefault() {
}
public void addParam(String key, String value) {
this.put(key, value);
}
public String getStatus() {
return status;
}
public void setStatus(String status) {
this.status = status;
}
public String getMessage() {
return message;
}
public void setMessage(String message) {
this.message = message;
}
}
使用
@RequestMapping(value = "response", method = RequestMethod.GET)
public ResponseEntity<ResponseRestDefault> response() {
ResponseRestDefault response = new ResponseRestDefault();
response.setStatus("success");
response.setMessage("ok");
response.addParam("test", "value");
return ResponseEntity.ok(response);
}
JSON结果:
{
"test": "value"
}
是否JSON结果可能包含地图领域和类的属性?
目前还不清楚你问 – efekctive
它是通过忽略你的领域,因为容器只检查,如果这是一个HashMap,如果是迭代键/值对。如果你想要一个通用的响应,使它非常简单。也许字符串 – efekctive
它是有道理的..也许我会用一个作文。 –