Wie erzeuge ich eine HTML-Antwort in einem Java-Servlet?Generieren einer HTML-Antwort in einem Java-Servlet
Antwort
Sie benötigen eine doGet-Methode haben, wie:
public void doGet(HttpServletRequest request,
HttpServletResponse response)
throws IOException, ServletException
{
response.setContentType("text/html");
PrintWriter out = response.getWriter();
out.println("<html>");
out.println("<head>");
out.println("<title>Hola</title>");
out.println("</head>");
out.println("<body bgcolor=\"white\">");
out.println("</body>");
out.println("</html>");
}
Sie this Link für eine einfache Hallo Welt Servlet
Sie normalerweise vorwärts die Anforderung an eine JSP für die Anzeige sehen. JSP ist eine View-Technologie, die eine Vorlage zum Schreiben von HTML/CSS/JS in einfacher Form bietet und die Möglichkeit bietet, mit Hilfe von Taglibs und EL mit Backend-Java-Code/Variablen zu interagieren. Sie können den Seitenfluss mit Taglibs wie JSTL steuern. Sie können beliebige Backend-Daten als Attribut in einem beliebigen Anforderungs-, Sitzungs- oder Anwendungsbereich festlegen und EL (die ${}
Dinge) in JSP verwenden, um auf diese zuzugreifen/sie anzuzeigen.
Kickoff Beispiel:
@WebServlet("/hello")
public class HelloWorldServlet extends HttpServlet {
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String message = "Hello World";
request.setAttribute("message", message); // This will be available as ${message}
request.getRequestDispatcher("/WEB-INF/hello.jsp").forward(request, response);
}
}
Und /WEB-INF/hello.jsp
wie folgt aussehen:
<!DOCTYPE html>
<html lang="en">
<head>
<title>SO question 2370960</title>
</head>
<body>
<p>Message: ${message}</p>
</body>
</html>
Wenn http://localhost:8080/contextpath/hello Öffnen wird diese
Message: Hello World
im Browser anzeigen.
Dies hält den Java-Code frei von HTML-Unordnung und verbessert die Wartbarkeit erheblich. Um mit Servlets mehr zu lernen und zu üben, fahren Sie mit den folgenden Links fort.
- Our Servlets wiki page
- How do servlets work? Instantiation, sessions, shared variables and multithreading
- doGet and doPost in Servlets
- Calling a servlet from JSP file on page load
- How to transfer data from JSP to servlet when submitting HTML form
- Show JDBC ResultSet in HTML in JSP page using MVC and DAO pattern
- How to use Servlets and Ajax?
- Servlet returns "HTTP Status 404 The requested resource (/servlet) is not available"
Durchsuchen Sie auch the "Frequent" tab of all questions tagged [servlets], um häufig gestellte Fragen zu finden.
Ist das immer noch ein gültiger Ansatz?Ich höre immer wieder, dass unser Hauptarchitekt sagt, dass wir JSP überhaupt nicht verwenden sollen, aber dann frage ich mich, wie ich den gesamten HTML-Code erstellen soll. Erstellen Sie jedes Element einzeln nacheinander? Das dauert wahrscheinlich ewig. – Timo
@Timo: entweder haben Sie Ihren Architekten falsch verstanden, oder Ihr Architekt muss http://stackoverflow.com/questions/3177733/how-to-avoid-java-code-in-jsp-files lesen, http: // stackoverflow. com/questions/2095397/what-is-the-difference-zwischen-jsf-servlet-and-jsp und http://stackoverflow.com/tags/servlets/info Wenn immer noch nicht überzeugt, Feuer selbst und suchen Sie nach einem anderen Projekt. – BalusC
dies .... das sollte als beste Antwort markiert werden! –
- 1. Generieren einer Klasse aus einem Objekt (JavaScript)
- 2. Generieren einer Wortliste in C++
- 3. Generieren von HTML in einem WCF-Dienst
- 4. generieren String aus einem Wörterbuch
- 5. Generieren einer Website-Bildschirmaufnahme in iOS
- 6. Generieren einer eindeutigen ID in PHP
- 7. Generieren einer Verknüpfung innerhalb eines Controllers mit einem HTTP-Verb
- 8. Generieren verschachtelter Routen in einem benutzerdefinierten Generator
- 9. Generieren einer Reihe von Daten
- 10. Generieren einer Zufallszahl ohne Bereich
- 11. Generieren einer Zeichenfolge mehrerer Kopien einer Teilzeichenfolge in Vim
- 12. eine Funktion Generieren einer Matrix in R
- 13. generieren reicht von Einträgen in einer Datei
- 14. Generieren einer beweglichen Summenvariable in R
- 15. Algorithmus zum Generieren einer Klammermodellliste in Python
- 16. Generieren von HTML-Codedokumentation in einer Datei
- 17. generieren monatlich basierend Datensätze in einer Periode
- 18. Generieren einer gekennzeichneten eindeutigen ID in Python
- 19. Schlüsselwörter automatisch aus einem PDF generieren
- 20. Generieren Beobachter aus einer Schleife (in einer Richtlinie) funktioniert nicht
- 21. Generieren einer Liste - nichts passiert
- 22. Monogame - Generieren einer Kachel Karte
- 23. Generieren einer Zufallszahl unter super.ViewDidLoad
- 24. Generieren einer Faktentabelle aus einer Präsentation linkbase
- 25. Generieren einer 2-stelligen Ganzzahl
- 26. Generieren einer Zufallszahl mit einer ungleichmäßigen Verteilung
- 27. Generieren Sie ein Bild einer Ansicht in einer bestimmten Größe?
- 28. Automatisch DataTable aus einem XML generieren
- 29. Generieren einen Zufallswert von einem benutzerdefinierten Datentyp in Haskell
- 30. Generieren eines Wellenformbilds aus einer Audiodatei
Es wird nicht empfohlen, auf diese Weise HTML von einem Servlet zu erzeugen. Das ist ein Vintage-Idiom von 1998. Eine bessere Lösung wäre die Verwendung einer JSP. – duffymo
Oder verwenden Sie einige Framework/Tools wie Dojo, GWT etc. und halten Sie die Client-Seite html komplett getrennt von serverseitigem Code. – saugata
@duffymo: Aber manchmal, in bestimmten Fällen möchte ich laufende HTML-Antwort von Servlet generieren. Nicht jeder ist für MVC geeignet. –