logo

POJO

POJO в Java означає Plain Old Java Object. Це звичайний об'єкт, який не пов'язаний особливими обмеженнями. Для файлу POJO не потрібен спеціальний шлях до класів. Це покращує читабельність і можливість повторного використання програми Java.

POJO тепер широко поширені завдяки простоті обслуговування. Їх легко читати і писати. Клас POJO не має угоди про іменування властивостей і методів. Воно не прив'язане ні до кого Java каркас; будь-яка програма Java може використовувати його.

Термін POJO був введений Мартін Фаулер (американський розробник програмного забезпечення) у 2000 році. доступний на Java з EJB 3.0 від sun microsystem.

Як правило, клас POJO містить змінні та їхні методи отримання та встановлення.

Класи POJO подібні до Beans, оскільки обидва використовуються для визначення об’єктів для підвищення зручності читання та повторного використання. Єдина відмінність між ними в тому, що файли Bean мають деякі обмеження, але файли POJO не мають особливих обмежень.

приклад:

Клас POJO використовується для визначення сутностей об’єктів. Наприклад, ми можемо створити клас Employee POJO, щоб визначити його об’єкти.

Нижче наведено приклад класу Java POJO:

Employee.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 і перейшовши до Source-> Generate Getters and Setters.

POJO

Клацніть правою кнопкою миші програму Java і виберіть «Створити засоби отримання та встановлення».

POJO

Тепер натисніть на Генерувати параметр, наведений у нижній частині вікна створення. Він автоматично генеруватиме сетери та геттери.

bash довжина рядка

Властивості класу POJO

Нижче наведено деякі властивості класу POJO:

  • Клас POJO має бути публічним.
  • Він повинен мати публічний конструктор за замовчуванням.
  • Він може мати конструктор аргументів.
  • Усі об’єкти повинні мати деякі загальнодоступні Getters і Setters для доступу до значень об’єктів іншими програмами Java.
  • Об’єкт у класі POJO може мати будь-які модифікації доступу, такі як приватний, публічний, захищений. Але всі змінні екземпляра повинні бути приватними для покращеної безпеки проекту.
  • Клас POJO не повинен розширювати попередньо визначені класи.
  • Він не повинен реалізовувати заздалегідь визначені інтерфейси.
  • Він не повинен мати попередньо визначених анотацій.

Робота POJO Class

Клас POJO — це клас об’єктів, який інкапсулює бізнес-логіку. В архітектурі MVC контролер взаємодіє з бізнес-логікою, яка контактує з класом POJO для доступу до даних.

Нижче показано роботу класу POJO.

POJO

Як використовувати клас POJO у програмі Java

Клас 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 

З наведеного вище прикладу ми бачимо, що отримали доступ до властивостей класу POJO в MainClass.java.

POJO схожий на Bean Class, тому люди часто їх плутають; давайте подивимося на різницю між POJO та Bean.

Java Bean

Клас Java Bean також є класом об’єктів, який інкапсулює кілька об’єктів в один файл (Bean Class File). Є деякі відмінності між POJO та Bean.

теги html

Java POJO та Bean у двох словах:

  • Усі файли Bean можуть бути POJO, але не всі POJO є bean-компонентами.
  • Усі файли Bean можуть реалізувати інтерфейс Serializable, але не всі POJO можуть реалізувати інтерфейс Serializable.
  • Обидві властивості мають бути приватними, щоб мати повний контроль над полями.
  • Властивості повинні мати засоби отримання та налаштування для доступу до них в інших програмах Java.
  • Клас Bean є підмножиною класу POJO.
  • Немає серйозних недоліків у використанні POJO, але деякі недоліки можуть бути у використанні класу Bean.
  • POJO використовується, коли ми хочемо надати повний доступ користувачам і обмежити наших учасників. І Bean використовується, коли ми хочемо надати членам частковий доступ.

POJO Vs. Бін

POJO Бін
У Pojo немає особливих обмежень, окрім угод Java. Це особливий тип файлів POJO, які мають деякі спеціальні обмеження, окрім угод Java.
Він забезпечує менший контроль над полями порівняно з Bean. Забезпечує повний захист на полях.
Файл POJO може реалізувати інтерфейс Serializable; але це не є обов'язковим. Клас Bean повинен реалізовувати інтерфейс Serializable.
До класу POJO можна отримати доступ, використовуючи їхні імена. Доступ до класу Bean можна отримати лише за допомогою геттерів і сеттерів.
Поля можуть мати будь-який із модифікаторів доступу, наприклад публічний, приватний, захищений. Поля можуть мати лише закритий доступ.
У POJO необов’язково мати конструктор без аргументів; воно може його мати, а може і не мати. Він повинен мати конструктор без аргументів.
У використанні POJO немає жодних недоліків Недоліком використання Bean є те, що конструктор Default і public setter можуть змінювати стан об’єкта, коли він має бути незмінним.