---
title: 'Thema der Woche: Repository-Pattern in DDD und DAO'
url: 'https://tutego.de/blog/javainsel/2009/07/thema-der-woche-repository-pattern-in-ddd-und-dao'
markdown: 'https://tutego.de/blog/javainsel/2009/07/thema-der-woche-repository-pattern-in-ddd-und-dao.md'
date: '2009-07-31'
description: 'Zur Abstraktion von Zugriffen auf konkreten Datastores (oft eine relationale Datenbank) haben sich DAOs (http://java.sun.com/blueprints/corej2eepatterns/Patterns/DataAccessObject.html) etabliert. Im Domain Driven Design (DDD) gibt es etwas, das so aussieht wie ein DAO, und zu großer Diskussion in d…'
taxonomy:
  category:
    - 'Die wöchentliche Dosis Java'
---

# Thema der Woche: Repository-Pattern in DDD und DAO

![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/)

## Thema der Woche: Repository-Pattern in DDD und DAO

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

Zur Abstraktion von Zugriffen auf konkreten Datastores (oft eine relationale Datenbank) haben sich DAOs ([http://java.sun.com/blueprints/corej2eepatterns/Patterns/DataAccessObject.html](http://java.sun.com/blueprints/corej2eepatterns/Patterns/DataAccessObject.html "http://java.sun.com/blueprints/corej2eepatterns/Patterns/DataAccessObject.html")) etabliert. Im Domain Driven Design (DDD) gibt es etwas, das so aussieht wie ein DAO, und zu großer Diskussion in der Community führt.

- Wiederhole [http://java.sun.com/blueprints/corej2eepatterns/Patterns/DataAccessObject.html](http://java.sun.com/blueprints/corej2eepatterns/Patterns/DataAccessObject.html "http://java.sun.com/blueprints/corej2eepatterns/Patterns/DataAccessObject.html")
- Lese über das Repository-Pattern im DDD: [http://dddstepbystep.com/wikis/ddd/blogged-the-repository-pattern.aspx](http://dddstepbystep.com/wikis/ddd/blogged-the-repository-pattern.aspx "http://dddstepbystep.com/wikis/ddd/blogged-the-repository-pattern.aspx")

Lassen sich hier schon Unterschiede herausstellen?

Verfolge den “Streit” über den Unterschied zwischen Repos/DAO in den Blogs

- [http://blog.hibernate.org/Bloggers/RepositoryPatternVsTransparentPersistence](http://blog.hibernate.org/Bloggers/RepositoryPatternVsTransparentPersistence "http://blog.hibernate.org/Bloggers/RepositoryPatternVsTransparentPersistence") (initiiert vom Hibernate-Mitarbeiter [Christian Bauer](http://blog.hibernate.org/Bloggers/Christian), der zum Teil sehr ruppig schreibt und reagiert)
- [http://ziobrando.blogspot.com/2008/01/domain-driven-design-in-java.html](http://ziobrando.blogspot.com/2008/01/domain-driven-design-in-java.html "http://ziobrando.blogspot.com/2008/01/domain-driven-design-in-java.html"), [http://ziobrando.blogspot.com/2008/01/domain-driven-design-in-java\_18.html](http://ziobrando.blogspot.com/2008/01/domain-driven-design-in-java_18.html "http://ziobrando.blogspot.com/2008/01/domain-driven-design-in-java_18.html"), [http://ziobrando.blogspot.com/2008/01/domain-driven-design-in-java\_21.html](http://ziobrando.blogspot.com/2008/01/domain-driven-design-in-java_21.html "http://ziobrando.blogspot.com/2008/01/domain-driven-design-in-java_21.html")

Fragen:

- Was sagt Eric Evans zu der Diskussion? Kann ein Repo als DAO implementiert sein?
- Stehen Repo und DAO beide auf der Ebene vom Domain-Model?
- Warum sagen Kritiker, dass Repos eine zusätzliche (unnötige) Zwischenschicht sind?
- Einige EJB-Advocates injizieren gerne bei Java EE 5 Anwendungen den Entity-Manager in den DAO bzw. sehen den EM als DAO selbst, den man dann in Session-Beans injiziert. Ist das ein Design im Sinne von DDD?

`Optional`. Wie sieht Paginierung aus? [http://tech.groups.yahoo.com/group/domaindrivendesign/message/5795](http://tech.groups.yahoo.com/group/domaindrivendesign/message/5795 "http://tech.groups.yahoo.com/group/domaindrivendesign/message/5795")

Kategorien: [Die wöchentliche Dosis Java](https://tutego.de/blog/javainsel/category/die-woechentliche-dosis-java/)

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

---

## Navigation

- Previous: [Java Datastore API für die Google App Engine](https://tutego.de/blog/javainsel/2009/07/java-datastore-api-fur-die-google-app-engine.md)
