2011-02-11 4 views
0

실행에 모든 입력 (파일, 네트워크, 사용자 입력)을 기록하기 위해 Java 바이트 코드를 수정하는 애플리케이션을 작성하려고합니다. 이렇게하려면 java.io 네이티브 메서드 만 래핑하면됩니까? 다른 입력 소스가 있습니까?모든 Java 입력을 기록하십시오.

감사합니다.

답변

0

AspectJ를 확인하십시오. 그것은 당신이하려고하는 것에 더 높은 수준의 API를 제공합니다.

다른 가능성은 기존 도구를 사용하고 있습니다. 예를 들어 SocketFactory를 통해 소켓을 만들면 특수 정적 메서드를 호출하여 대체 할 수 있습니다. 그래서 당신은 당신 자신의 실제 소켓을 대체 할 수 있고 소켓을 통과 한 각 바이트에 접근 할 수 있습니다. 6 ~ 7 년 전쯤에 그런 시스템의 프로토 타입을 구현했지만, 마음에 모든 세부 사항을 기억하지 못합니다. 당신이 직접 조사 할 수 있다고 생각합니다. 그러나 AspectJ 접근법은 더 쉽다 (IMHO).

+0

감사합니다. AspectJ는 오래 전부터 사용되었지만 측면에 중점을 두었 기 때문에 입력 포인트를 결합 점으로 정의하기 위해 입력 소스가 무엇인지 알아야합니다. 그것이 나의 주요한 질문이다. – Louro

관련 문제