POJO 与 JavaBean 的区别 !

$说明:

POJO :全称(Plain Old Java Object)翻译为“普通旧Java对象” 通俗理解为“一个简单的java对象”。

JavaBean: 是一种JAVA语言写成的可重用组件,是一种规范,对所有其中的方法和构造具有一定的规范。

  1. 所有属性为private。

  2. 这个类必须有一个公共的缺省构造函数。即是提供无参数的构造器。

  3. 这个类的属性使用getter和setter来访问,其他方法遵从标准命名规范。

  4. 这个类应是可序列化的。实现serializable接口。

$POJO

      1.一种具有部分getter / setter 方法

       2.不存在业务逻辑。

        3.不遵从java约束等;

例如:

package com.pojo;

public class POJO {

	private String username;
	private String password;
	private String id;
	
	public String getUsername() {
		return username;
	}
	public void setUsername(String username) {
		this.username = username;
	}
	public String getPassword() {
		return password;
	}
	public void setPassword(String password) {
		this.password = password;
	}
	public String getId() {
		return id;
	}
	public void setId(String id) {
		this.id = id;
	}
	
	
}

 $JavaBean

    1.可拥有无参构造

    2.可拥有其他方法

    3.遵从规范,可序列化

例如:

package com.javabean;

public class javabean {

	private String username;
	private String password;
	private String id;
	
	public String getUsername() {
		return username;
	}
	public void setUsername(String username) {
		this.username = username;
	}
	public String getPassword() {
		return password;
	}
	public void setPassword(String password) {
		this.password = password;
	}
	public String getId() {
		return id;
	}
	public void setId(String id) {
		this.id = id;
	}
	
	//覆寫方法
	@Override
	public String toString() {
		return "javabean [username=" + username + ", password=" + password + ", id=" + id + "]";
	}
	//无参构造
	public javabean() {
		super();
	}
	//有参构造
	public javabean(String username, String password, String id) {
		super();
		this.username = username;
		this.password = password;
		this.id = id;
	}
	//其他方法
	public void run() {
		System.out.println("运行方法.......");
	}
	
}

 $总结

相比于javabean    POJO更加纯粹的遵守对象的概念,  javabean可能会存在一些业务逻辑;

POJO存在无参构造等 就会形成一个javabean形式;

POJO主要用于数据的临时传递,它只能装载数据, 作为数据存储的载体,而不具有业务逻辑处理的能力。

猜你喜欢

转载自www.cnblogs.com/CllOVER/p/10290092.html