Como executar um programa para sempre em Java? É System.in.read () a única maneira?

eu pegueieste código:

 28     public static void main(String[] args) throws IOException {
 29         HttpServer httpServer = startServer();
 30         System.out.println(String.format("Jersey app started with WADL available at "
 31                 + "%sapplication.wadl\nTry out %shelloworld\nHit enter to stop it...",
 32                 BASE_URI, BASE_URI));
 33         System.in.read();
 34         httpServer.stop();
 35     } 

A linha 33 "System.in.read ()" significa que irá bloquear até que haja entrada? Isso também funcionará ao iniciar o aplicativo Java usando o script UNIX rc - não iniciado manualmente a partir de uma linha de comando?

Eu gostaria de escrever um aplicativo Java para ouvir conexões HTTP. O aplicativo será iniciado automaticamente quando o sistema inicializar (usando scripts UNIX rc). Isso significa que o aplicativo será executado continuamente - teoricamente para sempre, até que intencionalmente parado. Qual é a melhor maneira de implementar isso no método main () do Java?

questionAnswers(5)

yourAnswerToTheQuestion