Java の POJO は、Plain Old Java Object の略です。これは通常のオブジェクトであり、特別な制限はありません。 POJO ファイルには特別なクラスパスは必要ありません。 Java プログラムの可読性と再利用性が向上します。
POJO はメンテナンスが容易なため、現在広く受け入れられています。読み書きも簡単です。 POJO クラスには、プロパティとメソッドの命名規則がありません。何にも縛られていない ジャワ フレームワーク;どの Java プログラムでも使用できます。
POJOという用語は、によって導入されました。 マーティン・ファウラー (アメリカのソフトウェア開発者) が 2000 年に開発しました。Sun microsystem の EJB 3.0 から Java で利用可能です。
通常、POJO クラスには変数とそのゲッターおよびセッターが含まれます。
POJO クラスは Bean に似ており、両方ともオブジェクトを定義して可読性と再利用性を高めるために使用されます。両者の唯一の違いは、Bean ファイルにはいくつかの制限があるのに対し、POJO ファイルには特別な制限がないことです。
例:
POJO クラスはオブジェクト エンティティを定義するために使用されます。たとえば、Employee POJO クラスを作成してそのオブジェクトを定義できます。
以下は Java POJO クラスの例です。
従業員.java:
// POJO class Exmaple package Jtp.PojoDemo; public class Employee { private String name; private String id; private double sal; public String getName() { return name; } public void setName(String name) { this.name = name; } public String getId() { return id; } public void setId(String id) { this.id = id; } public double getSal() { return sal; } public void setSal(double sal) { this.sal = sal; } }
上記の従業員クラスは、従業員 POJO クラスの例です。 Eclipse で作業している場合は、Java プログラムを右クリックして次のリンクに移動することで、セッターとゲッターを簡単に生成できます。 ソース -> ゲッターとセッターを生成します。
Java プログラムを右クリックし、「ゲッターとセッターの生成」を選択します。
ここで、 生成する [生成] ウィンドウの下部にあるオプション。セッターとゲッターを自動生成します。
スレッド.デストロイ
POJOクラスのプロパティ
以下に、POJO クラスのいくつかのプロパティを示します。
- POJO クラスはパブリックである必要があります。
- パブリックなデフォルトのコンストラクターが必要です。
- 引数コンストラクターを持つ場合があります。
- 他の Java プログラムからオブジェクトの値にアクセスするには、すべてのオブジェクトにパブリックの Getter と Setter が必要です。
- POJO クラスのオブジェクトには、プライベート、パブリック、保護などのアクセス変更を加えることができます。ただし、プロジェクトのセキュリティを向上させるために、すべてのインスタンス変数はプライベートである必要があります。
- POJO クラスは、事前定義されたクラスを拡張してはなりません。
- 事前に指定されたインターフェイスを実装しないでください。
- 事前に指定された注釈を含めないでください。
POJOクラスの働き
POJO クラスは、ビジネス ロジックをカプセル化するオブジェクト クラスです。 MVC アーキテクチャでは、コントローラーはビジネス ロジックと対話し、ビジネス ロジックは POJO クラスと通信してデータにアクセスします。
以下は POJO クラスの動作です。
JavaプログラムでPOJOクラスを使用する方法
POJO クラスは、他の Java プログラムでオブジェクトを使用するために作成されます。 POJO クラスの主な利点は、他の Java プログラムで毎回オブジェクトを作成する必要がないことです。 get() メソッドと set() メソッドを使用してオブジェクトにアクセスするだけです。
POJO クラスからオブジェクトにアクセスするには、次の手順に従います。
- POJOクラスオブジェクトを作成する
- set() メソッドを使用して値を設定します。
- get() メソッドを使用して値を取得します。
たとえば、同じパッケージ内に MainClass.java クラス ファイルを作成し、その中に次のコードを記述します。
MainClass.java:
//Using POJO class objects in MainClass Java program package Jtp.PojoDemo; public class MainClass { public static void main(String[] args) { // Create an Employee class object Employee obj= new Employee(); obj.setName('Alisha'); // Setting the values using the set() method obj.setId('A001'); obj.setSal(200000); System.out.println('Name: '+ obj.getName()); //Getting the values using the get() method System.out.println('Id: ' + obj.getId()); System.out.println('Salary: ' +obj.getSal()); } }
出力:
Name: Alisha Id: A001 Salary: 200000.0
上記の例から、MainClass.java 内の POJO クラス プロパティにアクセスしたことがわかります。
POJO は Bean クラスに似ているため、両者の間で混同されることがよくあります。 POJO と Bean の違いを見てみましょう。
千万
Java Bean
Java Beanクラス 複数のオブジェクトを 1 つのファイル (Bean クラス ファイル) にカプセル化するオブジェクト クラスでもあります。 POJO と Bean にはいくつかの違いがあります。
Java POJO と Bean の概要:
- すべての Bean ファイルを POJO にすることができますが、すべての POJO が Bean であるわけではありません。
- すべての Bean ファイルはシリアル化可能インターフェースを実装できますが、すべての POJO がシリアル化可能インターフェースを実装できるわけではありません。
- フィールドを完全に制御するには、両方のプロパティをプライベートにする必要があります。
- 他の Java プログラムでプロパティにアクセスするには、プロパティにゲッターとセッターが必要です。
- Bean クラスは、POJO クラスのサブセットです。
- POJO の使用には大きな欠点はありませんが、Bean クラスの使用にはいくつかの欠点がある可能性があります。
- POJO は、ユーザーに完全なアクセスを提供し、メンバーを制限する場合に使用されます。また、Bean はメンバーに部分的なアクセスを提供する場合に使用されます。
POJO vs.豆
ポジョ | 豆 |
---|---|
Pojo では、Java の規約以外に特別な制限はありません。 | これは特殊なタイプの POJO ファイルであり、Java 規則以外にいくつかの特別な制限があります。 |
Bean と比較して、フィールドに対する制御が少なくなります。 | フィールドを完全に保護します。 |
POJO ファイルは Serializable インターフェイスを実装できます。ただし、必須ではありません。 | Bean クラスは Serializable インターフェイスを実装する必要があります。 |
POJO クラスには、名前を使用してアクセスできます。 | Bean クラスには、ゲッターとセッターを使用することによってのみアクセスできます。 |
フィールドには、public、private、protected などのアクセス修飾子を含めることができます。 | フィールドにはプライベート アクセスのみが許可されます。 |
POJO では、引数なしのコンストラクターを使用する必要はありません。それがあるかもしれないし、ないかもしれない。 | 引数なしのコンストラクターが必要です。 |
POJOを使用することにデメリットはありません | Bean を使用する場合の欠点は、不変であるべきオブジェクトの状態が Default コンストラクターとパブリック セッターによって変更される可能性があることです。 |