---
title: 'objectify-appengine: schöne Abstraktion der Low-Level Datastore API'
url: 'https://tutego.de/blog/javainsel/2010/03/objectify-appengine-schne-abstraktion-der-low-level-datastore-api'
markdown: 'https://tutego.de/blog/javainsel/2010/03/objectify-appengine-schne-abstraktion-der-low-level-datastore-api.md'
date: '2010-03-30'
description: 'Die APIs JPA oder JDO sind auf einer NoSQL-Datenbank nicht optimal. Wer mit der Low-Level API programmiert, muss aber zu viel selbst machen. Das Projekt http://code.google.com/p/objectify-appengine/ ist dabei eine willkommene Vereinfachung. Objectify-Appengine provides the thinnest convenient layer…'
taxonomy:
  category:
    - GAEJ
    - 'Open Source'
---

# objectify-appengine: schöne Abstraktion der Low-Level Datastore API

![Illustration einer tropischen Insel mit Palmen und einem hohen Berg](https://tutego.de/blog/javainsel/user/themes/tutego/images/insel-cover.jpg)# Java Blog für Programmierer

[Java Blog für Programmierer](https://tutego.de/blog/javainsel/)

## objectify-appengine: schöne Abstraktion der Low-Level Datastore API

30.03.2010 · [Christian Ullenboom](https://tutego.de/blog/javainsel/author/admin/)

Die APIs JPA oder JDO sind auf einer NoSQL-Datenbank nicht optimal. Wer mit der Low-Level API programmiert, muss aber zu viel selbst machen. Das Projekt [http://code.google.com/p/objectify-appengine/](http://code.google.com/p/objectify-appengine/ "http://code.google.com/p/objectify-appengine/") ist dabei eine willkommene Vereinfachung.

Objectify-Appengine provides the thinnest convenient layer which addresses these issues, yet preserves the elegance of *get*, *put*, *delete*, and *query*. In short:

> - Objectify lets you persist, retrieve, delete, and query your own **typed objects**. ``` ```java
>     class Car {    @Id String vin; // Can be Long, long, or String    String color;}  Objectify ofy = ObjectifyService.begin();ofy.put(new Car("123123", "red"));Car c = ofy.get(Car.class, "123123");ofy.delete(c);
>     ```
>     
>     ```
>     
>     ```
> - Objectify surfaces **all native datastore features**, including batch operations, queries, entity groups, and unindexed properties.
> - Objectify provides **type-safe key and query classes** using Java generics.
> - Objectify provides a **human-friendly query interface** based on GAE/Python’s Query class.
> - Objectify **does not impact application cold-start time**, adding a few milliseconds at most.
> - Objectify can automatically **cache your data in memcache** for improved read performance.
> - Objectify provides a simple, **easy-to-understand transaction model**.
> - Objectify provides built-in facilities to **help migrate schema changes** forward.
> - Objectify entities can be **[used in GWT](http://code.google.com/p/objectify-appengine/wiki/ObjectifyWithGWT)** without the need for Data Transfer Objects.
> - Objectify has **no external jar dependencies**. Just add objectify.jar to your project.
> - Objectify provides **thorough documentation** of concepts as well as use cases.

Das Projekt ist gut dokumentiert, siehe [http://code.google.com/p/objectify-appengine/wiki/Concepts](http://code.google.com/p/objectify-appengine/wiki/Concepts "http://code.google.com/p/objectify-appengine/wiki/Concepts") und [http://code.google.com/p/objectify-appengine/wiki/IntroductionToObjectify](http://code.google.com/p/objectify-appengine/wiki/IntroductionToObjectify "http://code.google.com/p/objectify-appengine/wiki/IntroductionToObjectify").

Kategorien: [GAEJ](https://tutego.de/blog/javainsel/category/gaej/), [Open Source](https://tutego.de/blog/javainsel/category/open-source/)

## 1 Kommentare

**SimpleDS 1.0 RC für die GAE/J** · [05.05.2010 19:34](#comment-367)

\\\[...\\\] die Low-Level-API nicht so tolle ist, habe ich unter anderem schon hier eine Alternative genannt. Eine andere ist SimpleDS, von der nun der erste Release Candidate raus \\\[...\\\]

Die bisherigen Kommentare wurden aus WordPress übernommen. Neue Kommentare sind derzeit geschlossen.

[← Alle Beiträge](https://tutego.de/blog/javainsel/)

---

## Navigation

- Previous: [Thema der Woche: NoSQL-Datenbanken](https://tutego.de/blog/javainsel/2010/03/thema-der-woche-nosql-datenbanken.md)
- Next: [2 GWT Bibliotheken für REST- und MVP-Anwendungen](https://tutego.de/blog/javainsel/2010/03/2-gwt-bibliotheken-fr-rest-und-mvp-anwendungen.md)
