나는 decorate 인터페이스 PreparedStatement을 주문 마무리하기 위해 (단지 예를 들면)하고 싶습니다.자바 7 - 기본, 모든 다른, 많은 방법을 위임하지 않고 사용자 정의 메서드 장식
즉, close()
이 호출 될 때 PreparedStatement
의 기존 인스턴스를 꾸미므로 다른 코드를 호출하려고합니다. here 일을 좋아하는 들어
PreparedStatement
장식의 방법을 구현 기본적으로해야합니다. 몰락은 단지 부가 가치가없는 많은 일과 코드 일 뿐이라는 것입니다.
또 다른 옵션은 단일 메소드의 모든 메소드에 대한 위임을 수행하는 기본 구현을 제공하기 위해 Java의 Proxy and InvocationHandler을 사용하는 것입니다. 사용자 지정 메서드가있는 경우 InvocationHandler은 호출을 호출합니다. 예 : here을 참조하십시오. 이 솔루션의 문제점은 @Override
으로 표시 할 수없고 프록시가 인스턴스화 할 수없는 추상 PreparedStatement
을 필요로하기 때문에 해당 서명의 정확성을 검사 할 수 없다는 것입니다.
이렇게 할 수 있습니까? 방법?
* Java 7 max를 사용하여 구현할 수 있어야하지만 Java 8 응답을 제공해야합니다.
사용자 정의 폐쇄에 의해 무슨 소리를, 당신은 더 많은 그것을 설명하십시오 수 있습니다. – PyThon
Mockito를 사용할 수 있습니까? –
AOP를 사용하여 기능을 수행 할 수 있습니다. 그러나 하나의 질문, 왜 당신은'PreparedStatement'를 꾸밀 필요가 있습니까? – Dimitri