如何创建POJO?

66 java pojo

最近我开始听说"POJO"(Plain Old Java Objects).我用Google搜索,但仍然不理解这个概念.任何人都可以给我一个明确的POJO描述吗?

考虑具有变量"id,name,address,salary"的类"Person" - 我将如何为此场景创建POJO?代码是否低于POJO?

public class Person {
    //variables
    People people = new People();
    private int id;
    private String name;
    private String address;
    private int salary;


    public int getId() {
        return id;
    }

    public String getName() {
        return name;
    }

    public String getAddress() {
        return address;
    }

    public int getSalary() {
        return salary;
    }

    public void setId() {
        this.id = id;
    }

    public void setName() {
        this.name = name;
    }

    public void setAddress() {
        this.address = address;
    }

    public void setSalary() {
        this.salary = salary;
    }
}
Run Code Online (Sandbox Code Playgroud)

duf*_*ymo 76

POJO只是一个简单的旧Java Bean,删除了限制.Java Bean必须满足以下要求:

  1. 默认的no-arg构造函数
  2. 遵循getFoo的Bean约定(或booans的isFoo)和setFoo方法,用于名为foo的可变属性; 如果foo是不可变的,请不要使用setFoo.
  3. 必须实现java.io.Serializable

POJO不强制要求任何这些.这正是名称所说的:在JDK下编译的对象可以被视为普通的旧Java对象.没有应用服务器,没有基类,不需要使用接口.

首字母缩略词POJO是对EJB 2.0的反应,它需要几个接口,扩展基类和许多方法来做简单的事情.其中有些人,Rod Johnson和Martin Fowler反对这种复杂性,并寻求一种方法来实现企业级解决方案,而无需编写EJB.

马丁福勒创造了一个新的缩写.

Spring写道,"没有EJB的J2EE",写了一个足够影响EJB的版本,因此版本3.1看起来很像Spring和Hibernate,并从VMWare中获得了一个甜蜜的IPO.

这是一个你可以包围的例子:

public class MyFirstPojo
{
    private String name;

    public static void main(String [] args)
    {
       for (String arg : args)
       {
          MyFirstPojo pojo = new MyFirstPojo(arg);  // Here's how you create a POJO
          System.out.println(pojo); 
       }
    }

    public MyFirstPojo(String name)
    {    
        this.name = name;
    }

    public String getName() { return this.name; } 

    public String toString() { return this.name; } 
}
Run Code Online (Sandbox Code Playgroud)

  • 有些人比阅读更能理解实用演示.我是他们其中的一员. (14认同)
  • 我想我在我的回答中说过:要求一个无参数的构造函数是Java Bean的要求,但对于POJO则不然.此外,*任何*规则都可以打破.了解规则; 知道例外; 了解后果.这是软件开发,而不是谋杀法庭. (6认同)

小智 25

POJO: - POJO是一个Java对象,除了Java语言规范强制的限制之外,不受任何限制的约束.

POJO的特性

  1. 所有属性必须是公共setter和getter方法
  2. 所有实例变量都应该是私有的
  3. 不应扩展预先指定的类.
  4. 不应该实现预先指定的接口.
  5. 不应包含预先指定的注释.
  6. 它可能没有任何参数构造函数

POJO的例子

public class POJO {

    private String value;

    public String getValue() {
         return value;
    }

    public void setValue(String value) {
        this.value = value;
    }
}
Run Code Online (Sandbox Code Playgroud)


Bla*_*rad 5

POJO是一个普通的旧Java对象

从维基百科的文章中,我链接到:

在计算软件中,POJO是Plain Old Java Object的首字母缩写。该名称用于强调给定对象是普通Java对象,而不是特殊对象,尤其不是Enterprise JavaBean。

您的课程似乎已经是一个POJO。