GWT编辑器和GAE数据存储区

Ban*_*der 7 java gwt google-app-engine jdo google-cloud-datastore

GWT有一个编辑器框架,经过粗略的检查,看起来非常像Spring MVC/Forms如何处理后端数据对象和前端UI组件之间的数据绑定.

我正在编写我的第一个GWT/GAE应用程序,并想知道是否有任何方法可以将此编辑框架 GAE的JDO/Atomic库结合使用,这是您针对应用程序和基础数据存储区之间的O/R映射编写的API .

这两个框架是互补的还是相互排斥的?如果他们可以一起工作,有人可以提供一个小代码示例,说明我如何使用它们来填充一个<select>带有名单列表的HTML 框,或者其他基本但实用的东西.

我想这可能涉及一个PersonPOJO代表一个人(并且有一个String name属性),也许某种PersonDAO使用JDO/Atomic到CRUD Person实例到/来自数据存储区,然后某种类型Editor<Person>可以将Person实例映射到前端<select>s.

如果我能看到一个有效的例子,我认为它将全部聚集在一起.并且,如果这些是彼此排斥的并且不能一起使用,那么为什么会被非常感谢的可靠解释!提前致谢!

bsa*_*ner 1

我希望这会有所帮助,这是一些在 GAE 数据存储中存储数据的示例代码,一个简单的查询来获取数据并用内容填充 GWT 下拉列表。

以下是持久保存到应用程序引擎数据存储的 JDO ORM:

https://github.com/bsautner/com.nimbits/blob/master/nimbits-tds/src/com/nimbits/server/orm/EntityStore.java

以下是在数据存储中查询对象列表的示例

@Override
    public List<Entity> getEntityByName(final User user, final String name) 
{
        final PersistenceManager pm = pmf.getPersistenceManager();

        try {
            final Query q1 = pm.newQuery(EntityStore.Class);
            final List<Entity> c;

                q1.setFilter("name==b");
                q1.declareParameters("String b");
                q1.setRange(0, 1);
                c = (List<Entity>) q1.execute(name);

            if (c.isEmpty()) {
                return Collections.emptyList();
            } else {

                final Entity result = c.get(0);
                return createModel(user, result);

            }

        } finally {
            pm.close();
        }
    }
Run Code Online (Sandbox Code Playgroud)

这是一个基于 GWT (GXT) 的组合框,其中填充了从 ORM 模型创建的 POJO

https://github.com/bsautner/com.nimbits/blob/master/nimbits-tds/src/com/nimbits/client/ui/controls/EntityCombo.java