Gyors támaszok 2 bevezető

1. Bemutatkozás

Az Apache Struts 2 egy MVC-alapú keretrendszer a vállalati Java webalkalmazások fejlesztéséhez. Ez az eredeti Struts keretrendszer teljes átírása. Nyílt forráskódú API implementációval és gazdag szolgáltatáskészlettel rendelkezik.

Ebben az oktatóanyagban kezdőknek ismertetjük a Struts2 keretrendszer különböző alapkomponenseit. Sőt, megmutatjuk, hogyan kell használni őket.

2. A Struts 2 Framework áttekintése

A Struts 2 néhány jellemzője:

  • POJO (egyszerű régi Java objektumok) alapú műveletek
  • plugin támogatás a REST, AJAX, Hibernate, Spring stb
  • konvenció a konfiguráció felett
  • különféle nézeti réteg technológiák támogatása
  • egyszerű profilalkotás és hibakeresés

2.1. A támaszok különböző elemei2

A Struts2 egy MVC-alapú keretrendszer, így a következő három összetevő minden Struts2 alkalmazásban jelen lesz:

  1. Akcióosztály - amely egy POJO osztály (a POJO azt jelenti, hogy nem része semmilyen típusú hierarchiának, és önálló osztályként használható); itt fogjuk megvalósítani üzleti logikánkat
  2. Vezérlő - a Struts2-ben HTTP-szűrőket használnak vezérlőként; alapvetően olyan feladatokat látnak el, mint a kérések / válaszok lehallgatása és érvényesítése
  3. Kilátás - a feldolgozott adatok bemutatására szolgál; általában JSP fájl

3. Alkalmazásunk megtervezése

Folytassuk webalkalmazásunk fejlesztését. Ez egy olyan alkalmazás, ahol a felhasználó kiválaszt egy adott elemet Autó márka és testreszabott üzenet fogadja.

3.1. Maven-függőségek

Tegyük fel a következő bejegyzéseket a pom.xml:

 org.apache.struts struts2-core 2.5.10 org.apache.struts struts2-junit-plugin 2.5.10 org.apache.struts struts2-convention-plugin 2.5.10 

A függőségek legújabb verziója itt található.

3.2. Üzleti logika

Hozzunk létre egy cselekvési osztályt CarAction amely egy adott bemeneti értékre küld üzenetet. A CarAction két mezője van - carName (felhasználótól származó bemenet tárolására szolgál) és carMessage (a megjelenítendő egyedi üzenet tárolására szolgál):

nyilvános osztály CarAction {private String carName; privát String carMessage; privát CarMessageService carMessageService = új CarMessageService (); public String végrehajtja () {this.setCarMessage (this.carMessageService.getMessage (carName)); visszatér a "siker"; } // szerelők és beállítók}

A CarAction osztály használ CarMessageService amely biztosítja a testreszabott üzenetet a Autó márka:

public class CarMessageService {public String getMessage (String carName) {if (carName.equalsIgnoreCase ("ferrari")) {{return "Ferrari Fan!"; } else if (carName.equalsIgnoreCase ("bmw")) {return "BMW Fan!"; } else {return "kérem válasszon ferrarit vagy bmw-t"; }}}

3.3. Felhasználói bevitel elfogadása

Tegyük hozzá a JSP amely belépési pont az alkalmazásunkban. Ez a input.jsp fájl:

Üdvözöljük a Baeldung Struts 2 alkalmazásban

Melyik autó tetszik !!

Kérjük, válasszon ferrarit vagy bmw-t

A <forma> tag meghatározza a műveletet (esetünkben ez egy HTTP URI, amelyre GET kérést kell küldeni).

3.4. A vezérlő rész

StrutsPrepareAndExecuteFilter a vezérlő, amely elfog minden beérkező kérést. A következő szűrőt regisztrálnunk kell a web.xml:

 struts2 org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter támaszok2 / * 

StrutsPrepareAndExecuteFilter minden beérkező kérést szűrni fog, mivel az URL-nek megfelelő helyettesítő karaktert adjuk meg /*

3.5. Az alkalmazás konfigurálása

Adjuk hozzá a következő kommentárokat az akcióosztályunkhoz Autó:

@Névtér ("/ tutorial") @Action ("/ car") @Result (name = "siker", location = "/result.jsp")

Értsük meg ezen kommentárok logikáját. A @Névtér a kérelem URI logikai elválasztására szolgál a különböző műveleti osztályokhoz; ezt az értéket bele kell foglalnunk kérésünkbe.

Továbbá a @Akció megmondja a kérés URI tényleges végpontját, amely eltalálja a Akció osztály. Az akcióosztály konzultál CarMessageService és inicializálja egy másik tagváltozó értékét carMessage. Utána végrehajtani () metódus értéket ad vissza "siker" esetünkben megegyezik azzal az értékkel, amelyre hivatkozunk eredmény.jsp

Végül a @Eredmény két paramétere van. Első, név, meghatározza azt az értéket, amely a mi Akció osztály visszatér; ezt az értéket adja vissza a végrehajtani () a metódusa Akció osztály. Ez az alapértelmezett metódusnév, amely végrehajtásra kerül.

A második rész, elhelyezkedés, megmondja, melyik fájlra kell hivatkozni a végrehajtani () metódus értéket adott vissza. Itt meghatározzuk, hogy mikor végrehajtani () String értéket ad visszasiker“, Továbbítanunk kell a kérést eredmény.jsp.

Ugyanez a konfiguráció elérhető az XML konfigurációs fájl megadásával:

   /rezult.jsp 

3.6. Nézet

Ez a tartalma eredmény.jsp amelyet az üzenet bemutatására használnak a felhasználó számára:

Helló Baeldung felhasználó

Ön

Két fontos dolgot kell itt észrevenni:

  • ban ben importálunk támaszok-címkék könyvtár
  • ban ben használjuk támaszok-címkék könyvtár egy tulajdonság értékének kinyomtatásához carMessage

4. Az alkalmazás futtatása

Ez a webalkalmazás bármilyen webtárolóban futtatható, például az Apache Tomcat alkalmazásban. Ezek a végrehajtáshoz szükséges lépések:

  1. A webalkalmazás telepítése után nyissa meg a böngészőt, és nyissa meg a következő URL-t: //www.localhost.com:8080/MyStrutsApp/input.jsp
  2. Válassza ki a két lehetőség egyikét, és küldje el a kérelmet
  3. Ön továbbításra kerül a eredmény.jsp oldal a kiválasztott beviteli opció alapján testreszabott üzenettel

5. Következtetés

Ebben az oktatóanyagban lépésről lépésre ismertettük az első Struts2 webalkalmazás létrehozásának módját. A Struts2 tartományban különféle MVC-vonatkozásokkal foglalkoztunk, és megmutattuk, hogyan lehet ezeket összerakni a fejlesztéshez.

Mint mindig, ez az oktatóanyag megtalálható a Githubon, mint Maven projekt.


$config[zx-auto] not found$config[zx-overlay] not found