How to browse local Java App Engine datastore?

后端 未结 7 1847
离开以前
离开以前 2020-12-07 08:37

It seems there is no equivalent of Python App Engine\'s _ah/admin for the Java implementation of Google App Engine.

Is there a manual way I can browse the datastore?

7条回答
  •  失恋的感觉
    2020-12-07 09:15

    I have local datastore on my Windows+Eclipse environment on \war\WEB-INF\appengine-generated\local_db.bin

    As far as I understood it uses internal format named "protocol buffers". I don't have external tools to present the file in human-readable format.

    I'm using simple "viewer" code like this:

    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 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));
            }
        }
    }
    

提交回复
热议问题