[JAVA] Création d'applications Web de base Servlet / JSP (fonction de connexion)

introduction

Créez une application WEB qui vous permet de publier comme un babillard avec Servlet et JSP. Tout d'abord, créez sans utiliser JDBC, DB, Mysql.

Environnement d'exécution

À propos de la fonction

Pensons à la fonction à implémenter cette fois. Puisque nous allons créer une application comme un babillard électronique, nous allons créer les fonctions suivantes.

―― 1. Fonction de connexion ―― 2. Fonction de déconnexion ―― 3. Fonction de publication ―― 4. Fonction de post-visualisation

Cette fois, l'objectif est de s'habituer à la création d'applications Web à l'aide de Sevlet et JSP, nous allons donc en faire une configuration simple.

Création de la fonction de connexion

Dans cet article, nous allons créer une fonction de connexion.

1. Créer un modèle utilisateur

Étant donné que la fonction de connexion nécessite un utilisateur, créez un modèle d'utilisateur. On suppose que le modèle utilisateur à créer comporte deux informations, un nom et un mot de passe.

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.Obtenir le nom d'utilisateur
		return this.name;
	}

	public String getPassword(){   // 2.Obtenir le mot de passe
		return this.password;
	}
}

Définissez le modificateur d'accès sur private afin que le nom des variables membres (nom d'utilisateur) et le mot de passe (mot de passe) ne puissent pas être référencés par d'autres classes. Il crée également les méthodes 1 et 2 pour obtenir la valeur définie dans le constructeur.

2. Créer une vue de la page principale

Maintenant que nous avons créé le modèle, nous allons créer une vue dans JSP pour que l'utilisateur se connecte. Tout d'abord, créez une vue simple.

top-page.jsp


<form action="./login" method="post">
  <div>
    <label>Nom d'utilisateur</label>
    <input type="text" name="userName">
  </div>
  <div>
    <label>mot de passe</label>
    <input type="text" name="userPassword">
  </div>
  <div>
    <input type="submit" value="enregistrement">
  </div>
</form>

3. Créez un modèle qui effectue le traitement lié à la connexion

LoginProcess.java


package model;

public class LoginProcess {
	public boolean execute(User user) {
		if (user.getPassword().equals("hoge")) {
			return true;
		}
		return false;
	}
}

Processus de connexion qui retourne true si le mot de passe enregistré est hoge.

4. Créez un contrôleur pour gérer les demandes de connexion

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
	}

  1. Obtenir les paramètres de la demande
  2. Définissez le nom et le mot de passe de la classe User pour les paramètres acquis.
  3. Vérifiez si le mot de passe est correct et initialisez la valeur booléenne
  4. Définissez les informations de classe d'utilisateurs dans l'étendue de la session
  5. Transférer à la vue login-result.jsp montrant le résultat de la connexion

5. Créez une vue qui représente le résultat de la connexion

Créez un jsp basé sur le loginUser spécifié dans la portée de la session.

login-result.jsp


<c:choose>
  <c:when test="${loginUser != null}">  // 1
    <p>La connexion est terminée.</p>
    <p>Bonjour!<c:out value="${loginUser.name}"/>M.</p> //2
  </c:when>
  <c:otherwise>  // 3
    <p>Je n'ai pas réussi à me connecter.</p>
    <p>Veuillez vous reconnecter.</p>
    <a href="./login">Utilisateur en ligne</a>  //4
  </c:otherwise>
</c:choose>
  1. Si loginUser n'est pas nul (si l'entrée de mot de passe est" hoge ")
  2. Sortez le nom de la classe User avec loginUser.name Pour des conditions autres que 3.1
  3. Lien sur l'écran d'enregistrement de l'utilisateur

6. Exécuter

Sur l'écran de connexion de l'utilisateur, entrez hoge ou autre comme mot de passe et le résultat de la connexion sera affiché fermement et il réussira.

finalement

La prochaine fois, nous vérifierons si vous êtes connecté ou non sur l'écran de publication et que faire si vous ne l'êtes pas.

Recommended Posts

Création d'applications Web de base Servlet / JSP (fonction de connexion)
Création d'applications Web de base Servlet / JSP (fonction de déconnexion)
Création d'applications Web de base Servlet / JSP (écran de publication)
[Spring Boot] Création d'applications Web
Mémo de développement d'applications Web avec MVN, Tomcat, JSP / Servlet avec VScode
Jusqu'à ce que vous créiez une application Web avec Servlet / JSP (Partie 1)
Comparaison du développement d'applications WEB avec Rails et Java Servlet + JSP
Fonction de connexion
Rôle de JSP dans les applications Web [Java]
Une certaine fonction d'application de base Ruby de classe de programmation
Création d'applications personnelles # 2
Création d'applications personnelles # 3
Création d'applications personnelles # 1
[Servlet] Méthode de base