我是Spring,JPA和創建Web應用程序的新手,總體而言,我很困惑自己可能是一個簡單的問題。我正在努力創建一個跟蹤場地出席率的系統。我通過在樹莓派上實施計算機視覺算法來實現這一點,該算法與相機模塊相連。當一個人/人進入建築物時,他們被Pi識別,因此時間戳和剛剛進入/離開的人數被激發到服務器。以下是時間戳實體中涉及的字段。在Spring中單獨的JPA實體中計算和存儲總數
@Entity
public class Timestamp {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Integer id;
private DateTime timestamp;
@ManyToOne
@JoinColumn(name = "venue_id")
private Venue venue;
public Timestamp() {}
public Timestamp(DateTime timestamp) {
this.timestamp = timestamp;
}
private Integer peopleIn;
private Integer peopleOut;
目前爲止還不錯。我想使用highcharts庫來繪製信息,就像在這個例子中一樣http://jsfiddle.net/gh/get/jquery/1.9.1/highslide-software/highcharts.com/tree/master/samples/highcharts/demo/line-time-series/: 在x軸上我會有一個日期,而在y軸上,我會得到在這個門上走過的人的總數特定的一天。這是我的問題所在。爲了獲得每天的總人數,我必須將每個特定日期的所有peopleIn值相加,但是日期和總數是否應該存儲在單獨的JPA實體中?在Timestamp實體中使用totalPeople字段是沒有意義的,因爲我只想要每個單獨日的總數。 TLDR;我有時間戳和當時進入的人數,我如何讓Spring自動計算並存儲每天的總人數。謝謝!
不要改變模型以適應您的邏輯層要求。如果一個時間戳涉及到一定數量的人進入和其他人離開的特定時刻,那麼該實體應該正確地反映這一點。然後,爲了計算每天的金額,編寫一個SQL查詢或只加載與一個具體日期相關的所有時間戳並計算它。 –