Hibernate date mapping
In this section, you will learn about date mapping in Hibernate.
Given below entity class Worker and date mapping is given below :
package net.roseindia;
import java.util.Date;
import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.OneToOne;
import javax.persistence.Table;
@Entity
@Table(name = "worker")
public class Worker {
@Id
@GeneratedValue
@Column(name = "worker_id")
private Long workerId;
@Column(name = "firstname")
private String firstname;
@Column(name = "lastname")
private String lastname;
@Column(name = "birth_date")
private Date birthDate;
@Column(name = "cell_phone")
private String cellphone;
public Worker() {
}
public Worker(String firstname, String lastname, Date birthdate,
String phone) {
this.firstname = firstname;
this.lastname = lastname;
this.birthDate = birthdate;
this.cellphone = phone;
}
public Long getWorkerId() {
return workerId;
}
public void setWorkerId(Long workerId) {
this.workerId = workerId;
}
public String getFirstname() {
return firstname;
}
public void setFirstname(String firstname) {
this.firstname = firstname;
}
public String getLastname() {
return lastname;
}
public void setLastname(String lastname) {
this.lastname = lastname;
}
public Date getBirthDate() {
return birthDate;
}
public void setBirthDate(Date birthDate) {
this.birthDate = birthDate;
}
public String getCellphone() {
return cellphone;
}
public void setCellphone(String cellphone) {
this.cellphone = cellphone;
}
public WorkerDetail getWorkerDetail() {
return workerDetail;
}
public void setWorkerDetail(WorkerDetail workerDetail) {
this.workerDetail = workerDetail;
}
}
As you can see in the above entity class, birthDate variable of Date type is mapped to birth_date field of table :
If you are using MySql database, you can set value to this Date variable as follows :
//For passing Date of birth as String
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Date dob=null;
try {
dob = sdf.parse("1987-05-21");
} catch (ParseException e) {
e.printStackTrace();
}
Worker worker = new Worker("Sushmita", "Dasgupta",dob,"919595959595");
session.save(worker);