異常內容如下:
Caused by: org.springframework.data.mapping.PropertyReferenceException:
No property cpu found for FusionHost Did you mean 'ip?
我的pojo的字段:
@Column(name = "CPU_USAGE", length = 12)
private float cpu_usage;
排序的參數我傳的是cpu_usage,
經過百度瞭解到_是jpa的保留字段,這個問題的解決辦法有兩種:
1、修改自己的pojo的字段爲駝峯形式,排序字段參數修改爲cpuUsage,即可。
private Stirng cpuUsage;
2、pojo字段不變,排序字段的參數修改爲cpu__usage,採用雙下劃線的方式來抵消的jpa對_下劃線的處理。
個人建議:如果在項目初始幾點,修改字段對其他功能代碼影響較少,建議使用第一種方式,從根本上解決問題,如果工程體積比較大,牽一髮而動全身,那麼建議還是採用第二種方式處理。當遇到排序的時候,一定記得使用
str = str.replace("-","--");
特殊處理一下。