Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
3
respuestas

[Duda] Constructor en DatosListadoMedico

Hola, me gustaría saber mas de como fue que se creo el constructor de la clase "DatosListadoMedico", ya que esta clase es un Record y al intentar hacerlo como se ha venido haciendo en los cursos, por ejemplo: "this.nombre = medico.getNombre(); this.documento = medico.getDocumento() ...." no compila el código de esta manera.

3 respuestas

Hola Daniel buenas tardes, sería algo así, espero te ayude.

    this(medico.getId(),
            medico.getNombre(), 
            medico.getEspecialidad().toString(), 
            medico.getDocumento(),
            medico.getEmail());

Hola Daniel, Este es el constructor:

public DatosListadoMedico(Medico medico){
        this(medico.getNombre(),medico.getEspecialidad().toString(),
        medico.getDocumento(), medico.getEmail());
    }

A mi me compila bien, si se te presenta algún error, proporciona la información.

Por si no te queda claro para que es el constructor aqui tiene una breve explicación. Método listadoMedico

  • @GetMapping: Esta anotación indica que este método manejará las solicitudes GET para el endpoint asociado. En este caso, no se especifica un path específico, por lo que el método se mapeará al path base del controlador.

  • List: El tipo de retorno del método es una lista de objetos DatosListadoMedico, que será devuelta como respuesta a la solicitud.

  • medicoRepository.findAll(): Este método utiliza el repositorio medicoRepository para recuperar todos los médicos de la base de datos. Suponiendo que tienes una implementación adecuada del repositorio, esto buscará y devolverá todos los registros de la tabla "medicos".

  • .stream(): El método findAll() devuelve un iterable de médicos, y al llamar a .stream() se convierte en un flujo de elementos.

  • .map(DatosListadoMedico::new): Utilizando la operación map, se crea un nuevo objeto DatosListadoMedico para cada médico en el flujo. Aquí se está aprovechando una referencia a constructor para crear los objetos DatosListadoMedico. Esto asume que DatosListadoMedico tiene un constructor que acepta un objeto Medico como parámetro.

  • .toList(): Finalmente, se utiliza el método toList() para convertir el flujo de objetos DatosListadoMedico en una lista.

Espero Haber ayudado!

Creo que tengo un problema similar, me podrían ayudar porque no está compilando si el constructor está correcto?

gracias

Ingrese aquí la descripción de esta imagen para ayudar con la accesibilidad