Slide 1

Slide 1 text

Entendendo o Spring Framework na prática Felix Coutinho @ JavaxCE Abr/2023

Slide 2

Slide 2 text

Objetivos

Slide 3

Slide 3 text

E-commerce backend

Slide 4

Slide 4 text

Pré-Workshop - requisitos ● Conhecimentos básico de Java e Web ● Java instalado (Java 11+) ● IDE Java (VSCode, IntelliJ, Eclipse)

Slide 5

Slide 5 text

O que é um framework?

Slide 6

Slide 6 text

Spring Framework Spring Boot Qual a diferença?

Slide 7

Slide 7 text

Ecosistema Spring Spring Data Spring Security Spring Framework Spring Batch Spring Boot Spring Web Spring Cloud …muito mais.

Slide 8

Slide 8 text

Workshop - E-commerce backend

Slide 9

Slide 9 text

Spring Initializr start.spring.io

Slide 10

Slide 10 text

Spring Boot (Starters/Dependências)

Slide 11

Slide 11 text

Spring Web (Backend/Rest API)

Slide 12

Slide 12 text

Spring Data (Repositórios)

Slide 13

Slide 13 text

Dependency Injection/Injeção de Dependências IoC/Inversion of Control/Inversão de Controle

Slide 14

Slide 14 text

Injeção de Dependências Image credit: https://toidicodedao.com/2015/11/03/dependency-injection-va-inversion-of-control-phan-1-dinh-nghia/

Slide 15

Slide 15 text

Inversão de Controle new Class()

Slide 16

Slide 16 text

CoC - Convention over Configuration

Slide 17

Slide 17 text

Spring Data Features ● find*( ) Convetion ● Like/Contains ● Projections ● By Example ● @Query ● … ● findByAttribute(Entity T) ● findByAttributeContaining(String attr) ● @Query("SELECT e FROM Entity") ● findOne(Entity T) ● EntityTO findByAttribute(Entity T) ● …

Slide 18

Slide 18 text

Cross-cutting concerns

Slide 19

Slide 19 text

● Logging ● Transactions ● Configuration ● Security ● Values ● Metrics ● Health Cross-cutting Concerns Image credit: https://nljug.org/java-magazine/aspect-oriented-programming-met-spring-boot/

Slide 20

Slide 20 text

Livros & Materiais https://spring.io/quickstart

Slide 21

Slide 21 text

Felix Coutinho Java/Cloud Architect @ Home Depot Canada https://twitter.com/felixcoutinho https://dev.to/felixcoutinho https://www.linkedin.com/in/felixcoutinho/