Verwenden Sie das Namensattribut, das Wertattribut und das Formular-Tag [Java].

Einführung

Als ich versuchte, eine Webanwendung mit Java zu erstellen, war ich neu in HTML und hatte es schwer. In diesem Artikel werde ich erklären, wie Daten mit dem Formular </ font> gesendet werden, das in HTML- und Web-Apps leicht zu überspringen ist.

Geben Sie Ihren Namen, Ihr Geschlecht und Ihr Alter ein und klicken Sie auf die Schaltfläche "Weiter", um die Seite zu ändern und den eingegebenen Inhalt anzuzeigen. Die Umgebung ist Eclipse.

Erstellen Sie einen Eingabebildschirm

Erstellen Sie input.jsp als Eingabebildschirm. HTML wird in einem Format geschrieben, das in <> eingeschlossen ist und als -Tag </ font> bezeichnet wird. Der vom Tag umgebene Teil heißt Element </ font>. (Beispiel: Der vom HTML-Tag umgebene Teil ist das HTML-Element.) Tags können Einstellungen zugewiesen werden, die als Attribute </ font> bezeichnet werden. (Beispiel: Sie können ein Textfeld oder ein Optionsfeld erstellen, indem Sie das Typattribut des Eingabe-Tags ändern.)

Nur das HTML-Element, aber die Quelle von input.jsp ist wie folgt.

input.jsp


<html lang="ja">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>input</title>
</head>
<body>
	<h2>Eingabeformular</h2>
	<table border="1">
		<tr>
			<th>Nachname</th>
			<td><input type="text"></td>
			<th>Name</th>
			<td><input type="text"></td>
		</tr>
		<tr>
			<th>Sex</th>
			<td>männlich:<input type="radio">Weiblich:<input type="radio"></td>
		</tr>
		<tr>
			<th>Alter</th>
			<td>
				<select>
					<option>Unter 10 Jahren
					<option>10er
					<option>20er Jahre
					<option>30er Jahre
					<option>Vierziger Jahre
					<option>50er Jahre
					<option>60 Jahre und älter
				</select>
			</td>
		</tr>
		<tr>
			<td><input type="submit" value="Nächster"></td>
		</tr>
	</table>
</body>
</html>

Dann wird ein Bildschirm ohne einen solchen Sinn fertiggestellt. Dies ist jedoch unvollständig. Nichts passiert, wenn ich auf die Schaltfläche "Weiter" klicke. Die folgenden zwei Punkte reichen nicht aus, um diese Webanwendung zu vervollständigen. (1) Mechanismus zum Beibehalten des eingegebenen Wertes als Daten ② Mechanismus zum Übergeben von Daten an die nächste Seite

Namensattribut und Wertattribut </ font> sind erforderlich, um ① zu löschen, dh um Daten zu speichern. Formular-Tag </ font> ist erforderlich, um ② zu löschen, dh Daten zu übergeben.

Namens- und Wertattribute

Wenn Sie die Namens- und Wertattribute hinzufügen, sieht input.jsp folgendermaßen aus: Das Bildschirmlayout entspricht genau dem oben eingefügten.

input.jsp


<html lang="ja">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>input</title>
</head>
<body>
	<h2>Eingabeformular</h2>
	<table border="1">
		<tr>
			<th>Nachname</th>
			<td><input type="text" name="sei"></td>
			<th>Name</th>
			<td><input type="text" name="mei"></td>
		</tr>
		<tr>
			<th>Sex</th>
			<td>männlich:<input type="radio"  name="sex" value="male">
Weiblich:<input type="radio"  name="sex" value="female"></td>
		</tr>
		<tr>
			<th>Alter</th>
			<td>
				<select name="age">
					<option value="9">Unter 10 Jahren
					<option value="10">10er
					<option value="20">20er Jahre
					<option value="30">30er Jahre
					<option value="40">Vierziger Jahre
					<option value="50">50er Jahre
					<option value="60">60 Jahre und älter
				</select>
			</td>
		</tr>
		<tr>
			<td><input type="submit" value="Nächster"></td>
		</tr>
	</table>
</body>
</html>

Namensattribut im Textfeld, Namens- und Wertattribute auf dem Optionsfeld, Dem Pulldown wurden Namens- und Wertattribute hinzugefügt. Das Wertattribut wird im Textfeld nicht beschrieben, da der tatsächlich eingegebene Wert als Wert des Wertattributs behandelt wird. Der Wert des Namensattributs und der Wert des Wertattributs werden als Satz übergeben. Wenn Sie beispielsweise ein Männchen mit dem Optionsfeld auswählen, wird es als (Name = "Geschlecht", Wert = "Männchen") übergeben.

Formular-Tag

Fügen Sie als Nächstes das Formular-Tag zum Quellcode hinzu. Schreiben Sie das Formular-Tag so, dass es das Element der Daten, die Sie senden möchten, und die Schaltfläche, auf die der Benutzer beim Senden der Daten klickt, umgibt.

input.jsp


<html lang="ja">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>input</title>
</head>
<body>
	<h2>Eingabeformular</h2>
	<form action="http://localhost:8080/QiitaProject/output.jsp" method="post">
		<table border="1">
			<tr>
				<th>Nachname</th>
				<td><input type="text" name="sei"></td>
				<th>Name</th>
				<td><input type="text" name="mei"></td>
			</tr>
			<tr>
				<th>Sex</th>
				<td>männlich:<input type="radio"  name="sex" value="male">
Weiblich:<input type="radio"  name="sex" value="female"></td>
			</tr>
			<tr>
				<th>Alter</th>
				<td>
					<select name="age">
						<option value="9">Unter 10 Jahren
						<option value="10">10er
						<option value="20">20er Jahre
						<option value="30">30er Jahre
						<option value="40">Vierziger Jahre
						<option value="50">50er Jahre
						<option value="60">60 Jahre und älter
					</select>
				</td>
			</tr>
			<tr>
				<td><input type="submit" value="Nächster"></td>
			</tr>
		</table>
	</form>
</body>
</html>

In diesem Programm sind alle Daten, die Sie senden möchten, und die Schaltflächen, auf die Sie beim Senden klicken, im Tabellenelement enthalten. Also habe ich das Formular-Tag so geschrieben, dass es das Talble-Element umgibt. Die Formular-Tag-Attribute umfassen das Aktionsattribut </ font> und das Methodenattribut </ font>. Im Aktionsattribut die URL des Übergangsziels, Geben Sie im Methodenattribut die Methode zum Senden an.

Da der Server lokal eingerichtet ist, lautet die URL localhost. Ich habe einen Beitrag für das Aktionsattribut angegeben. Sie können Daten auch senden, indem Sie get angeben. Beim Umgang mit streng vertraulichen Informationen wie persönlichen Informationen wird jedoch häufig die Verwendung von Post verwendet.

Ich habe tatsächlich die folgenden Daten eingegeben und auf die Schaltfläche "Weiter" geklickt. input3.PNG

Sie haben die Daten erfolgreich gesendet. Als nächstes werde ich erklären, wie man die gesendeten Daten erhält.

Daten abrufen und anzeigen

Verwenden Sie den Anforderungsbereich </ font>, um die Daten abzurufen. Alle zuvor eingegebenen Daten werden im Anforderungsbereich gespeichert. Daher ist es auf dem Bildschirm für das Übergangsziel erforderlich, die Daten im Anforderungsbereich zu erfassen.

output.jsp


<html lang="ja">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>output</title>
</head>
<body>
	<h2>Profil</h2>
	
	<%
		request.setCharacterEncoding("UTF-8");
	
		String sei = request.getParameter("sei");
		String mei = request.getParameter("mei");
		
		String sex = request.getParameter("sex");
		String age = request.getParameter("age");
		
		out.println("Nachname:" + sei + "<br>");
		out.println("Name:" + mei + "<br>");
		if(sex.equals("male")){
			out.println("Geschlecht männlich<br>");
		}else{
			out.println("Geschlecht Weiblich<br>");
		}
		
		if(age.equals("9")){
			out.println("Alter: Unter 10 Jahren<br>");
		}else if(age.equals("60")){
			out.println("Alter: 60 Jahre und älter<br>");
		}else{
			out.println("Alter:" + age + "Ersatz<br>");
		}
	%>
</body>
</html>

Verwenden Sie die getParameter-Methode </ font>, um die Daten aus dem Anforderungsbereich abzurufen. Geben Sie den Wert des Namensattributs im Argument der Methode getParameter an. Auf diese Weise können Sie den Wert des Wertattributs abrufen, der dem Namensattributwert des Arguments entspricht. Zu diesem Zeitpunkt ist der erfasste Wert immer Zeichenfolgentyp </ font>. Wenn Sie beispielsweise einen ganzzahligen Wert erhalten möchten, müssen Sie von String in int umwandeln.

Der Ausgabebildschirm ist wie folgt.

abschließend

Hier haben wir erklärt, wie das Namensattribut, das Wertattribut und das Formular-Tag durch Erstellen eines einfachen Programms verwendet werden. Die Punkte sind die folgenden zwei Punkte. ① Namensattribut und Wertattribut sind erforderlich, um Daten zu speichern ② Zum Senden von Daten ist ein Formular-Tag erforderlich

Danke für Ihre Kooperation.