首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何创建POJO?

如何创建POJO?
EN

Stack Overflow用户
提问于 2010-08-20 08:05:51
回答 11查看 143.1K关注 0票数 69

最近,我开始听说“POJO”(简单的旧Java对象)。我用谷歌搜索了一下,但还是不太理解它的概念。谁能给我一个清楚的描述POJO?

考虑一个类"Person“,它的变量是"id,name,address,salary”--我该如何为这个场景创建POJO呢?下面的代码是POJO吗?

代码语言:javascript
复制
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;
    }
}
EN

回答 11

Stack Overflow用户

回答已采纳

发布于 2010-08-20 08:24:44

POJO只是一个普通的老Java Bean,去掉了这些限制。Java Beans必须满足以下要求:

对于名为foo的可变属性,constructor

  • Follow

  • 缺省的no-arg实现getFoo的Bean约定(对于布尔值为isFoo )和setFoo方法;如果foo为immutable.

  • Must实现java.io.Serializable

,则关闭该setFoo

POJO不强制执行其中的任何一项。顾名思义:在JDK下编译的对象可以被认为是普通的旧Java对象。没有应用服务器,没有基类,没有需要使用的接口。

首字母缩写POJO是对EJB 2.0的反应,EJB 2.0需要几个接口、扩展的基类和许多方法才能完成简单的事情。一些人,其中包括Rod Johnson和Martin Fowler,反对这种复杂性,并寻求一种方法来实现企业规模的解决方案,而不必编写EJB。

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

Rod Johnson写了“没有EJB的J2EE”,写了Spring,对EJB3.1的影响很大,因此3.1版看起来很像Spring和Hibernate,并从VMWare那里获得了甜蜜的首次公开募股。

这里有一个你可以理解的例子:

代码语言:javascript
复制
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; } 
}
票数 83
EN

Stack Overflow用户

发布于 2014-01-24 17:41:11

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

POJO的属性

  1. 所有属性都必须是公共的setter和getter方法
  2. 所有实例变量都应该是私有的
  3. 不应该扩展预先指定的setter和getter方法也不应该实现预先指定的接口。
  4. 不应包含预先指定的注释。constructors

  • It不能有任何参数

POJO示例

代码语言:javascript
复制
public class POJO {

    private String value;

    public String getValue() {
         return value;
    }

    public void setValue(String value) {
        this.value = value;
    }
}
票数 28
EN

Stack Overflow用户

发布于 2010-08-20 08:06:36

POJO是Plain Old Java Object

来自我链接的维基百科文章:

在计算软件中,POJO是Plain Old

Object的首字母缩写。该名称用于强调给定的对象是普通的Java对象,而不是特殊的对象,尤其不是Enterprise JavaBean

您的类似乎已经是一个POJO。

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3527264

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档