Back End/Spring

POJO (Plain Old Java Object)

DevHam94 2023. 7. 31. 23:16

1. 객체지향적 원리에 충실하고, 특정 규약과 환경에 종속되지 않게 재활용될 수 있는 방식으로 설계된 객체.

2. 객체의 애플리케이션 핵심 로직과 기능을 담아 설계, 개발하는 방법을 POJO 프로그래밍이라고 한다. 

3. 자동화된 테스트에 유리하며, 유지보수성이 높다. 

4. 2000년, 마틴 파울러가 컨퍼런스 준비 과정에서 만든 용어다. 

 

import javax.jms.MessageListener;
import javax.jms.Message;
import javax.jms.JMSException;

public class OrderProcessor implements MessageListener {

	@Override
    public void onMessage(Message message) {
    	if (message instanceof TextMessage) {
        	try {
            	OrderPlaced event = OrderPlaced.fromJson(((TextMessage) message).getText());
                // 주문 접수 처리하기
            } catch (JMSException error) {
            	throw new RuntimeException("The message could not be read.", error);
            }
        } else {
        	throw new IllegalArgumentException("Message must be of type TextMessage");
        }
    }
}

 

스프링에 이식이 가능한 서비스 추상화 기술을 사용해 구현된 POJO 방식의 코드다. 

특정 기술과 환경에 종속되지 않은 객체라 깔끔한 코드가 될 수 있다. (위에는 저수준의 기술과 환경에 종속적인 객체이다.)

import org.springframework.jms.annotation.JmsListener;

public class OrderProcesser {
	
    @JmsListener(destination = "pos")
    public void accept(OrderPlaced event) {
    	// 주문 접수 처리하기 
    }
}

 

참고할 비디오: https://www.youtube.com/watch?v=5NcqgXgmmjg&ab_channel=SpringRunner

'Back End > Spring' 카테고리의 다른 글

Spring MVC  (0) 2023.08.22
Gradle  (0) 2023.08.02
Spring 개요  (0) 2023.07.31
405 Error가 뜨는 많은경우  (0) 2023.04.11
Spring DI 의존관계 주입(Dependency Injection)  (0) 2023.03.29