내 자신의 java.util.List 구현을 작성했으며 이제는 DataNucleus를 사용하여 MySQL에 저장하려고합니다. 구현은 List 인터페이스를 구현하는 공용 클래스와 해당 목록에 대한 노드를 구현하는 개인 클래스로 구성됩니다.DataNucleus, JDO, 내 목록 구현을 유지하는 방법?
이클립스에서 SchemaTool를 실행하면, 내 노드 구현을위한 전용 테이블이 생성됩니다, 그리고 난 내 응용 프로그램을 실행할 때, 나는 다음과 같은 오류 얻을 : 여기
Persistent class "a.b.c.util.DtvList" has no table in the database, but the operation requires it. Please check the specification of the MetaData for this class.내 목록 구현 클래스의 시작에 불과을 ...
@PersistenceCapable
@Inheritance(strategy=InheritanceStrategy.COMPLETE_TABLE)
public class DtvList<E extends Comparable<E>> implements List {
@Persistent
private DtvListNode first = null;
private DtvListNode last = null;
private int length = 0;
public DtvList(){};
또한 add(E object)
메서드에 대한 구현 만 있고 다른 모든 메서드는 RuntimeException
입니다. 그것이 문제일까요?
PS 나는 또한에서는 getIterator 등과 같은 좀 더 방법을 구현하는 시도하지, 나는 심지어 매핑 플러그인 (http://www.datanucleus.org/extensions/rdbms_java_types.html)를 기록했지만, 더에 이익. 테이블은 데이터베이스의 SchemaTool에 의해 생성되지 않습니다.
PS/2 DtvListNode 구현에 대한 매핑 클래스가 추가되었으므로 이제 DtvList에 대한 테이블이 있지만 DtvListNode에는 테이블이 없습니다. 아직 작동하지 않습니다. 하지만 난 여전히 org.datanucleus.store.exceptions.NoTableManagedException
DtvList 테이블이 존재하지 않는 예외가 발생합니다.