As discussed in the Preface, the developer will be dealing with objects at every step of development. Also, when we use hibernate, we don't need to work on a core SQL query. Here, we will create a POJO (Plain Old Java Object) in Java, which represents a table in the database.
By POJO, we mean that we will create a Java class that satisfies the following requirements:
id
attribute. ID is used to identify the object and is mapped with the primary column of a table.Getter
and Setter
methods, such as getXXX
and setXXX
where xxx
is a field name.We will now create a persistent class and name it Employee
. The following table shows a representation of the Employee
class:
Employee |
---|
|
|
|
Employee.java
class and place the following code in the class:public class Employee{ private long id; private String firstName; private double salary; // other fields // default constructor public Employee() { } public long getId() { return id; } public void setId(long id) { this.id = id; } public String getFirstName() { return firstName; } public void setFirstName(String firstName) { this.firstName = firstName; } public double getSalary() { return salary; } public void setSalary(double salary) { this.salary = salary; } // // Getter and setter for other fields... // }
Now the preceding class satisfies all the requirements listed before to be a persistent class.
The preceding class now contains the following:
Employee()
constructorid
attribute, which is the primary column of the table and can be used to uniquely identify an entryid
, firstName
, and salary
)Now, let's see how to design a POJO for tables having references between the Department
and Employee
tables:
The following code is the definition for the Department
class in Department.java
:
public class Department{ private long id; private String deptName; //default constructor public void Department(){ } //getters and setters public long getId() { return id; } public void setId(long id) { this.id = id; } public String getDeptName() { return deptName; } public void setDeptName(String deptName) { this.deptName = deptName; } }
The following code is the definition for the Employee
class in Employee.java
:
public class Employee{
private long id;
private String firstName;
private double salary;
private Department department; // reference to Department.
//default constructor
public void Employee(){
}
//getters and setters
public long getId() {
return id;
}
public void setId(long id) {
this.id = id;
}
public String getFirstName() {
return firstName;
}
public void setFirstName(String firstName) {
this.firstName = firstName;
}
public double getSalary() {
return salary;
}
public void setSalary(double salary) {
this.salary = salary;
}
public Department getDepartment(){
return department;
}
public setDepartment(Department department){
this.department = department;
}
}
Downloading the example code
You can download the example code files for all Packt books you have purchased from your account at http://www.packtpub.com. If you purchased this book elsewhere, you can visit http://www.packtpub.com/support and register to have the files e-mailed directly to you.