JDO를 사용하면서 pm.deletePersistent(user); 를 할때 발생하는 에러. 이 에러는 user 객체가 Persistent로 binding되어있지 않은 상태라서 일어나는 에러이다. 따라서 PersistentManager로 binding시켜주고 삭제하면 된다. user = pm.getObjectById(User.class , user.getKey()); pm.deletePersistent(user); 끝.
1. GWT와 GAE를 연동시킨다. [GWT / GAE] Google Web Toolkit 와 Google App Engine 연동하기, 구글 서버에 올리기* 위의 페이지의 5번에서 transactions-optional을 설정했는지 확인한다. 다른 이름도 가능하지만 아래의 2번과 이름이 같아야한다. 2. PersistenceManagerFactory 객체를 만든다 - 아래와 같은 간단한 인터페이스를 만들어두면 좋다. public final class PMF { private static final PersistenceManagerFactory pmfInstance = JDOHelper.getPersistenceManagerFactory("transactions-optional"); private PMF..
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 을 설정한 객..
레퍼런스 : http://stackoverflow.com/questions/2657394/google-app-engine-poor-performance-with-jdo-datastore 구글 앱 엔진을 쓸때에는 데이터베이스에 접근하는 횟수를 최소화 해야한다. 이를위해 key를 가지고 어떠한 목록을 가져올때에 contains()를 쓰면 한번의 순환으로 데이터를 가져올수가 있다. List userKeyList = fetchUserKeys(); Query query = new Query(User.class , ":p.contains(key)"); query.execute(userKeyList); - JDO는 조인이 안되고 리스트를 써서 1:N이나 1:1. N:N 관계를 처리하는 것이 좋다. 참고 : http:..
- Total
- Today
- Yesterday
- gre
- Javascript
- mini project
- php
- 뽐뿌
- 안드로이드
- 사진
- 샷
- google app engine
- HTML5
- 속깊은 자바스크립트 강좌
- 탐론 17-50
- 서울
- HTML5 튜토리얼
- GX-10
- Python
- java
- TIP
- K100D
- gae
- 자바스크립트
- 강좌
- c++
- lecture
- 안드로이드 앱 개발 기초
- Android
- Writing
- 삼식이
- 팁
- ny-school
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |