解決java.sql.ResultSet的getDate獲取時間中時分秒爲0的問題

項目中用到了java.util.Date屬性的Model,但是在RowMapper中ResultSet獲取getDate時,時間的時分秒都爲0,爲了解決這個0的問題,

rs應該用getTimestamp()而不用getDate()即可。

如下所示:

1.領域類

public class StudySchedule {
private int id;
private long studyTime;//學習時間
private String courseName;//課程名
private String userId;//用戶登錄id
private int coursePage;//總頁數
private String courseView;//已學習頁數
private Date lastStudyTime;//最後學習時間
public Date getLastStudyTime() {
return lastStudyTime;
}
public void setLastStudyTime(Date lastStudyTime) {
this.lastStudyTime = lastStudyTime;
}

……

}

2.對應的RowMapper類

public class StudyScheduleRowMapper implements RowMapper<StudySchedule>{ 

public StudySchedule mapRow(ResultSet rs, int rowNum) throws SQLException {
StudySchedule schedule=new StudySchedule();
schedule.setId(rs.getInt("id"));
schedule.setCourseName(rs.getString("course_name"));
schedule.setStudyTime(rs.getLong("study_time"));
schedule.setUserId(rs.getString("user_id"));
schedule.setCoursePage(rs.getInt("course_page"));
schedule.setCourseView(rs.getString("course_view"));
schedule.setCourseId(rs.getInt("course_id"));

//這種方式獲取的時分秒是0
// schedule.setLastStudyTime(rs.getDate("last_study_time"));

//時間正常顯示
schedule.setLastStudyTime(rs.getTimestamp("last_study_time"));
return schedule;
}
}

OK!


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章