Google App Engine의 Java 구현을위한 Python App Engine의 _ah/admin과 동일한 기능이없는 것 같습니다.로컬 Java App Engine 데이터 저장소를 탐색하는 방법은 무엇입니까?
수동으로 데이터 저장소를 탐색 할 수 있습니까? 내 컴퓨터에서 파일을 찾을 수있는 위치는 어디입니까? (OS X에서 Eclipse로 App Engine 플러그인을 사용하고 있습니다.)
Google App Engine의 Java 구현을위한 Python App Engine의 _ah/admin과 동일한 기능이없는 것 같습니다.로컬 Java App Engine 데이터 저장소를 탐색하는 방법은 무엇입니까?
수동으로 데이터 저장소를 탐색 할 수 있습니까? 내 컴퓨터에서 파일을 찾을 수있는 위치는 어디입니까? (OS X에서 Eclipse로 App Engine 플러그인을 사용하고 있습니다.)
나는 \ WEB-INF \의 \ local_db.bin
에서 appengine이 생성 \ 전쟁에 내 Windows + Eclipse 환경의 로컬 데이터 저장소를 가지고 지금까지 내가이 "프로토콜 버퍼"라는 이름의 내부 형식을 사용하여 이해한다. 필자는 파일을 사람이 읽을 수있는 형식으로 제시 할 수있는 외부 도구가 없습니다. 나는이 같은 간단한 "뷰어"코드를 사용하고:
public void doGet(HttpServletRequest req, HttpServletResponse resp)
throws IOException
{
resp.setContentType("text/plain");
final DatastoreService datastore = DatastoreServiceFactory.getDatastoreService();
final Query query = new Query("Table/Entity Name");
//query.addSort(Entity.KEY_RESERVED_PROPERTY, Query.SortDirection.DESCENDING);
for (final Entity entity : datastore.prepare(query).asIterable()) {
resp.getWriter().println(entity.getKey().toString());
final Map<String, Object> properties = entity.getProperties();
final String[] propertyNames = properties.keySet().toArray(
new String[properties.size()]);
for(final String propertyName : propertyNames) {
resp.getWriter().println("-> " + propertyName + ": " + entity.getProperty(propertyName));
}
}
}
자바 SDK에 대한 데이터 저장소 뷰어는 현재 없습니다 - 하나는 다음 SDK 릴리스 오는되어야한다. 그 동안 데이터 저장소보기 코드를 사용하여 관리자 인터페이스를 작성하거나 다음 SDK 출시를 기다리는 것이 가장 좋습니다.
Java App Engine에는 로컬 데이터 저장소 뷰어가 있으며 http://localhost:8080/_ah/admin
에서 액세스 할 수 있습니다.
이것은 중복되어 있습니다. 위의 dfrankow의 게시물을 참조하십시오. –
당신은 며칠 게시 된 블로그 게시물에 대한 링크를 의미합니다 _이 _ 답변을 게시 했습니까? '시대에 뒤진'나는 받아 들일 것이다. 그러나 중복되고 투표는 다소 잔인하다. –
동의합니다. 그 당시의 좋은 대답; 지금 구식. – mcherm
http://googleappengine.blogspot.com/2009/07/google-app-engine-for-java-sdk-122.html는 "마지막으로 긴, dev에 애플리케이션 서버는 데이터 뷰어를 가지고 로컬로 응용 프로그램을 시작하고 체크 아웃 http://localhost:8888/_ah/admin
http://localhost:8000/datastore
*에 브라우저를 가리 킵니다.."
public void doGet(HttpServletRequest req, HttpServletResponse resp) throws IOException {
String entityParam = req.getParameter("e");
resp.setContentType("text/plain");
final DatastoreService datastore = DatastoreServiceFactory.getDatastoreService();
// Original query
final Query queryOrig = new Query(entityParam);
queryOrig.addSort(Entity.KEY_RESERVED_PROPERTY, Query.SortDirection.ASCENDING);
for (final Entity entityOrig : datastore.prepare(queryOrig).asIterable()) {
// Query for this entity and all its descendant entities and collections
final Query query = new Query();
query.setAncestor(entityOrig.getKey());
query.addSort(Entity.KEY_RESERVED_PROPERTY, Query.SortDirection.ASCENDING);
for (final Entity entity : datastore.prepare(query).asIterable()) {
resp.getWriter().println(entity.getKey().toString());
// Print properties
final Map<String, Object> properties = entity.getProperties();
final String[] propertyNames = properties.keySet().toArray(new String[properties.size()]);
for(final String propertyName : propertyNames) {
resp.getWriter().println("-> " + propertyName + ": " + entity.getProperty(propertyName));
}
}
}
}
그것은해야한다 : 1.7.7
구글 앱 엔진 데이터 저장소 뷰어가 참조 된 개체의 컬렉션을 표시하는 지원하지 않기 때문에 현재로
*, 나는 모든 하위 개체를 표시하는 바울의 버전을 수정 빈 콜렉션/참조 된 엔티티에는 아무것도 표시되지 않습니다. SDK를 (1.7.6+) dev에 서버의 관리 부분의 최신 버전의
이 코드는 모든 엔티티와 하위 엔티티를 찾습니다. 하위 엔티티에도 하위 엔티티가 있으면 어떻게됩니까? 이 함수는 재귀로 실행됩니까? –
은 우리가에 액세스 할 수 있는지 볼 수있는 서버 출력 로그를 분석 위치
변경되어 있습니다 :
http://localhost:8000
그리고 데이터 저장소 뷰어 :
http://localhost:8000/datastore
Google의 새로운 디자인 가이드 라인에 따르면 꽤 깔끔하게 보입니다.
메모장 + +와 같은 텍스트 편집기로 \war\WEB-INF\appengine-generated\local_db.bin
파일을 엽니 다.
데이터가 스크램블되었지만 적어도 읽을 수 있으며 복사하여 복사 할 수 있습니다.
코드가 좋지만 쿼리 생성자의 매개 변수가 잘못되었습니다. 표가 올바르지 않습니다. 표제가 정확하지 않습니다. 방명록 예제에서는 행인 "인사말"이됩니다.시도했지만 작동하지 : 최종 쿼리 쿼리 = 새 쿼리 ("방명록/인사말"); 다른 문제 : 코드와 함께 테이블의 다른 키/이름의 내용을 어떻게 표시합니까? guestbook1, gb2 등과 같습니다. – Timo