官术网_书友最值得收藏!

Creating a hibernate persistent class

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.

Getting ready

By POJO, we mean that we will create a Java class that satisfies the following requirements:

  • It needs to have a default constructor that is persistent.
  • It should contain the id attribute. ID is used to identify the object and is mapped with the primary column of a table.
  • All attributes should have Getter and Setter methods, such as getXXX and setXXX where xxx is a field name.

How to do it...

We will now create a persistent class and name it Employee. The following table shows a representation of the Employee class:

  1. Create the 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:

  • The default Employee() constructor
  • The id attribute, which is the primary column of the table and can be used to uniquely identify an entry
  • The individual getters and setters in all the attributes (id, firstName, and salary)

There's more…

Now, let's see how to design a POJO for tables having references between the Department and Employee tables:

There's more…

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;
  }
  
}

Tip

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.

主站蜘蛛池模板: 加查县| 崇义县| 隆安县| 那坡县| 乌拉特后旗| 麻江县| 牡丹江市| 肃宁县| 乐平市| 内黄县| 汕尾市| 锦屏县| 宜良县| 长阳| 吴旗县| 西乌珠穆沁旗| 绥阳县| 甘孜| 绥德县| 陆良县| 大同县| 盐山县| 洱源县| 凭祥市| 封开县| 巴中市| 成武县| 阿拉尔市| 斗六市| 江油市| 弋阳县| 金坛市| 积石山| 泸州市| 灯塔市| 新巴尔虎右旗| 阳高县| 比如县| 靖宇县| 赫章县| 柏乡县|