Java의 POJO는 Plain Old Java Object를 의미합니다. 특별한 제한이 없는 일반적인 개체입니다. POJO 파일에는 특별한 클래스 경로가 필요하지 않습니다. Java 프로그램의 가독성과 재사용성을 향상시킵니다.
POJO는 유지 관리가 간편하기 때문에 이제 널리 채택되고 있습니다. 읽고 쓰기가 쉽습니다. POJO 클래스에는 속성 및 메서드에 대한 명명 규칙이 없습니다. 그 어떤 것에도 얽매이지 않습니다 자바 뼈대; 모든 Java 프로그램에서 이를 사용할 수 있습니다.
POJO라는 용어는 다음에 의해 소개되었습니다. 마틴 파울러 (미국 소프트웨어 개발자) 2000년. Sun Microsystem의 EJB 3.0부터 Java로 사용할 수 있습니다.
일반적으로 POJO 클래스에는 변수와 해당 Getter 및 Setter가 포함됩니다.
POJO 클래스는 가독성과 재사용성을 높이기 위해 객체를 정의하는 데 사용된다는 점에서 Bean과 유사합니다. 유일한 차이점은 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 프로그램을 마우스 오른쪽 버튼으로 클릭하고 다음으로 이동하여 Setter 및 Getter를 쉽게 생성할 수 있습니다. 소스-> Getter 및 Setter 생성.
Java 프로그램을 마우스 오른쪽 버튼으로 클릭하고 Getters 및 Setters 생성을 선택합니다.
이제 생성하다 생성 창 하단에 옵션이 제공됩니다. Setter와 Getter를 자동으로 생성합니다.
자바에서 배열 정렬
POJO 클래스의 속성
다음은 POJO 클래스의 일부 속성입니다.
- POJO 클래스는 공개되어야 합니다.
- 공개 기본 생성자가 있어야 합니다.
- 인수 생성자가 있을 수 있습니다.
- 모든 객체에는 다른 Java 프로그램이 객체 값에 액세스하기 위한 일부 공용 Getter 및 Setter가 있어야 합니다.
- POJO 클래스의 객체는 개인, 공용, 보호와 같은 모든 액세스 수정을 가질 수 있습니다. 하지만 프로젝트의 보안을 강화하려면 모든 인스턴스 변수를 비공개로 설정해야 합니다.
- POJO 클래스는 미리 정의된 클래스를 확장하면 안 됩니다.
- 미리 지정된 인터페이스를 구현하면 안 됩니다.
- 미리 지정된 주석이 없어야 합니다.
POJO 클래스 작업
POJO 클래스는 비즈니스 로직을 캡슐화하는 객체 클래스입니다. MVC 아키텍처에서 컨트롤러는 POJO 클래스와 연결하여 데이터에 액세스하는 비즈니스 로직과 상호 작용합니다.
다음은 POJO 클래스의 작업입니다.
Java 프로그램에서 POJO 클래스를 사용하는 방법
POJO 클래스는 다른 Java 프로그램에서 객체를 사용하기 위해 생성됩니다. POJO 클래스의 가장 큰 장점은 다른 Java 프로그램에서 매번 객체를 생성할 필요가 없다는 것입니다. 간단하게 get() 및 set() 메소드를 사용하여 객체에 액세스할 수 있습니다.
POJO 클래스에서 객체에 액세스하려면 다음 단계를 따르세요.
Java의 문자열에서 바꾸기
- 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의 차이점을 살펴보겠습니다.
자바 빈
자바빈 클래스 또한 여러 객체를 단일 파일(Bean Class File)로 캡슐화하는 객체 클래스입니다. POJO와 Bean에는 몇 가지 차이점이 있습니다.
간단히 말해서 Java POJO와 Bean은 다음과 같습니다.
- 모든 Bean 파일은 POJO가 될 수 있지만 모든 POJO가 Bean은 아닙니다.
- 모든 Bean 파일은 직렬화 가능 인터페이스를 구현할 수 있지만 모든 POJO가 직렬화 가능 인터페이스를 구현할 수 있는 것은 아닙니다.
- 필드를 완전히 제어하려면 두 속성 모두 비공개여야 합니다.
- 다른 Java 프로그램에서 속성에 액세스하려면 속성에 getter 및 setter가 있어야 합니다.
- Bean 클래스는 POJO 클래스의 하위 집합입니다.
- POJO를 사용하는 데에는 큰 단점이 없지만 Bean 클래스를 사용하는 데에는 몇 가지 단점이 있을 수 있습니다.
- POJO는 사용자에게 전체 액세스 권한을 제공하고 회원을 제한하려는 경우에 사용됩니다. 그리고, 멤버들에게 부분적인 접근을 제공하고 싶을 때 Bean을 사용합니다.
POJO 대. 콩
포조 | 콩 |
---|---|
Pojo에서는 Java 규칙 외에는 특별한 제한이 없습니다. | 이는 Java 규칙 이외의 몇 가지 특별한 제한 사항이 있는 특별한 유형의 POJO 파일입니다. |
Bean에 비해 필드에 대한 제어가 적습니다. | 현장에서 완벽한 보호를 제공합니다. |
POJO 파일은 직렬화 가능 인터페이스를 구현할 수 있습니다. 그러나 필수사항은 아닙니다. | Bean 클래스는 직렬화 가능 인터페이스를 구현해야 합니다. |
POJO 클래스는 해당 이름을 사용하여 액세스할 수 있습니다. | Bean 클래스는 getter 및 setter를 통해서만 액세스할 수 있습니다. |
필드에는 public, private, protected와 같은 액세스 한정자가 있을 수 있습니다. | 필드에는 비공개 액세스만 있을 수 있습니다. |
POJO에서는 인수가 없는 생성자를 가질 필요가 없습니다. 그것은 그것을 가질 수도 있고 없을 수도 있습니다. | 인수가 없는 생성자가 있어야 합니다. |
POJO를 사용하면 어떤 단점도 없습니다. | Bean 사용의 단점은 기본 생성자와 공개 설정자가 변경 불가능해야 하는 객체 상태를 변경할 수 있다는 것입니다. |