JPA provavelmente é uma das especificações do JavaEE mais difundidas entre os programadores da plataforma Java. Entretanto muitos insistem em ainda utilizar o conceito de DAOs para realizar acesso a dados. Nesta palestra veremos como utilizar Domain-Driven Design para criar Repositories, e como criar Specifications para melhorar a semântica, reuso e legibilidade do nosso código. Tudo isso utilizando lambdas do Java 8.