根據資料庫中的出生年份計算年齡
阿新 • • 發佈:2019-02-14
在實際運用中我們會遇到在資料庫中加入使用者出生年份,而介面想要顯示年齡的需求。針對這個需求可以有多種實現方式,其中一個是在資料庫查詢語句中計算,如下:
select distinct u.*, CAST(DATE_FORMAT(NOW(),'%Y') AS UNSIGNED INTEGER)-u.BIRTH_YEAR AS BIRTH_AGE from user as u;
但這種方式不方便處是如果有多個查詢語句,就需要在每個查詢語句處修改,如果在實體UserVO中計算,就只需要在實體中新增方法,如下:
private Integer birthYear;//出生年份
public Integer getBirthYear() {
return birthYear;
}
public void setBirthYear(Integer birthYear) {
this.birthYear = birthYear;
}
public Integer getBirthAge() {
Calendar a=Calendar.getInstance();
int year1 = a.get(Calendar.YEAR);//得到年
Integer yy2 = null;
if (birthYear != null){
int year2 = this.birthYear.intValue();
int yy = year1-year2;
yy2 = new Integer(yy);
}
return yy2;
}