티스토리 뷰


JDO를 사용하기 위해서는 일단 JDO에서 사용하는 PersistentCapable한 객체를 만들어야한다.
다음 단계들을 거치면 만들수 있다.

1. 클래스 위에 @PersistenceCapable 을 설정

@PersistenceCapable
public class User{
    //....
}

2. 저장하고자하는 각 변수 위에 @Persistent 을 설정

@PersistenceCapable
public class User{
    @Persistent
    private String name;

     //setter/getter 생략
}

* Persistent가 될수 있는 변수의 종류는 다음과 같으니 고려해가면서 JDO를 디자인하자.
  • Datastore가 지원하는 기본 데이터형
  • @PersistenceCapable 을 설정한 객체
  • Serializable를 구현한 객체 : @Persistent(serialized="true") 로 설정해야한다
  • 변수로 저장된 내부객체 : @Persistent 아래에 @Embedded 를 추가, 내부객체에는 @EmbeddedOnly를 추가
  • 위의 데이터형들의 List<...> : Relationship을 나타낼때 사용
3. Key 값 설정하기

@PersistenceCapable
public class User{

    @PrimaryKey
    @Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY)
    private Key key;

    @Persistent
    private String name;

     //setter/getter 생략
}

4. 상속 설정하기

* 다음의 상속 속성중 하나를 선택해서 입맛에 맞게 사용하면 될것이다.

- InheritanceStrategy.SUBCLASS_TABLE : 이건 하위 객체에 대한 JDO 테이블을 따로 만들어서 저장을 하고자 할때 사용하면 된다.
- customStrategy="complete-table" : 이건 상위 객체에서 테이블을 만들때 하위객체의 변수들도 다 포함시키고자 할때 사용한다.

@PersistenceCapable
@Inheritance(strategy = InhereitanceStrategy.SUBCLASS_TABLE)
public class User{

    @PrimaryKey
    @Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY)
    private Key key;

    @Persistent
    private String name;

     //setter/getter 생략
}

@PersistenceCapable
@Inheritance(customStrategy = "complete-table")
public class Admin extends User{
}



참고사이트 : http://code.google.com/appengine/docs/java/datastore/jdo/
다음 사이트에 자세한 내용이 더 설명되어있다.

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2024/12   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
글 보관함