0

目前,我在 Eclipse 中有一个非常基本的桌面 Java 应用程序,旨在将实体添加到 Google App Engine 上现有项目的数据存储区。我现在已经完成了所有设置,但是由于我是使用 Google App Engine 的新手,所以我不知道如何让应用程序将实体发送到我现有项目的数据存储中。

我尝试在网上查找此内容,但我发现的大部分内容都是用于制作 Java Web 应用程序。我的目标是让应用程序作为自己的应用程序运行,而不是通过浏览器。

那么,我必须做些什么才能使应用程序连接到我的 GAE 数据存储?是否有一些我需要输入的代码,或者我需要在项目中拥有一些 xml 文件?我只是在为 Google App Engine 使用 Java Eclipse 插件。

谢谢您的帮助!

4

2 回答 2

1

根据您问题的语言,我认为您确实需要一个全局的答案,而不是任何特定的代码。所以:

您有一个桌面应用程序。这在某些台式计算机上运行。

您有一个带有数据存储的 Google App Engine 应用程序。这在谷歌的数据中心运行。

这些不是同一台计算机。因此,他们必须以某种方式通过网络进行通信——这是您正在寻找的缺失部分。

由于 GAE 是围绕 Web 应用程序设计的,我建议您将其视为“Web 服务”情况——即您的桌面应用程序向您的 GAE 应用程序发出 HTTP 请求。(这种情况比一般情况要简化,因为您正在编写客户端和服务器。)

我建议您阅读有关设计简单 Web 服务的内容,并做任何适合您的应用程序的事情。


一个重要警告:除非您的 GAE 应用程序只有一个用户,否则您不能简单地编写一个通过 HTTP 访问数据存储的桥接器,因为这样任何人都可以对其他人的数据进行任意更改。正如多人游戏设计所说:不要信任客户端——也就是说,只接受根据应用程序规则有意义的网络请求,不要期望客户端执行这些规则。这是因为任何人都可以使用桌面应用程序以外的东西向您的 GAE 应用程序发出请求,因此您必须假设您可以接收任意请求。这是互联网的基本性质。

例如,在一个多用户应用程序的简单情况下,用户之间不使用应用程序进行交互,这意味着每个请求更新记录,应该只更新属于登录的记录user,而不是任何其他用户之一。

于 2013-06-20T02:42:12.670 回答
1

对于将来遇到此问题的任何人,我得到了答案。我只是尝试尝试使用项目设置并找到它。事实证明,安装 GAE Eclipse 插件后,您只需右键单击 中的项目文件夹Package Explorer,进入Google子菜单,然后单击App Engine Settings....

从那里,您需要选中Use Google App Engine复选框,然后在部署部分中,只需填写您项目的Application ID. 您的项目的应用程序 ID 可以在Application Settings您项目的在线 Google 应用引擎仪表板的选项卡下找到。它在那里列为您的Application Identifier.

结果对我来说,我需要找到一个不同的解决方案,因为您无法将 GAE 与使用 Java Swing 库的桌面应用程序集成。无赖:/

于 2013-06-20T04:00:38.057 回答