Spring-Data
    Persistindo dados sem sofrimento




André Luiz Forchesatto
@forchesatto             I BootCamp
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
               ●   JPA
               ●   JDBC Extensions
               ●   Hadoop
               ●   GemFire
                   Redis
 SubProjetos
               ●

               ●   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
Obrigado!!

             Dúvidas?
Contato:
@forchesatto
andreforchesatto@gmail.com
andre.forchesatto@unoesc.edu.br

Spring data

  • 1.
    Spring-Data Persistindo dados sem sofrimento André Luiz Forchesatto @forchesatto I BootCamp
  • 2.
    Agenda ● Realidade BD; ● Realidade Persistência em Java; ● SpringFramework; ● SpringData ● Interface Repository; ● Query Builder; ● @Query; ● Paginação;
  • 3.
  • 5.
  • 6.
  • 7.
    Spring framework “Spring isthe 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.”
  • 8.
    Spring framework ● Spring Security ● Spring Integration ● Spring Batch ● Spring Data ● Spring Web Flow ● Spring Web Services ● Spring Mobile ● Spring Social ● Spring Android
  • 9.
  • 10.
    Spring Data “Simplificao 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.”
  • 11.
    Spring Data ● JPA ● JDBC Extensions ● Hadoop ● GemFire Redis SubProjetos ● ● Riak ● MongoDB ● Neo4j ● Blob ● Commons
  • 12.
    Spring Data -COMMONS Conceito utilizado por todos os outros subprojetos, é utilizado como core do projeto Spring Data.
  • 13.
    Spring Data -COMMONS Uma interface principal denominada CrudRepository que deve ser herdada para cada Model Class da aplicação.
  • 14.
    Spring Data -CrudRepository
  • 15.
    Spring Data –CrudRepository Como usar na minha aplicação:
  • 16.
    Spring Data -Configuração
  • 17.
  • 18.
    Spring Data -Query Builder Construção de query utilizando somente o nome do método.
  • 19.
    Spring Data -Query Builder
  • 20.
    Spring Data -@Query Para aplicações que utilizam JPA, ainda é possível criar as query utilizando JPAQL
  • 21.
    Spring Data -@Query Para aplicações que utilizam MongoDB, ainda é possível criar as query utilizando MongoDB JSON query.
  • 22.
  • 23.
    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:
  • 24.
    Conclusões Mais tempo parafocar na regra de negócio; Menos código menos erro;
  • 25.
    Referências ● http://www.springsource.org/spring-data ● https://github.com/SpringSource
  • 26.
    Obrigado!! Dúvidas? Contato: @forchesatto andreforchesatto@gmail.com andre.forchesatto@unoesc.edu.br