Google App Engine for Java,第 3 部分: 持久性和关系
2009-09-17 00:00:00 来源:WEB开发网App Engine for Java 中的 Java Data Objects
把传统的 Java 应用程序移植到 App Engine for Java 中,甚至是给出关系挑战,这些可能都没有什么意义,然而,持久性场景还是存在的,这时使用这个平台就有意义了。我将使用一个可行的示例来结束本文,您将体验 App Engine for Java 持久性是如何工作的。我们将以 第 2 部分 中建立的联系人管理应用程序为基础,介绍如何添加支持,以使用 App Engine for Java 数据存储工具持久化 Contact
对象。
在前面的文章中,您创建了一个简单的 GWT GUI,对 Contact
对象进行 CRUD 操作。您定义了简单的接口,如清单 1 所示:
清单 1. 简单的 ContactDAO 接口
package gaej.example.contact.server;
import java.util.List;
import gaej.example.contact.client.Contact;
public interface ContactDAO {
void addContact(Contact contact);
void removeContact(Contact contact);
void updateContact(Contact contact);
List<Contact> listContacts();
}
接下来,创建一个模拟版本,与内存集合中的数据进行交互,如清单 2 所示:
清单 2. 模拟 DAO 的 ContactDAOMock
package gaej.example.contact.server;
import gaej.example.contact.client.Contact;
import java.util.ArrayList;
import java.util.Collections;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
public class ContactDAOMock implements ContactDAO {
Map<String, Contact> map = new LinkedHashMap<String, Contact>();
{
map.put("rhightower@mammatus.com", new Contact("Rick Hightower",
"rhightower@mammatus.com", "520-555-1212"));
map.put("scott@mammatus.com", new Contact("Scott Fauerbach",
"scott@mammatus.com", "520-555-1213"));
map.put("bob@mammatus.com", new Contact("Bob Dean",
"bob@mammatus.com", "520-555-1214"));
}
public void addContact(Contact contact) {
String email = contact.getEmail();
map.put(email, contact);
}
public List<Contact> listContacts() {
return Collections.unmodifiableList(new ArrayList<Contact>(map.values()));
}
public void removeContact(Contact contact) {
map.remove(contact.getEmail());
}
public void updateContact(Contact contact) {
map.put(contact.getEmail(), contact);
}
}
- ››Google搜索引擎的奥秘
- ››Google测试搜索结果页面右侧内容更丰富的信息栏
- ››Google Dart精粹:应用构建,快照和隔离体
- ››APP Loading页设计和App从当前页进入新页面交互
- ››App产品开发:App产品开发与推广的经验
- ››google的代码审查
- ››google analytics清晰追踪爬虫的爬行信息
- ››Google+中文用户在两千万Google+大军中是少数派
- ››Google AdWords最昂贵点击成本的20种关键词分类
- ››Google运作经理Bryan Power给出的GOOGLE求职意见
- ››Google用户体验的十大设计原则
- ››Applying Styles and Themes - 应用Style和Theme ...
更多精彩
赞助商链接