2015-12-10 16 views
6

Un ciao mondo con scintilla:Come restituire una pagina html statica con Spark Java?

get(new Route("/hello") { 
      @Override 
      public Object handle(Request request, Response response) { 
       response.type("text/html"); 
       return "<h1>Hello Spark MVC Framework!</h1>"; 
      } 
     }); 

Come posso restituire un file index.html statico invece?

Note:

  • Ho bisogno di questo per essere index.html nel vaso
  • nello spirito della semplicità della scintilla java, vorrei evitare il più possibile passare attraverso i modelli, che sarebbe eccessivo per una pagina statica.

risposta

4

È possibile farlo passando il percorso assoluto alla directory risorse statiche in questo metodo:

externalStaticFileLocation("/var/www/public"); 

o passando il percorso relativo a questo metodo:

staticFileLocation("/public"); 

chiamata questa prima di impostare qualsiasi percorso. Crea il tuo file index.html nella directory principale della directory delle risorse statiche.

+0

Grazie! E poi, come posso restituire questo file nel metodo get? – seinecle

+0

Tutti i file statici vengono restituiti tramite il metodo get. Per vedere il tuo index.html, apri il browser e digita http: // localhost: 4567 –

+0

Ho avuto alcune domande. In Spark Java, dov'è la directory delle risorse statiche? Inoltre, se un percorso sta gestendo/ciao /, un file index.html deve essere inserito in/hello /? Infine, possiamo usare un file .JSP? – codeshark

4

so che sono molto in ritardo alla festa, è possibile effettuare le seguenti operazioni:

  1. staticFiles.location("/public"); // crea una cartella chiamata 'public' sotto 'src/main/resources' cartella

  2. Quando l'applicazione viene inizializzata, chiamata il metodo precedente prima di uno qualsiasi degli routes o requests. Questo è molto importante.

  3. Nella tua "controller", è possibile aggiungere in questo modo:

Response.Redirect ("test.html"); return null;