[java] 자바 프록시 클래스의 작성 방법

자바에서 프록시 클래스를 작성하는 방법은 다음과 같습니다.

1. 인터페이스 정의

먼저 프록시 클래스가 대리할 인터페이스를 정의합니다. 예를 들어, 다음과 같이 UserService 인터페이스를 정의합니다.

public interface UserService {
    public void performAction();
}

2. 프록시 클래스 작성

다음으로 프록시 클래스를 작성합니다. 아래는 UserServiceProxy 프록시 클래스의 예시입니다.

public class UserServiceProxy implements UserService {
    private UserService userService;

    public UserServiceProxy(UserService userService) {
        this.userService = userService;
    }

    @Override
    public void performAction() {
        // 추가적인 작업 수행
        System.out.println("Additional logging...");

        // 원본 객체의 메서드 호출
        userService.performAction();
    }
}

3. 사용 예시

프록시 클래스를 사용하는 예시는 다음과 같습니다.

public class Main {
    public static void main(String[] args) {
        // 원본 객체 생성
        UserService userService = new UserServiceImpl();

        // 프록시 객체 생성
        UserService proxy = new UserServiceProxy(userService);

        // 프록시를 통한 메서드 호출
        proxy.performAction();
    }
}

프록시 클래스를 사용하여 메서드 호출 시, 추가적인 작업을 수행할 수 있습니다.

요약

프록시 클래스를 작성하는 과정은 인터페이스 정의, 프록시 클래스 작성, 그리고 사용 예시로 나눌 수 있습니다. 프록시 클래스를 사용하면 기존의 객체에 대해서 추가적인 작업을 수행할 수 있어 유용합니다.

더 많은 자세한 내용은 Oracle Java Documentation를 참고하시기 바랍니다.