Inhaltsverzeichnis
3. Die drei Komponenten der URL
4. So ändern Sie die Standardportnummer von Tomcat
5. Warum brauchen wir dynamische Webseiten basierend auf der BS-Architektur?
6. Geben Sie das aktuelle Datum auf der Webseite aus
10. Drei Annotationsmethoden in der JSP-Datei:
11. Häufige Fehler beim Betrieb des Webs
13. Registrierungsschnittstelle
1. Was ist JSP?
JSP ist das Dateiformat von Java+HTML+CSSjs
JSP ist im Wesentlichen eine Java-Datei
Tomcat wandelt JSP-Dateien in Java-Dateien um
jvm (Java Virtual Machine) wandelt Java zur Kompilierung in eine Klassendatei um
2. Einführung in cs und bs
CS befindet sich zwischen Client (Client) und Server (Server). Seine Hauptmerkmale sind starke Interaktivität, sicherer Zugriffsmodus, geringer Netzwerkverkehr, schnelle Reaktion und gute Verarbeitung großer Datenmengen. Das Programm dieser Struktur wird jedoch gezielt entwickelt, die Änderungen sind nicht flexibel genug aufrechtzuerhalten und die Verwaltung ist schwierig. Darüber hinaus muss jeder Client dieser Struktur das entsprechende Client-Programm installieren, die Verteilungsfunktion ist schwach und die Kompatibilität ist schlecht, und es kann nicht schnell bereitgestellt, installiert und konfiguriert werden, sodass es an Vielseitigkeit mangelt und große Einschränkungen aufweist.
Zwischen bs-Browser (Browser) und Server (Server) muss nur ein Server (Server) installiert und gewartet werden. Im Vergleich zu cs sind seine Hauptmerkmale starke Verteilung, bequeme und einfache Wartung, einfache Entwicklung und starke gemeinsame Nutzung, aber die Daten Sicherheitsprobleme, hohe Anforderungen an den Server und langsame Datenübertragungsgeschwindigkeit sind für alle offensichtlich. Zum Beispiel: Es ist schwierig, große Datenmengen über einen Browser einzugeben oder auf einen Bericht zu antworten und einen speziellen Zweck auszudrucken. Komplexere Anwendungsstrukturen lassen sich schwieriger umsetzen.
Gängige CS-Architektur: QQ, WeChat
Gemeinsame bs-Architektur: Baidu
Natürlich gibt es auch einige mit sowohl cs- als auch bs-Architekturen, wie zum Beispiel die gemeinsame B-Station
3. Die drei Komponenten der URL
http(Protokoll)://localhost(host):8080(port)
4. So ändern Sie die Standardportnummer von Tomcat
Doppelklicken Sie auf Ihren Server
Klicken Sie zum Ändern
Wie löst man, wenn ein Portkonflikt festgestellt wird?
Ändern Sie den Port oder starten Sie neu
5. Warum brauchen wir dynamische Webseiten basierend auf der BS-Architektur?
Bevor wir das Projekt ausführen
Doppelklicken Sie zunächst auf unseren Tomcat-Server
Hinweis: Wenn auf dem aktuellen Server ein Projekt ausgeführt wird, muss das Projekt entfernt werden, bevor es ausgewählt werden kann
Treffen Sie die folgenden Auswahlmöglichkeiten:
Nach dem Speichern, wenn wir unser Projekt ausführen
Das von uns geschriebene Projekt wird von Tomcat zur Bereitstellung nach Webapps verschoben
Dann werden Sie feststellen, dass webo2 im Release-Verzeichnis von webapps angezeigt wird, unserem neuen Projekt
Gleichzeitig wird es auch ein web02 in unserem Arbeitszusammenstellungsverzeichnis geben
wird irgendwann zu einer Java-Datei
Wenn Sie es ausführen möchten, wird es zu einer Klassendatei
Im Compiler haben wir geschrieben
Öffnen Sie unsere Java-Datei
Der gesamte auf der Webseite geschriebene Code wird von out.write() in Java-Code konvertiert.
Dies ist ein Konvertierungsprozess, was bedeutet, dass die JSP-Dateien, die Sie in JSP schreiben, schließlich zu Java-Dateien werden
6. Geben Sie das aktuelle Datum auf der Webseite aus
<%@page import="java.util.Date"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>web02</title>
</head>
<body>
<%
out.print(new Date());
%>
</body>
</html>
Der Effekt ist wie folgt:
7. Die drei Phasen, die der Webcontainer bei der Verarbeitung von JSP-Dateianforderungen durchlaufen muss
Darunter wird jede Ihrer Anfragen nur zum ersten Mal zusammengestellt, und wenn Sie zum zweiten Mal eine Anfrage stellen, werden Sie feststellen, dass sie zusammengestellt wurde. Es ist nicht schwer festzustellen, dass die Eingabe vieler Webseiten lange dauert Zum ersten Mal, aber zum zweiten Mal werden sie viel schneller kompiliert als zuvor. Der Grund dafür ist, dass es kompiliert wurde, das ist der Grund. Wenn die Person gelöscht wird, muss sie neu kompiliert werden.
Hinweis: Wenn die JSP-Datei geändert wird, übersetzt und kompiliert der Webcontainer die JSP-Datei neu
8.jsp-Seitenelemente
9. Seitenbefehl
- Syntax: <%@ Seite Attribut 1="Attributwert" Attribut 2="Attributwert 1, Attributwert 2"...Attribut n="Attributwert n"%>
- Definieren Sie Eigenschaften für die gesamte Seite, indem Sie darin mehrere Eigenschaften festlegen
Attribute |
beschreiben |
Standardeinstellungen |
Sprache |
Gibt die von JSP-Seiten verwendete Skriptsprache an |
Java |
importieren |
Verwenden Sie dieses Attribut, um auf die in der Skriptsprache verwendeten Klassendateien zu verweisen |
keiner |
Inhaltstyp |
Wird verwendet, um die von JSP-Seiten verwendete Kodierungsmethode anzugeben |
Text/HTML, ISO-8859-1 |
10. Drei Annotationsmethoden in der JSP-Datei:
- HTML-Kommentare: <!-- html comments --> Nachteile: unsicher, erhöhte Belastung durch Netzwerkübertragung
- JSP-Kommentar: <%-- JSP-Kommentar--%>
- Kommentar im JSP-Skript: <% //einzeiliger Kommentar%> <% /*mehrzeiliger Kommentar*/ %>
11. Häufige Fehler beim Betrieb des Webs
- Der Tomcat-Dienst ist nicht gestartet, oder der Tomcat-Dienst ist nicht am erwarteten Port gestartet -> prüfen Sie, ob Tomcat normal läuft
- Versuchen Sie, das Webprogramm auszuführen, ohne die Webanwendung bereitzustellen -> prüfen Sie, ob die Webanwendung normal bereitgestellt wird
- Beim Ausführen wird die URL falsch eingegeben -> URL-Pfad prüfen
- Das Verzeichnis, in dem die Datei gespeichert ist, kann nicht extern referenziert werden, z. B.: Die Datei wird in einem Ordner wie WEB-INF, META-INF abgelegt -> Überprüfen Sie den Speicherort der Datei
12. Integrierte JSP-Objekte
- Integrierte JSP-Objekte sind eine Reihe von Objekten, die vom Webcontainer erstellt werden
- Die Namen der in JSP integrierten Objekte sind für JSP reservierte Wörter
- Integrierte JSP-Objekte sind Objekte, die direkt in JSP-Seiten verwendet werden können, ohne „new“ zum Abrufen von Instanzen zu verwenden
Zum Beispiel:
Kann ohne Neuware verwendet werden.
Gemeinsame integrierte Objekte
gängige Anfragemethoden
Methodenname |
veranschaulichen |
String getParameter(Stringname) |
Rufen Sie Seitenübermittlungsdaten entsprechend dem Namen der Seitenformularkomponente ab |
String[ ] getParameterValues(String-Name) |
Rufen Sie die Anforderungsdaten des Benutzers ab, wenn eine Seitenformularkomponente mehreren Werten entspricht |
void setCharacterEncoding(String charset) |
Geben Sie die Codierung jeder Anforderung an und legen Sie sie fest, bevor Sie getParameter() aufrufen. Dadurch kann das Problem der verstümmelten chinesischen Zeichen gelöst werden |
String getRemoterAddr() |
Gibt die IP-Adresse des Clients zurück, der die Anfrage gesendet hat |
Codeanzeige
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<h1>这是处理登录请求的界面</h1>
<%
//内置用户: sa 123
//获取到用户提交的表单信息
String username = request.getParameter("username");//请求中获取数据
String password = request.getParameter("password");//请求中获取数据
//从请求中获取数据(类型全部是string,必须自己做转换)
String age = request.getParameter("age");
out.print(username + "-" + password + "-" + age);
String ts[] = request.getParameterValues("habit");//接收到多个具备相同name的值
//遍历
String my_habit = "";
for (String habit : ts) {
System.out.print(habit);//显示在控制台
my_habit += habit + ",";//字符串拼接
}
//存在数据库中应该为一个数据
out.print(my_habit);
my_habit.split(",");
//用于做登录验证
if ("sa".equals(username) && "123".equals(password)) {
out.print("登录成功");
} else {
out.print("登录失败");
}
%>
13. Registrierungsschnittstelle
<form name="form1" method="post" action="reginfo.jsp">
<table border="0" align="center">
<tr> <td>用户名</td><td> <input type="text" name="name"></td></tr>
<tr><td>密码</td><td > <input type="password" name="pwd"> </td></tr>
<tr> <td>hello world</td><td>
<input type="checkbox" name="channel" value="报刊">报刊
<input type="checkbox" name="channel" value="网络">网络
<input type="checkbox" name="channel" value="推荐"> 推荐
<input type="checkbox" name="channel" value="电视"> 电视
</td></tr>
<!-- 以下是提交、取消按钮 -->
<button>提交</button>
</table>
</form>
Schnittstelle zum Lesen von Informationen
<%
//读取用户名和密码
String name = request.getParameter("name");
String pwd = request.getParameter("pwd");
//读取复选框选择项
String[] channels = request.getParameterValues("channel");
if (channels != null) {
for (int i = 0; i < channels.length; i++) {
out.println(channels[i]);
}
}
%>
14. Wie kann das Problem gelöst werden, wenn die chinesische Ausgabe verstümmelt ist?
Während der Seitenentwicklung gibt es mehrere Einstellungen für die Zeichensatzkodierung. Wir müssen nur den Zeichensatz festlegen, der chinesische Zeichen auf der Seite unterstützt. wie:
request.setCharacterEncoding("UTF-8");
Das heutige Teilen ist da!