2015-12-10 1 views
6

A Hallo Welt mit Funke:Wie kann ich eine statische HTML-Seite mit Spark Java zurückgeben?

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

Wie kann ich eine statische Datei index.html stattdessen zurückgeben?

Hinweise:

  • ich diese index.html müssen in dem Glas
  • im Geist der Einfachheit des Funken Java sein, würde Ich mag so viel wie möglich durch Vorlagen gehen zu vermeiden, dass wäre für eine statische Seite übertrieben.

Antwort

4

Sie können dies tun, indem Sie den absoluten Pfad zu Ihrem statischen Ressourcen-Verzeichnis in dieser Methode übergeben:

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

Oder durch den relativen Pfad in dieser Methode übergeben:

staticFileLocation("/public"); 

Rufen Sie diese bevor Sie eine Route festlegen. Erstellen Sie Ihre index.html-Datei im Stammverzeichnis Ihres statischen Ressourcenverzeichnisses.

+0

Vielen Dank! Und dann, wie gebe ich diese Datei in der Methode Get zurück? – seinecle

+0

Alle statischen Dateien werden über die Methode get zurückgegeben. Um Ihre index.html zu sehen, öffnen Sie einfach Ihren Browser und geben http: // localhost: 4567 ein –

+0

Ich hatte ein paar Fragen. In Spark Java, wo ist das statische Ressourcenverzeichnis? Wenn eine Route mit/hallo/behandelt wird, sollte eine index.html Datei in/hallo /? Können wir schließlich eine .JSP-Datei verwenden? – codeshark

4

Ich weiß, ich bin sehr spät zur Party, können Sie wie folgt vorgehen:

  1. staticFiles.location("/public"); // erstellen Sie einen Ordner 'public' unter 'src/main/resources' Ordner

  2. Wenn die App initialisiert wird, Aufruf aufgerufen das obige Verfahren vor einem der routes oder requests. Dies ist sehr wichtig.

  3. In Ihrem "controller", können Sie es wie folgt hinzu:

response.redirect ("test.html"); null zurückgeben;

Verwandte Themen