¿Cuál es la forma oficial de arranque de primavera para iniciar una aplicación java simple no basada en web?

Estoy en el proceso de convertir un proyecto simple de Java en una variante de arranque de primavera. La guía de referencia de Spring Boothttp://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/ ha sido muy útil en general, pero la mayoría de los ejemplos de configuración simple implican alguna aplicación basada en la web. El tutorial de inicio dehttps://spring.io/guides/gs/spring-boot/ El tutorial tampoco proporciona la respuesta que estoy buscando.

Tengo una claseHelloSpring que necesito ejecutar un método enprintHello(). He configurado las siguientes clases, colocadas en el mismo paquete para simplificar:

Aplicación.clase

@SpringBootApplication
public class Application {

    public static void main(String[] args) {
        SpringApplication.run(Application.class, args);
    }

}

HelloConfiguration.class

@Configuration
public class HelloConfiguration {

    @Bean
    public HelloSpring helloSpring(){
        HelloSpring hs = new HelloSpring();
        hs.printHello();
        hs.printHelloAgain();
        return hs;
    }

    @Autowired
    public HelloSpring hs;

}

HelloSpring.class

public class HelloSpring {

    public void printHello() {
        System.out.println("Hello Spring!");
    }

    @PostConstruct
    public void printHelloAgain() {
        System.out.println("Hello Spring?");
    }

}

Imprime (se omite el registro de primavera):

Hello Spring!
Hello Spring?
Hello Spring?

Sin embargo, no estoy seguro de la forma correcta de ejecutar mi clase HelloSpring.

Dado el ejemplo anterior, ¿cuál es la forma oficial de conectar y "ejecutar" una clase cuando se usa el arranque de primavera?

Respuestas a la pregunta(2)

Su respuesta a la pregunta