Buenas!
¿Alguién podría explicarme cuál es la diferencia entre estas dos porciones de código? Ya que en ambos casos se imprime el "Hola Mundo" por consola.
Buscando info sobre el tema, encontré que hacen uso del "@component" sobre el "public static void main"; que aquí en el video de la clase la Instructora no lo aplica en el código de ejemplo. ¿Que función cumple? ¿Afecta en algo?
package com.aluracursos.screenmatch;
@SpringBootApplication
public class ScreenmatchApplication {
public static void main(String[] args) {
SpringApplication.run(ScreenmatchApplication.class, args);
System.out.println("Hola Mundo desde Spring");
}
}
2da. opción. Haciendo uso del "implements"
package com.aluracursos.screenmatch;
import org.springframework.boot.CommandLineRunner;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class ScreenmatchApplication implements CommandLineRunner {
public static void main(String[] args) {
SpringApplication.run(ScreenmatchApplication.class, args);
//System.out.println("Hola Mundo desde Spring");
}
@Override
public void run(String... args) throws Exception {
System.out.println("Hola Mundo desde Spring");
}
}
Desde ya, gracias!