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

  • Java Hibernate Cookbook
  • Yogesh Prajapati Vishal Ranapariya
  • 532字
  • 2021-07-16 19:59:46

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.

主站蜘蛛池模板: 昭平县| 瑞昌市| 旺苍县| 沁阳市| 乾安县| 宣化县| 镇赉县| 龙陵县| 黎川县| 顺平县| 新干县| 彰化县| 渝北区| 太仓市| 芒康县| 武穴市| 怀集县| 曲松县| 海淀区| 安达市| 商水县| 新密市| 子洲县| 泰兴市| 咸阳市| 甘孜县| 新巴尔虎右旗| 西畴县| 临沭县| 开江县| 桂林市| 岑巩县| 贡嘎县| 平湖市| 漾濞| 米脂县| 连云港市| 凭祥市| 安塞县| 册亨县| 昭觉县|