spring data
DESCRIPTION
Palestra do I BootCamp Unoesc Xanxerê e OeSC-Livre sobre Spring Data FrameworkTRANSCRIPT
Spring-Data Persistindo dados sem sofrimento
I BootCampAndré Luiz Forchesatto@forchesatto
Agenda
● Realidade BD;● Realidade Persistência em Java;● SpringFramework;● SpringData● Interface Repository;● Query Builder;● @Query;● Paginação;
Realidade Banco de dados
Spring Data
Realidade Persistência Java
Spring framework
“Spring is the most popular application development framework for enterprise Java™. Millions of developers use Spring to create high performing, easily testable, reusable code without any lock-in.”
Spring framework
● Spring Security● Spring Integration● Spring Batch● Spring Data● Spring Web Flow● Spring Web Services● Spring Mobile● Spring Social● Spring Android
Spring framework
Spring Data
“Simplifica o desenvolvimento de aplicações que usam novas tecnologias de acesso a dados como: noSql, mapReduce e cloud. Além do suporte aperfeiçoado a bancos relacionais.”
Spring Data
SubProjetos
● JPA● JDBC Extensions● Hadoop● GemFire● Redis● Riak● MongoDB● Neo4j● Blob● Commons
Spring Data - COMMONS
Conceito utilizado por todos os outros subprojetos, é utilizado como core do projeto Spring Data.
Spring Data - COMMONS
Uma interface principal denominada CrudRepository que deve ser herdada para cada Model Class da aplicação.
Spring Data - CrudRepository
Spring Data – CrudRepository
Como usar na minha aplicação:
Spring Data - Configuração
Demonstração
Spring Data - Query Builder
Construção de query utilizando somente o nome do método.
Spring Data - Query Builder
Spring Data - @Query
Para aplicações que utilizam JPA, ainda é possível criar as query utilizando JPAQL
Spring Data - @Query
Para aplicações que utilizam MongoDB, ainda é possível criar as query utilizando MongoDB JSON query.
Demonstração
Spring Data - Paginação
Utilizando as classes Page e Pageable do Spring é possível fazer paginação na query com o minimo de esforço.
Utilizando o método:
Conclusões
Mais tempo para focar na regra de negócio;
Menos código menos erro;
Referências
● http://www.springsource.org/spring-data● https://github.com/SpringSource