< Return to Video

JAD CAP03 2024 VA08 CONSULTAS DERIVADAS DE METODO

  • 0:08 - 0:10
    Além da JPQL,
    também podemos construir
  • 0:10 - 0:13
    as consultas através
    de uma outra forma
  • 0:13 - 0:16
    que chamamos
    de consultas baseadas em métodos.
  • 0:16 - 0:21
    Ou seja, conseguimos utilizar
    os nomes dos campos
  • 0:21 - 0:26
    que temos lá na classe Java,
    como parte do nome da função.
  • 0:26 - 0:30
    E claro, temos que seguir algumas
    regras para conseguir fazer isso.
  • 0:30 - 0:33
    Então, o nome do método
    que vamos criar
  • 0:33 - 0:38
    é o que vai determinar
    que tipo de consulta a JPA vai fazer.
  • 0:38 - 0:42
    Então, chamamos isso
    de consultas derivadas de métodos.
  • 0:42 - 0:45
    Beleza?
    Então vamos usar um nome
  • 0:45 - 0:48
    que é padronizado,
    vamos utilizar algumas palavras
  • 0:48 - 0:52
    que a JPA nos indica.
  • 0:52 - 0:55
    E aí, com base nos nomes
    dos atributos da nossa classe,
  • 0:55 - 0:58
    conseguimos fazer a consulta,
    beleza?
  • 0:58 - 1:00
    Vamos dar uma olhada
    nessa documentação
  • 1:00 - 1:02
    para entendermos melhor
    o que isso quer dizer.
  • 1:02 - 1:03
    Vamos lá.
  • 1:03 - 1:09
    Estou aqui na documentação
    desses métodos,
  • 1:09 - 1:13
    nessas consultas baseadas em métodos.
  • 1:13 - 1:17
    Então, o que acontece?
    Olha só, as pesquisas que vamos usar,
  • 1:17 - 1:22
    a forma que vamos escrever os métodos,
    os nomes dos métodos
  • 1:22 - 1:23
    para poder fazer as pesquisas.
  • 1:23 - 1:27
    E aí temos aqui o padrão, tá?
    Então, por exemplo,
  • 1:27 - 1:29
    Temos aqui,
    olha nessa tabela
  • 1:29 - 1:34
    a palavra chave que vamos usar
    e temos aqui um exemplo
  • 1:34 - 1:38
    de como ficaria o nome do método.
  • 1:38 - 1:41
    Então, por exemplo,
    temos aqui olha, o "And".
  • 1:41 - 1:44
    Então o "And" usamos para fazer
    aquelas pesquisas,
  • 1:44 - 1:47
    onde combinamos dois campos,
    por exemplo,
  • 1:47 - 1:53
    selecionar listagem de uma tabela,
    todos os registros onde
  • 1:53 - 1:56
    a cidade seja,
    por exemplo, São Paulo
  • 1:56 - 2:01
    e o nome do bairro,
    seja, por exemplo, Vila Mariana.
  • 2:01 - 2:05
    Então usamos dois ou mais atributos
    para fazer a consulta.
  • 2:05 - 2:08
    Então olha só,
    como que fica essa consulta?
  • 2:08 - 2:13
    É "findBy",
    esse "findBy" ele é obrigatório.
  • 2:13 - 2:17
    Esse "Lastname"
    Ele é o nome de um atributo na classe.
  • 2:17 - 2:21
    Então imagina que você tem lá
    uma classe Java e lá tem um atributo
  • 2:21 - 2:22
    chamado "Lastname".
  • 2:22 - 2:26
    E tem um outro atributo
    chamado "Firstname".
  • 2:26 - 2:29
    Então o "Lastname"
    e o "Firstname"
  • 2:29 - 2:33
    eles são os nomes
    dos atributos na classe.
  • 2:33 - 2:38
    Agora, o "findBy" é o nome
    de um método padronizado pela JPA.
  • 2:38 - 2:40
    Eu tenho que usar esse "findBy".
  • 2:40 - 2:47
    Então imagina que ao invés do nome
    em inglês, fosse em português,
  • 2:47 - 2:48
    último nome e o primeiro nome.
  • 2:48 - 2:50
    Ficaria como?
  • 2:50 - 2:55
    "findBy", ultimo nome, "and",
    primeiro nome.
  • 2:55 - 2:58
    Um outro exemplo.
    Olha só o "Between" aqui.
  • 2:58 - 3:01
    O "Between", "findBy",
    ai tem aqui ó,
  • 3:01 - 3:06
    a data inicial "Between", né?
  • 3:06 - 3:09
    Então vamos fazer ali uma busca, né?
  • 3:09 - 3:14
    Encontrar pela data inicial,
    que esteja entre,
  • 3:14 - 3:18
    e aí passaremos as duas datas
    que serão fornecidas para esse método.
  • 3:18 - 3:21
    Legal.
    O "LessThan", por exemplo.
  • 3:21 - 3:24
    Eu quero buscar todo mundo,
    todos os registros
  • 3:24 - 3:27
    onde um determinado campo
    seja menor que alguma coisa.
  • 3:27 - 3:30
    Olha só.
    "findBy", "Age".
  • 3:30 - 3:34
    Esse "Age" ele é o nome
    do atributo lá na classe,
  • 3:34 - 3:36
    vamos supor que fosse idade,
    em português,
  • 3:36 - 3:40
    então ficaria "findBy",
    idade, "LessThan".
  • 3:40 - 3:44
    Então o nome dessa palavra
    aqui no meio,
  • 3:44 - 3:47
    ela tem que ser o nome do atributo
    lá na classe.
  • 3:47 - 3:51
    Só que o "findBy" eu tenho que usar
    e o "LessThan" também.
  • 3:51 - 3:54
    Ou seja,
    a JPA vai entender que tipo
  • 3:54 - 3:59
    de consulta queremos implementar,
    por conta dessas palavras aqui,
  • 3:59 - 4:02
    dessas expressões aqui, beleza?
  • 4:02 - 4:03
    E aí eu recomendo pra vocês.
  • 4:03 - 4:08
    Vocês tem um link dessa documentação
    no material escrito,
  • 4:08 - 4:11
    então eu recomendo que vocês
    olhem essa documentação
  • 4:11 - 4:15
    para poder variar
    bastante aqui as consultas de vocês.
  • 4:15 - 4:18
    Olha quanta coisa temos aqui.
  • 4:18 - 4:20
    Tá bom?
    Então vamos fazer alguns testes
  • 4:20 - 4:22
    para ver como que isso aqui funciona.
  • 4:22 - 4:26
    Bom, então vocês viram que tem ali
    todo uma padronização?
  • 4:26 - 4:30
    Então teremos aquelas palavras
    que são obrigatórias,
  • 4:30 - 4:35
    "findBy", "And",
    "LessThan","Between".
  • 4:35 - 4:39
    Essas palavras irão compor
    o nome da função e você vai combinar
  • 4:39 - 4:43
    com os nomes dos campos
    no objeto Java, na classe Java.
  • 4:43 - 4:46
    Isso conseguiremos fazer.
  • 4:46 - 4:49
    Dessa forma, conseguiremos fazer
    as consultas baseados
  • 4:49 - 4:51
    no nome dos métodos.
  • 4:51 - 4:52
    Olha que legal, né?
  • 4:52 - 4:56
    Essa é uma técnica bastante
    interessante que a JPA entrega para nós.
  • 4:56 - 5:00
    Vamos criar ali uma consulta,
    por exemplo,
  • 5:00 - 5:03
    para fazer uma busca pelo nome,
  • 5:03 - 5:06
    só que usando o método,
  • 5:06 - 5:10
    o nome do método
    e não usando a Query, usando a JPQL.
  • 5:10 - 5:13
    Então vamos fazer um ajuste
    ali nas nossas consultas
  • 5:13 - 5:15
    para vermos como isso ai funciona.
  • 5:15 - 5:19
    Vamos lá, ver como que fica isso
    escrito em código
  • 5:19 - 5:21
    mesmo ali na nossa aplicaçao.
  • 5:21 - 5:22
    Vamos trabalhar um pouco.
  • 5:22 - 5:27
    Então olha só, temos aqui
    esse "BuscarContatoPeloNome, né?
  • 5:27 - 5:31
    Então temos já aqui uma consulta
    usando a JPQL,
  • 5:31 - 5:34
    para fazer uma busca de contato
    pelo nome.
  • 5:34 - 5:36
    Agora imagina que queriamos
    fazer isso,
  • 5:36 - 5:42
    só que usando a consulta
    derivada de método.
  • 5:42 - 5:43
    Então como vamos fazer, né?
  • 5:43 - 5:46
    Então eu vou fazer aqui mesmo,
    aqui embaixo,
  • 5:46 - 5:48
    para vermos como que elas são similares.
  • 5:48 - 5:50
    Tá bom?
    Então vamos lá.
  • 5:50 - 5:51
    Eu vou colocar aqui,
    olha,
  • 5:51 - 5:57
    vou criar aqui
    um "Optional"
  • 5:57 - 5:59
    Então o que essa função vai retornar?
  • 5:59 - 6:02
    Ela vai retornar o objeto "Optional"
    do tipo "Contato".
  • 6:02 - 6:05
    Ela vai carregar um contato dentro dela.
  • 6:05 - 6:08
    E aí, seguindo aquela regra,
  • 6:08 - 6:10
    como que vai ficar aqui
    o nome da consulta?
  • 6:10 - 6:13
    Eu sei que o meu campo
    lá no banco de dados.
  • 6:13 - 6:16
    Na verdade, no banco de dados não,
    na classe, né?
  • 6:16 - 6:18
    Ela é a nossa classe Java.
  • 6:18 - 6:20
    Aqui deixo a minha que eu uso dela.
  • 6:20 - 6:24
    Olha só,
    é nome lá e tá em português inclusive, né?
  • 6:24 - 6:25
    Bacana.
  • 6:25 - 6:28
    Então porque vai ficar aqui sim, de vai.
  • 6:29 - 6:32
    Então esse fim de vai é obrigatório
  • 6:32 - 6:36
    isso aqui a JPA vai reconhecer
    como sendo uma pesquisa,
  • 6:36 - 6:39
    uma consulta que ela vai ter
    que construir.
  • 6:39 - 6:42
    Sai de baixo o que esse nome
  • 6:42 - 6:46
    tá bom e observa que eu coloquei o nome
    que olha com ele
  • 6:46 - 6:50
    maiúsculo,
    apesar de aqui estar com ele minúsculo.
  • 6:50 - 6:54
    Mas a JPL também
    entende o que é meu case aqui.
  • 6:54 - 6:58
    Tá bom interessado
    que esse pai de pai e de ela da JPR
  • 6:58 - 7:03
    e ele vai saber que o nome aqui
    apesar de tá com letra maiúscula,
  • 7:03 - 7:06
    ele sabe que está com letra maiúscula
    por conta do que eu quis.
  • 7:06 - 7:09
    Bom, e aí a gente vai colocar aqui, né?
  • 7:09 - 7:12
    Qual é o valor que deve ser passado
  • 7:12 - 7:15
    pra que essa consulta possa acontecer?
  • 7:15 - 7:19
    Tá bom,
    então essa vai ser a anatomia aqui,
  • 7:19 - 7:23
    a assinatura da classe
    que a gente vai ter que criar.
  • 7:23 - 7:25
    Beleza. E olha só.
  • 7:25 - 7:30
    Olha como é simples, a gente não vai
    nem precisar escrever aqui, já tá pequeno.
  • 7:30 - 7:35
    Então se você precisar fazer uma consulta
    e encontrar alguma coisa
  • 7:35 - 7:37
    que vai usar apenas um,
  • 7:37 - 7:41
    um parâmetro, um apenas um campo,
  • 7:41 - 7:44
    apenas uma propriedade do objeto,
  • 7:44 - 7:48
    então você faz dessa forma que você
    não precisa usar a JPA que é tá bom.
  • 7:48 - 7:49
    Legal.
  • 7:49 - 7:54
    Agora a gente vai construir um service
    e vai usar esse.
  • 7:54 - 7:58
    Esse método aqui é baseado em map
  • 7:58 - 8:01
    e se essa consulta é baseada
    em nome de método
  • 8:01 - 8:02
    é que a gente vai lá.
  • 8:02 - 8:04
    Então agora pro nosso serviço, né?
  • 8:04 - 8:07
    E a gente vai fazer essa consulta aqui.
  • 8:07 - 8:11
    Eu estou pensando eu tenho que fazer
    o seguinte ao invés de fazer pelo nome,
  • 8:11 - 8:14
    eu vou fazer pelo meio,
    porque a gente tem um email lá.
  • 8:14 - 8:17
    Eu acho que vai ficar mais legal
    porque a gente vai ter uma pelo nome
  • 8:17 - 8:21
    usando aqui na PQP
    e a gente vai ter aqui por email, tá?
  • 8:21 - 8:22
    Eu vou fazer assim
  • 8:22 - 8:26
    a gente até ter essa consulta disponível
    aqui no nosso link de contato.
  • 8:26 - 8:27
    Então vamos lá.
  • 8:27 - 8:30
    Então eu mudei aqui eu vou retornar
  • 8:30 - 8:34
    um option de contato,
    só que eu vou buscar o contato pelo email.
  • 8:34 - 8:35
    Então vai ser fornecido
  • 8:35 - 8:39
    o email para a gente localizar o contato
    na nossa base de dados.
  • 8:39 - 8:43
    Agora ficou legal e agora a gente
    vai criar então lá no nosso service
  • 8:43 - 8:47
    um método para fazer isso,
    para conseguir esse serviço, aí
  • 8:47 - 8:50
    a gente vai chamar aqui
    clicando que a gente vai ter também.
  • 8:50 - 8:53
    Aqui ele vai retornar o que?
  • 8:53 - 8:57
    O contato, exibição do teor
  • 8:57 - 8:59
    a gente vai chamar
  • 8:59 - 9:03
    de buscar contato pelo e-mail aqui.
  • 9:03 - 9:07
    Então, usando um nome em português mesmo,
    aqui não tem problema aonde tem que usar
  • 9:07 - 9:12
    o fim de vai e no repositório da gente
    lá no serviço não tem problema nenhum.
  • 9:12 - 9:15
    Eu posso usar o nome que eu quiser, tá?
  • 9:15 - 9:17
    E a gente vai passar aqui.
  • 9:17 - 9:20
    Olha, quem chamar esse método
    vai ter que me passar
  • 9:20 - 9:23
    uma string e vai representar o meu email.
  • 9:23 - 9:28
    E aí a gente
    vai retornar o Repository rico e o ponto.
  • 9:29 - 9:32
    E a gente tem agora
    o fim de vai e meio que
  • 9:32 - 9:35
    última função
    lá que a gente criou no nosso serviço
  • 9:35 - 9:38
    e a gente vai fornecer esse email
  • 9:38 - 9:40
    aqui pra quem chamar.
  • 9:40 - 9:45
    E lógico, olha aqui a gente está falando
    que ele vai retornar o contato.
  • 9:45 - 9:48
    Exibição de teor, né?
  • 9:48 - 9:52
    Só que lembra que o fim de pai e mail
    ele vai retornar para a gente
  • 9:52 - 9:54
    é um optional.
  • 9:54 - 9:57
    Então, na verdade, aqui
    olha o que a gente vai fazer,
  • 9:57 - 10:02
    a gente vai criar aqui
    o Optional é opcional,
  • 10:02 - 10:05
    do tipo contato.
  • 10:05 - 10:11
    Vamos chamar esse cara aqui
    de contato opcional e vai receber o que?
  • 10:11 - 10:14
    A resposta do nosso repositório, né?
  • 10:14 - 10:20
    Então esse carinha aqui vai retornar
    pra gente um objeto do tipo ótimo, beleza?
  • 10:20 - 10:24
    E aí, o que que a gente vai fazer
    a gente vai extrair, né?
  • 10:24 - 10:29
    E se esse contato de dentro desse objeto
    óptimo, a gente vai verificar que olha,
  • 10:29 - 10:35
    se o contato option nesse contato, ok,
    o preço presente, ou seja,
  • 10:35 - 10:40
    se tem um contato presente nesse objeto,
    contato ótimo, O que a gente vai fazer?
  • 10:40 - 10:43
    A gente vai retornar o meu contato.
  • 10:43 - 10:47
    Exibição de teor, passando esse contato.
  • 10:47 - 10:53
    Outro ponto gente bacana aí
    lembra que o nosso contato
  • 10:53 - 10:58
    exibição de teor
    ele tem um construtor que recebe o contato
  • 10:58 - 11:01
    e retorna a instância de um objeto contato
    exibição.
  • 11:01 - 11:03
    BT O legal é esse GET.
  • 11:03 - 11:05
    Ele está extraindo o objeto.
  • 11:05 - 11:08
    O contato está dentro desse contato, ok?
  • 11:08 - 11:09
    Legal, né?
  • 11:09 - 11:13
    E caso ele não encontre,
    que pode ser que tenha fornecido e-mail
  • 11:13 - 11:18
    que não existe o e-mail errado,
    então a gente vai lançar uma exceção
  • 11:18 - 11:23
    para dizer que esse esse usuário
    nesse contato está sendo buscado.
  • 11:23 - 11:24
    Ele não existe.
  • 11:24 - 11:30
    Então o usuário não encontrado Exception
    e vou passar aqui a frase Olha, contato
  • 11:30 - 11:34
    não encontrado
  • 11:34 - 11:38
    legal e vamo finalizar aqui
    então pronto, nosso serviço está aqui,
  • 11:38 - 11:41
    então vou buscar contato pelo email.
  • 11:41 - 11:44
    Ele precisa receber um e-mail né?
  • 11:45 - 11:47
    Ele vai retornar
    o contato exibição de teor,
  • 11:47 - 11:51
    só que o nosso feed de vai email
    ele retorna
  • 11:51 - 11:55
    um contato opcional,
    então a gente colocou aqui.
  • 11:55 - 11:58
    Criamos um contato, um objeto do tipo opt,
  • 11:58 - 12:01
    do tipo contato, não carregando um contato
  • 12:01 - 12:03
    e a gente vai verificar
    se existe esse contato.
  • 12:03 - 12:06
    Se ele estiver presente,
    a gente retorna o contato.
  • 12:06 - 12:11
    Exibição de teor da gente extrai
    o contato que está dentro do off
  • 12:11 - 12:12
    para poder construir esse objeto.
  • 12:12 - 12:13
    Contato, exibição.
  • 12:13 - 12:16
    BT Um sinal a gente lança aqui
    uma exceção do tipo usuário.
  • 12:17 - 12:18
    Então tá legal.
  • 12:18 - 12:21
    Agora a gente precisa criar
  • 12:21 - 12:22
    o endpoint, né?
  • 12:22 - 12:25
    Então
    a gente vai chegar no nosso controlador
  • 12:25 - 12:27
    e vamos criar esse point aqui.
  • 12:27 - 12:31
    Então vamos lá.
    Então vai ser que um arroba
  • 12:31 - 12:34
    em get map
  • 12:34 - 12:36
    e eu vou usar também parâmetro
    aqui tá gente?
  • 12:36 - 12:42
    Então vamos chamar aqui uma rua baguette
    map, a gente vai chamar aqui o Contatos
  • 12:42 - 12:46
    e a gente vai passar um parâmetro
    que vai ser o e mail, tá?
  • 12:46 - 12:49
    Então essa consulta
    ela vai ficar desse jeito aqui.
  • 12:49 - 12:53
    Olha, vai ficar API para os contatos.
  • 12:53 - 12:57
    Passando o parâmetro quarry string
    aqui meio que vai ser igual,
  • 12:58 - 13:02
    porque aí você vai tentar pingar aí
    o email que você tá querendo
  • 13:02 - 13:04
    consultar no banco.
  • 13:04 - 13:05
    Beleza, bacana.
  • 13:05 - 13:07
    E a gente vai fazer.
  • 13:07 - 13:09
    Então agora o nosso método,
  • 13:09 - 13:13
    esse tudo isso, ele vai retornar
    um contato execução de P.O.
  • 13:13 - 13:17
    Vamos buscar contato pelo e-mail,
  • 13:17 - 13:21
    nome do nosso, no nosso, da nossa função,
    do nosso método.
  • 13:21 - 13:26
    Quem chamar o buscar
    contato pelo email vai ter que passar
  • 13:26 - 13:27
    o email
  • 13:27 - 13:32
    e esse e-mail
    ele vai vir aqui pelo parâmetro da url.
  • 13:32 - 13:35
    Então a gente vai ter que um arroba
  • 13:35 - 13:38
    20 West RD né?
  • 13:38 - 13:40
    E quem é esse parâmetro?
  • 13:40 - 13:43
    A gente vai usar aqui.
  • 13:44 - 13:48
    Então o parâmetro que tá vindo aqui,
    que é o email, vai ser colocado
  • 13:48 - 13:53
    no valor da variável do argumento
    e da função buscar pelo ENEM.
  • 13:53 - 13:58
    E a implementação
    vai ser simplesmente um retornar.
  • 13:58 - 14:02
    E o nosso serve
    nesse ponto buscar contato pelo email.
  • 14:02 - 14:06
    Passando esse email que foi enviado
  • 14:06 - 14:10
    para a gente
    que envia parâmetro na URL bacaninha.
  • 14:10 - 14:13
    Então olha lá, vai ser uma pesquisa,
    então vai ser um GET,
  • 14:13 - 14:17
    vai ser uma consulta,
    vai ser uma requisição HTTP do tipo GET
  • 14:17 - 14:21
    e qual vai ser a requisição,
    barra, contatos,
  • 14:21 - 14:25
    completando na barra de contatos
    e vai ter um parâmetro e-mail
  • 14:25 - 14:29
    carregando o email do contato
    que está sendo buscado.
  • 14:29 - 14:32
    É esse e mail que vai ser fornecido aqui.
  • 14:32 - 14:36
    A gente vai substituir aqui na nossa
  • 14:36 - 14:38
    na no argumento
    aqui da nossa função, tá bom?
  • 14:38 - 14:41
    E aí a gente
    vai passar isso lá pro nosso serviço
  • 14:41 - 14:44
    e ele vai retornar
    assim, encontrar o email
  • 14:44 - 14:45
    equivalente lá.
  • 14:45 - 14:48
    Bacana, Então vamos restart
    aquela aplicação
  • 14:48 - 14:51
    pra gente poder
  • 14:51 - 14:57
    fazer essa consulta.
  • 14:57 - 14:58
    Prontinho!
  • 14:58 - 15:02
    Então olha, ela foi exportada com sucesso,
    não tivemos nenhum problema.
  • 15:02 - 15:05
    Então agora a gente vai fazer uma consulta
    por e-mail.
  • 15:05 - 15:07
    Então vamos lá.
  • 15:07 - 15:08
    Então eu vou pegar aqui.
  • 15:08 - 15:11
    Olha,
    eu não tenho aqui uma consulta pelo email,
  • 15:11 - 15:13
    então vou pegar essa consulta
    aqui pelo nome.
  • 15:13 - 15:16
    Eu vou duplicar ela,
    aí vou dar o nome que olha
  • 15:16 - 15:20
    e buscar pelo email
  • 15:20 - 15:24
    cliente vou clicar nela
    e a gente vai arrumar aqui essa url
  • 15:24 - 15:29
    nessa url ela não vai ser assim,
    não vou chamar que olha para contatos
  • 15:29 - 15:32
    como a gente vai usar parâmetro
    que a gente vai colocar aqui.
  • 15:32 - 15:36
    A interrogação é meio igual
  • 15:36 - 15:39
    e aí eu vou colocar o email da pessoa
    que eu estou buscando.
  • 15:39 - 15:41
    Então eu não me lembro dos e-mails
    cadastrados,
  • 15:41 - 15:43
    então vou pedir para listar todo mundo
    aqui.
  • 15:43 - 15:47
    Vamos supor que eu quero procurar
    alguém que olha que tem um e-mail.
  • 15:47 - 15:49
    João arroba meio ponto.
  • 15:49 - 15:51
    Olha o registro número oito.
  • 15:51 - 15:53
    Deixa eu dar um control c aqui.
  • 15:53 - 15:55
    Vamos dar uma olhadinha.
  • 15:55 - 16:00
    Vou problema aqui Então olha só,
    eu vou fazer uma busca nesse servidor
  • 16:00 - 16:02
    na porta 80.
  • 16:02 - 16:07
    Nesse recurso eu quero o contatos
    e vou passar aqui o parâmetro email
  • 16:07 - 16:12
    e o valor desse parâmetro e joão arroba
    meio ponto com um send.
  • 16:12 - 16:13
    Vamos ver se ele vai achar.
  • 16:13 - 16:17
    Olha olha lá, achou aqui o contato,
    se eu pegar aqui por exemplo
  • 16:17 - 16:22
    o ponto BR, esse email não existe,
    então se eu der um send
  • 16:22 - 16:27
    ele não achou
    1404 not found, ou seja, esse
  • 16:27 - 16:30
    esse recurso que você está buscando
    lá no servidor
  • 16:30 - 16:33
    não tem não, não está.
  • 16:33 - 16:34
    Então é isso.
  • 16:34 - 16:37
    Agora a gente também
    sabe como utilizar as consultas
  • 16:37 - 16:40
    utilizando ali
    as consultas derivadas de método.
  • 16:40 - 16:44
    Então você pode utilizar aquelas palavras
    chave naquelas keyword
  • 16:44 - 16:49
    que você tem
    ali na documentação da tabela. JPG
  • 16:49 - 16:54
    para construir as suas consultas baseadas
    no nome do método ali no repositório.
  • 16:54 - 16:57
    E aí você faz uma combinação
    das kill words
  • 16:57 - 17:02
    com os nomes dos campos
    que você tem lá na sua classe Java.
  • 17:02 - 17:05
    Então isso vai permitir que você crie
    também aí
  • 17:05 - 17:08
    consultas personalizadas
    de uma forma bastante simples.
Title:
JAD CAP03 2024 VA08 CONSULTAS DERIVADAS DE METODO
Video Language:
Portuguese, Brazilian
Duration:
17:12

Portuguese, Brazilian subtitles

Incomplete

Revisions Compare revisions