필자는 양방향 연결을 다루는 일반적인 방법과 수동 작성 Java 코드에서 역변환을 처리하는 방법을 찾고있었습니다.양방향 연결 및 역 업데이트를 관리하기위한 일반 Java 프레임
내가 무슨 말을하는 지 모르는 사람들을 위해 여기에 예제가 있습니다. 그 밑에는 (불만족스러운) 해결책의 현재 결과가 있습니다.
public class A {
public B getB();
public void setB(B b);
}
public class B {
public List<A> getAs();
}
이제 연결의 끝을 업데이트 할 때 일관성을 유지하기 위해 다른 쪽 끝도 업데이트해야합니다. 수동마다
a.setB(b);
b.getA().add(a);
또는 세터/게터에 일치하는 코드를 넣고 사용자 지정 목록 구현을 사용하여
.의존성을 더 이상 사용할 수없는 구식, 유지 관리되지 않은 프로젝트 (https://e-nspire-gemini.dev.java.net/)를 발견했습니다. 필요한 코드를 자동으로 주입하는 데 사용되는 주석을 사용하여 문제를 처리합니다.
누구나이 일반적이고 눈에 거슬리지 않은 ala gemini에서 이것을 처리하는 또 다른 프레임 워크를 알고 있습니까? http://code.google.com/p/google-collections/이 (뿐만 아니라 호환이 잘 제네릭 사용) 자바 제네릭 호환
클래스 BiMap - - http://google-collections.googlecode.com/svn/trunk/javadoc/index.html?http://google-collections.googlecode.com/svn/trunk/javadoc/com/google/common/collect/package-summary.html 양방향 수 있습니다 (구글의 내부 코드에서)
답을 보내 주셔서 감사합니다.하지만이 문제를 일반적인 코드가 아닌 방식으로 다루는 솔루션을 찾고있었습니다. –