我通過連接兩個表來填充以下投影,它只回傳一條記錄:
public interface EmployeeProjection {
UUID getEmployeeUuid();
String getEmployeeName();
UUID getCompanyUuid();
String getCompanyName();
}
我想將這個單一的記錄EmployeeProjection型別回傳到我的二維碼,因此我想將此資料轉換為陣列或 JSON。那么,我該如何管理呢?
uj5u.com熱心網友回復:
您可以使用我推薦的 jackson API 來實作它。
EmployeeProjection obj = new EmployeeProjection();
StringWriter jsonString = new StringWriter();
ObjectMapper objectMapper = new ObjectMapper();
objectMapper.writeValue(jsonString, obj);
System.out.println("Employee JSON is: " jsonString);
這是輸出。
{"EmployeeUuid":"1","EmployeeName":"John" ... }
這是圖書館。
<!-- https://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-databind -->
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.13.0</version>
</dependency>
進一步的程序:
JsonFactory jsonFactory = new JsonFactory();
JsonParser jp = jsonFactory.createJsonParser(jsonString.toString());
jp.setCodec(new ObjectMapper());
JsonNode jsonNode = jp.readValueAsTree();
// loop through json node
Iterator<Map.Entry<String, JsonNode>> fields = jsonNode.fields();
while (fields.hasNext()) {
Map.Entry<String, JsonNode> entry = fields.next();
// Output key and text value
System.out.println(entry.getKey() " " entry.getValue().textValue());
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/384514.html
上一篇:SpringBoot2.6 集成-internalPublisherAnnotationBeanPostProcessor回圈依賴
