java - 如何在 Java Spring 中将属性名称放入 JSON 中
问题描述
我已经可以在我的 java spring 代码中生成一个 JSON,如下所示:
[{"language":"33270100","value":100.0}]
但问题是我怎样才能像这样在我的 JSON 上放置一个标识符:
["Identifier":{"language":"33270100","value":100.0}]
下面是我在 java spring 中的代码,因为它可以在我将来在我的实验项目中编码时帮助我:
import javax.persistence.ColumnResult;
import javax.persistence.ConstructorResult;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.NamedNativeQueries;
import javax.persistence.NamedNativeQuery;
import javax.persistence.SqlResultSetMapping;
import com.fasterxml.jackson.annotation.JsonProperty;
@SqlResultSetMapping(name = "highAvailResult", classes = {
@ConstructorResult(targetClass = dashboard.atmandcam.model.HighAvailabilityCam.class, columns = {
@ColumnResult(name = "terminal_id", type = String.class),
@ColumnResult(name = "availability_percentage", type = Double.class)
})
})
@NamedNativeQueries({
@NamedNativeQuery(
name = "GetRangeHighAvail.getData",
query = "SELECT DISTINCT da.terminal_id, da.availability_date, da.availability_percentage\r\n" +
"FROM dashboard.availability da\r\n" +
"INNER JOIN dashboard.down_event de ON de.terminal_id = da.terminal_id\r\n" +
"WHERE da.availability_percentage >= 95\r\n" +
"AND da.availability_date BETWEEN ?1 AND ?2 \r\n" +
"AND da.terminal_id IN (SELECT terminal_id FROM dashboard.inventory WHERE machine_type = 'CAM')",
resultSetMapping = "highAvailResult"
),
@NamedNativeQuery(
name = "GetHighAvail.getData",
query = "SELECT DISTINCT da.terminal_id, da.availability_date, da.availability_percentage\r\n" +
"FROM dashboard.availability da\r\n" +
"INNER JOIN dashboard.down_event de ON de.terminal_id = da.terminal_id\r\n" +
"WHERE da.availability_percentage >= 95\r\n" +
"AND da.availability_date = ?1 \r\n" +
"AND da.terminal_id IN (SELECT terminal_id FROM dashboard.inventory WHERE machine_type = 'CAM')",
resultSetMapping = "highAvailResult"
)
})
@Entity
public class HighAvailabilityCam {
@Id
private Long id;
@JsonProperty("language")
private String terminalId;
@JsonProperty("value")
private double availabilityPercentage;
public HighAvailabilityCam(String termId, double availPercentage) {
super();
this.terminalId = termId;
this.availabilityPercentage = availPercentage;
}
public HighAvailabilityCam() { }
}
任何帮助将不胜感激。我还是 java spring 的新手,目前正在做我自己的项目。
解决方案
推荐阅读
- vba - 点击命令按钮(保存、打印或发送)时文本表单字段的不需要的重置
- titanium - 在本机应用程序中访问“Titanium.App.Properties”
- python - kivy - TypeError:描述符“属性”需要一个“kivy._event.EventDispatcher”对象,但收到一个“method_descriptor”
- c# - 如何在不更改/添加构造函数的情况下使用依赖注入
- html - 使框的大小与包装内容相同
- excel - Excel - 将 3 个 if 语句合二为一,每个语句都需要满足多个条件?
- jquery - 如何使用 replace() 在 Jquery 之前删除逗号和字符串?
- react-native - 使用 iOS Accessibility Inspector 检索到的 ReactNative 的 `accessibilityLabel` 和 iOS Label 是否相同?
- javascript - Javascript 库不适用于 React Native 发布版本
- postgresql - 如何选择不符合排除约束的行