net.sf.json.JSONObject轉為Bean時,Boolean型別轉換問題,待解決
阿新 • • 發佈:2019-01-08
java bean如下:
import java.util.Date; public class CmFinancingProductRatePeriod { private Long id; private Long productId; private String financeType; private Date startDate; private Date endDate; private Date interestDate; private Integer interestDays; private Boolean isAnnual; public Long getId() { return id; } public void setId(Long id) { this.id = id; } public Long getProductId() { return productId; } public void setProductId(Long productId) { this.productId = productId; } public String getFinanceType() { return financeType; } public void setFinanceType(String financeType) { this.financeType = financeType; } public Date getStartDate() { return startDate; } public void setStartDate(Date startDate) { this.startDate = startDate; } public Date getEndDate() { return endDate; } public void setEndDate(Date endDate) { this.endDate = endDate; } public Date getInterestDate() { return interestDate; } public void setInterestDate(Date interestDate) { this.interestDate = interestDate; } public Integer getInterestDays() { return interestDays; } public void setInterestDays(Integer interestDays) { this.interestDays = interestDays; } public Boolean getIsAnnual() { return isAnnual; } public void setIsAnnual(Boolean isAnnual) { this.isAnnual = isAnnual; } }
json字串如下:
rateCycle = [{edit:true,startDate:2018-05-01,endDate:2018-05-11,interestDate:2018-05-12,interestDays:11,isAnnual:1}, {edit:true,startDate:2018-05-12,endDate:2018-05-18,interestDate:2018-05-19,interestDays:7,isAnnual:0}, {edit:true,startDate:2018-05-19,endDate:2018-05-25,interestDate:2018-05-26,interestDays:7,isAnnual:1}, {edit:true,startDate:2018-05-26,endDate:2018-05-31,interestDate:2018-06-01,interestDays:6,isAnnual:0}]
轉換程式碼如下:
import net.sf.json.JSONArray;
JSONArray arr = JSONArray.fromObject(rateCycle);
@SuppressWarnings({ "deprecation", "unchecked" })
List<CmFinancingProductRatePeriod> ratePeriodList =
JSONArray.toList(arr, CmFinancingProductRatePeriod.class);
結果如下:
問題:
欄位isAnnual為0或者1時,轉化後均為false