方式 一:Jackson
引入jackson-databind
:
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.11.3</version>
</dependency>
示例代碼:
// 交易日志
TransferLog transferLog = new TransferLog();
transferLog.setId("1");
transferLog.setTransferType(1);
transferLog.setTransferTime(new Date());
transferLog.setAmount(new BigDecimal("2310.00"));
// 將object轉成map
Map<String, Object> map = new ObjectMapper().convertValue(transferLog, Map.class);
// 轉出轉換結果
System.out.println("## 轉換結果 ##");
System.out.println(new Gson().toJson(map));
轉出結果:
## 轉換結果 ##
{"id":"1","amount":2310.00,"transferTime":1613616565389,"transferType":1}
方式二:Hutool
引入hutool:
<dependency>
<groupId>cn.hutool</groupId>
<artifactId>hutool-all</artifactId>
<version>5.4.1</version>
</dependency>
示例代碼:
// 交易日志
TransferLog transferLog = new TransferLog();
transferLog.setId("1");
transferLog.setTransferType(1);
transferLog.setTransferTime(new Date());
transferLog.setAmount(new BigDecimal("2310.00"));
// 方式二:hutool
Map<String, Object> hutoolMap = BeanUtil.beanToMap(transferLog);
// 轉出轉換結果
System.out.println("## 轉換結果 ##");
System.out.println(new Gson().toJson(hutoolMap));
轉出結果:
## 轉換結果 ##
{"id":"1","amount":2310.00,"transferTime":"Feb 18, 2021 2:01:01 PM","transferType":1}