Erstellen Sie eine WEB-Anwendung, mit der Sie mit Servlet und JSP wie ein Schwarzes Brett posten können. Erstellen Sie zunächst ohne JDBC, DB, MySQL.
Lassen Sie uns über die Funktion nachdenken, die dieses Mal implementiert werden soll. Da wir eine Anwendung wie ein Schwarzes Brett erstellen, erstellen wir die folgenden Funktionen.
―― 1. Anmeldefunktion ―― 2. Abmeldefunktion ―― 3. Buchungsfunktion ―― 4. Nachanzeigefunktion
Dieses Mal werde ich eine einfache Konfiguration vornehmen, da das Ziel darin besteht, sich an das Erstellen von Webanwendungen mit Sevlet und JSP zu gewöhnen.
In diesem Artikel erstellen wir eine Anmeldefunktion.
Da für die Anmeldefunktion ein Benutzer erforderlich ist, erstellen Sie ein Benutzermodell. Es wird davon ausgegangen, dass das zu erstellende Benutzermodell zwei Informationen enthält, einen Namen und ein Kennwort.
User.java
package model;
import java.io.Serializable;
public class User implements Serializable {
private String name;
private String password;
public User() {}
public User(String name,String password) {
this.name = name;
this.password = password;
}
public String getName(){ // 1.Benutzernamen abrufen
return this.name;
}
public String getPassword(){ // 2.Passwort erhalten
return this.password;
}
}
Setzen Sie den Zugriffsmodifikator auf privat, damit die Mitgliedsvariablennamen (Benutzername) und das Kennwort (Kennwort) nicht von anderen Klassen referenziert werden können. Außerdem werden die Methoden 1 und 2 erstellt, um den im Konstruktor festgelegten Wert abzurufen.
Nachdem wir das Modell erstellt haben, erstellen wir eine Ansicht in JSP, in die sich der Benutzer anmelden kann. Erstellen Sie zunächst eine einfache Ansicht.
top-page.jsp
<form action="./login" method="post">
<div>
<label>Nutzername</label>
<input type="text" name="userName">
</div>
<div>
<label>Passwort</label>
<input type="text" name="userPassword">
</div>
<div>
<input type="submit" value="Anmeldung">
</div>
</form>
LoginProcess.java
package model;
public class LoginProcess {
public boolean execute(User user) {
if (user.getPassword().equals("hoge")) {
return true;
}
return false;
}
}
Anmeldevorgang, der true zurückgibt, wenn das registrierte Passwort "hoge" lautet.
login.java
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
request.setCharacterEncoding("UTF-8"); // 1
String name = request.getParameter("userName");
String password = request.getParameter("userPassword");
User user = new User(name,password); // 2
LoginProcess loginProcess = new LoginProcess();
boolean isLogin = loginProcess.isLogin(user); // 3
if(isLogin) {
request.getSession().setAttribute("loginUser",user); // 4
}
request.getRequestDispatcher("/WEB-INF/view/login-result.jsp").forward(request, response); // 5
}
login-result.jsp
mit dem Login-ErgebnisErstellen Sie einen JSP basierend auf dem im Sitzungsbereich angegebenen loginUser
.
login-result.jsp
<c:choose>
<c:when test="${loginUser != null}"> // 1
<p>Die Anmeldung ist abgeschlossen.</p>
<p>Hallo!<c:out value="${loginUser.name}"/>Herr.</p> //2
</c:when>
<c:otherwise> // 3
<p>Ich konnte mich nicht anmelden.</p>
<p>Bitte melden Sie sich erneut an.</p>
<a href="./login">Benutzer-Anmeldung</a> //4
</c:otherwise>
</c:choose>
loginUser
nicht null ist (wenn der Passworteintrag" hoge "ist)Geben Sie auf dem Benutzeranmeldebildschirm als Passwort "hoge" oder ein anderes ein. Das Anmeldeergebnis wird fest angezeigt und ist erfolgreich.
Beim nächsten Mal prüfen wir, ob Sie auf dem Buchungsbildschirm angemeldet sind oder nicht und was zu tun ist, wenn Sie dies nicht tun.
Recommended Posts