Il miglior tutorial Intercettare modello del filtro Nel 2024, in questo tutorial puoi imparare realizzazione,fase 1,fase 2,fase 3,fase 4,fase 5,passo 6,passo 7,step 8,

Intercettare modello del filtro

Intercettare modello del filtro (Intercettazione Pattern filtro) per la richiesta di un'applicazione o in risposta a fare un po 'di pre-elaborazione / post-elaborazione. Definire il filtro, e prima che la richiesta per l'applicazione pratica di destinazione su richiesta. I filtri possono fare autenticazione / autorizzazione / registrazione o richiesta di monitoraggio, quindi la richiesta al gestore appropriato. Di seguito è un'entità di questo modello di progettazione.

  • Filter (Filtro) - filtro prima o dopo l'esecuzione del gestore, richiesta per eseguire alcuni compiti.
  • catena di filtri (Filtro Chain) - catena dei filtri con una pluralità di filtri, e l'attuazione di questi filtri sul bersaglio in una sequenza definita.
  • Target - Obiettivo è il gestore oggetto di richiesta.
  • Gestione filtri (Gestione filtri) - filtri Gestione filtri e catena dei filtri.
  • Client (Client) - oggetto clientdi oggetto di destinazione per inviare la richiesta.

realizzazione

CreeremoFilterChain,FilterManager, Target, client rappresenta entità come i vari oggetti.AuthenticationFiltereDebugFilterrappresentano filtri entità.

InterceptingFilterDemo,dimostriamo l'uso di classeClientper dimostrare il modello di progettazione del filtro Intercettare.

Intercettare modello del filtro diagramma UML

fase 1

Crea filtro Interfaccia filtro.

Filter.java

Filtro interfaccia pubblica {
   public void execute (richiesta String);
}

fase 2

Crea filtro entità.

AuthenticationFilter.java

public class AuthenticationFilter implementa filtro {
   public void execute (richiesta String) {
      System.out.println ( "Richiesta di Autenticazione:" + richiesta);
   }
}

DebugFilter.java

public class DebugFilter implementa filtro {
   public void execute (richiesta String) {
      System.out.println ( "log richiesta:" + richiesta);
   }
}

fase 3

Crea target.

Target.java

Obiettivo public class {
   public void execute (richiesta String) {
      System.out.println ( "richiesta di esecuzione:" + richiesta);
   }
}

fase 4

Creare una catena di filtri.

FilterChain.java

import java.util.ArrayList;
import java.util.List;

public class FilterChain {
   Elenco privato <Filtro> Filtri = new ArrayList <Filter> ();
   Target Target privato;

   public void addFilter (filtro Filter) {
      filters.add (filtro);
   }

   public void execute (richiesta String) {
      per (filtro Filter: filtri) {
         filter.execute (richiesta);
      }
      target.execute (richiesta);
   }

   setTarget public void (target Target) {
      this.target = bersaglio;
   }
}

fase 5

Crea filtro Manager.

FilterManager.java

public class FilterManager {
   FilterChain filterChain;

   pubblico FilterManager (target Target) {
      filterChain = new FilterChain ();
      filterChain.setTarget (target);
   }
   public void setFilter (filtro Filter) {
      filterChain.addFilter (filtro);
   }

   filterRequest public void (richiesta String) {
      filterChain.execute (richiesta);
   }
}

passo 6

Creare un client client.

Client.java

public class Cliente {
   FilterManager filterManager;

   setFilterManager public void (FilterManager filterManager) {
      this.filterManager = filterManager;
   }

   public void sendRequest (richiesta String) {
      filterManager.filterRequest (richiesta);
   }
}

passo 7

Utilizzareclientper dimostrare il modello di progettazione del filtro Intercettare.

FrontControllerPatternDemo.java

public class InterceptingFilterDemo {
   Main (string [] args) {public static void
      FilterManager filterManager = new FilterManager (nuova destinazione ());
      filterManager.setFilter (nuova AuthenticationFilter ());
      filterManager.setFilter (nuova DebugFilter ());

      Client Client = new client ();
      client.setFilterManager (filterManager);
      client.sendRequest ( "HOME");
   }
}

step 8

Verifica uscita.

Richiesta Autenticazione: HOME
Richiesta di registro: HOME
Richiesta Esecuzione: HOME
Intercettare modello del filtro
10/30