Rechercher
 

Améliorations / Corrections

Vous avez des améliorations (ou des corrections) à proposer pour ce document : je vous remerçie par avance de m'en faire part, cela m'aide à améliorer le site.

Emplacement :

Description des améliorations :

Mise en place d'une architecture MVC à partir des API Servlet et JSP

Notre première JSP Cycle de vie d'une servlet



Accès rapide :
La vidéo
Les codes de la vidéo
Le contrôleur
La vue
Le modèle

La vidéo

L'objectif de cette vidéo est de vous montrer une utilisation optimale des technologies Servlet et JSP pour produire des pages web dynamiques en Java. Effectivement, ces deux technologies peuvent être utilisées conjointement pour implémenter un pattern MVC. De plus, couplées avec l'EL (l'Expression Language), vos pages Web seront encore plus expressives et maintenables.


Mise en place d'une architecture MVC à partir des API Servlet et JSP

Les codes de la vidéo

Le contrôleur

 1 
 2 
 3 
 4 
 5 
 6 
 7 
 8 
 9 
 10 
 11 
 12 
 13 
 14 
 15 
 16 
 17 
 18 
 19 
 20 
 21 
 22 
 23 
 24 
 25 
 26 
 27 
 28 
 29 
 30 
 31 
 32 
 33 
 34 
 35 
 36 
 37 
 38 
 39 
 40 
 41 
 42 
 43 
 44 
 45 
 46 
 47 
 48 
 49 
 50 
 51 
 52 
 53 
package com.koor.hello;

import java.io.IOException;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

@WebServlet("/login")
public class Login extends HttpServlet {
    private static final long serialVersionUID = 1L;
       
    protected void doGet(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        
        String login = request.getParameter( "txtLogin" );
        String password = request.getParameter( "txtPassword" );
        if ( login == null ) login = "";
        if ( password == null ) password = "";
        
        HttpSession session = request.getSession( true );
        session.setAttribute( "login", login );
        session.setAttribute( "password", password );
        
        request.getRequestDispatcher( "/Login.jsp" ).forward( request, response );
    }


    protected void doPost(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {

        String login = request.getParameter( "txtLogin" );
        String password = request.getParameter( "txtPassword" );

        HttpSession session = request.getSession( true );
        session.setAttribute( "login", login );
        session.setAttribute( "password", password );

        System.out.println( "in the doPost" );
        
        if ( login.equals( "bond" ) && password.equals( "007" ) ) {
            session.setAttribute( "isConnected", true );
            request.getRequestDispatcher( "/Connected.jsp" ).forward( request, response );
        } else {
            session.setAttribute( "isConnected", false );
            request.getRequestDispatcher( "/Login.jsp" ).forward( request, response );
        }
    }

}
Fichier Login.java - Le contrôleur

La vue

 1 
 2 
 3 
 4 
 5 
 6 
 7 
 8 
 9 
 10 
 11 
 12 
 13 
 14 
 15 
 16 
 17 
 18 
 19 
 20 
 21 
 22 
<%@page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@page import="java.util.Date"%>
<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8" />
        <title>Veuillez vous authentifier</title>
        <link rel='stylesheet' type='text/css' href='styles.css' />
    </head>
    <body>
        <h1>Veuillez vous authentifier !</h1>
    
        <form method="post" action="login">
            <label for='txtLogin'>Login :</label>
            <input id='txtLogin' name='txtLogin' type='text' value='${login}' autofocus /> <br/>
            <label for='txtPassword'>Password :</label>
            <input name='txtPassword' type='password' value='${password}' /> <br/>
            <br/>
            <input name='btnConnect' type='submit' /> <br/>
        </form>     
    </body>
</html>
Fichier login.jsp - La vue

Le modèle

Le modèle de représentation utilisé pour le stockage de nos données est la session HTTP.



Notre première JSP Cycle de vie d'une servlet