1
resposta

Estou confuso quanto a este passo...

Está certo? Poderiam dar mais detalhes de como fazer isso, por favor?

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

1 resposta

Espero que ajude :

Pelo que entendi, você está trabalhando em um projeto Java chamado "banking-service" e precisa mapear dados de endereços. A estrutura do seu projeto parece estar organizada da seguinte forma:

banking-service: src main java br.com.alura.service.http Agencia AgenciaHttp Endereco SituacaoCadastral SituacaoCadastralHttpService domain http resources test target dockerignore gitignore mvnw mvnw.cmd pom.xml Você mencionou que tem as classes Agencia, AgenciaHttp e Endereco. Imagino que você queira mapear os dados de endereço para a classe Endereco.

Aqui estão algumas opções de como você pode fazer isso:

  1. Mapeamento manual:

Você pode criar métodos Getters e Setters na classe Endereco para acessar e modificar os atributos de endereço. Em seguida, na classe AgenciaHttp ou Agencia, você pode criar instâncias da classe Endereco e atribuir os valores dos atributos manualmente.

Exemplo:

Java

// Classe Endereco public class Endereco { private String logradouro; private String numero; private String complemento; private String bairro; private String cidade; private String estado; private String cep;

// Getters e Setters
// ...

}

// Classe AgenciaHttp ou Agencia public class AgenciaHttp { // ...

public void cadastrarAgencia(Agencia agencia, Endereco endereco) {
    // ...

    Endereco novoEndereco = new Endereco();
    novoEndereco.setLogradouro(endereco.getLogradouro());
    novoEndereco.setNumero(endereco.getNumero());
    // ...

    agencia.setEndereco(novoEndereco);

    // ...
}

} 2. Usando bibliotecas de mapeamento:

Você pode usar bibliotecas como ModelMapper ou MapStruct para automatizar o processo de mapeamento. Essas bibliotecas usam convenções de nomenclatura ou anotações para mapear automaticamente os atributos de classes diferentes.

Exemplo com ModelMapper:

Java

// Dependência no pom.xml org.modelmapper modelmapper 3.1.0

// Classe AgenciaHttp ou Agencia public class AgenciaHttp { private ModelMapper modelMapper = new ModelMapper();

public void cadastrarAgencia(Agencia agencia, Endereco endereco) {
    // ...

    Endereco novoEndereco = modelMapper.map(endereco, Endereco.class);
    agencia.setEndereco(novoEndereco);

    // ...
}

} 3. Usando frameworks de persistência:

Se você estiver usando frameworks como JPA (Java Persistence API) ou Hibernate, eles oferecem recursos de mapeamento de entidades para o banco de dados. Nesses casos, você precisaria anotar suas classes com as anotações JPA ou Hibernate para definir o mapeamento.

Exemplo com JPA:

Java

// Classe Endereco @Entity public class Endereco { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id;

private String logradouro;
// ...

// Getters e Setters
// ...

}

// Classe Agencia @Entity public class Agencia { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id;

// ...

@OneToOne
private Endereco endereco;

// Getters e Setters
// ...

}