Java nézet technológiák és keretek - Java view technologies and frameworks

A Java nézet technológiák és keretek olyan web alapú szoftver könyvtárak , amelyek a Java webes alkalmazások felhasználói felületét vagy " nézetrétegét " biztosítják . Az ilyen alkalmazási kereteket használják a weboldalak meghatározására és az ezen weboldalak által generált HTTP kérések (kattintások) kezelésére . A webes keretrendszerek alkategóriájaként a nézetrétegű keretrendszerek gyakran eltérő mértékben vannak átfedésben azokkal a webes keretrendszerekkel, amelyek más funkciókat biztosítanak a Java webes alkalmazások számára.

A Java nézetrétegű keretek gyakran azt állítják, hogy támogatják a modell – nézet – vezérlő tervezési mintáinak egy részét vagy egészét .

Ránézésre

Akcióalapú keretek: Apache Struts , tavaszi MVC
Komponens alapú keretek: Apache Click , Apache gobelin , Apache Wicket , JavaServer Faces
Websablon rendszerek: Apache csempe , SiteMesh , Thymeleaf

Servlet API

A Servlet API szinte az összes Java Web View technológia alapja. A Servlet biztosítja a Java osztályok írásának alapvető mechanizmusát a webes alkalmazásokhoz. A szervlet válaszolhat HTTP kérésekre, létrehozhat sütiket és fenntarthat munkameneteket.

JavaServer oldalak (JSP)

  • A Servlet API tetejére épített JSP dokumentum-központú, címke-alapú sablonokat, szerverprogramozási modellt kínál, amely sokféle szöveges tartalmat generálhat.
  • A Java kód beágyazható a JSP fájlokba, és fordításra és végrehajtásra kerül, amikor egy kérés érkezik.

Apache Struts

  • A Struts lehetővé teszi a Vezérlő és a Nézet leválasztását .
  • A kérelmeket egy Java osztály (vezérlő) fogadja, amely eldöntheti, hogy melyik nézetet jelenítse meg.
  • Az aktuális nézet különböző nézet-technológiákkal írható, például JSP, ingyenes marker sablon, sebesség sablon stb.
  • Az "XML konfigurációs fájl " meghatározza az "Oldalnavigációt", azaz a kérés folyamatát a megfelelő vezérlőhöz, és melyik nézetet jeleníti meg a vezérlő eredménye alapján.
  • Versenyző : Tavaszi MVC, Grails

Apache kárpit

  • Komponens-alapú nézetrendszer.
  • Az osztályokat POJO-kként írják, és byte-kódot átalakítanak a futási időben
  • Az XML helyett annotációkkal és elnevezési konvenciókkal van konfigurálva
  • A JSP-khez képest a HTML-jelölést és a Java-kódot egyértelműen elválasztja .
  • A HTML sablonokat a webdesignerök közvetlenül megnézhetik
  • A megváltozott alkatrészosztályok a gyorsabb fejlesztés érdekében élő újratöltésre kerülnek futó alkalmazásba.
  • A Post / Redirect / Get navigációs mintát használja az űrlap benyújtásához.
  • Versenyző : Wicket, JSF, HybridJava

Apache Wicket

  • Komponens-alapú nézetrendszer.
  • Az oldalak közvetlenül kölcsönhatásba lépnek a kiszolgálón lévő állapotalapú Java-összetevőkkel.
  • Az összetevőket és azok állapotát a Wicket keretrendszer kezeli, megszabadítva az alkalmazásfejlesztőt attól, hogy a HttpSession-t közvetlenül használja az állapot kezeléséhez.
  • A konfigurációhoz nem szükséges XML.
  • A JSP-khez képest a HTML-jelölést és a Java-kódot egyértelműen elválasztja .
  • A weblap-összetevőket a kódból „beillesztik” a HTML-jelölésbe.
  • Versenyző : gobelin, JSF, HybridJava

JavaServer arcok (JSF) és arclapok

  • Komponens-alapú nézet-keretek specifikációja.
  • A Mojarra és az Apache MyFaces implementációk elérhetők
  • Általában Facelets-t használ XML / XHTML-alapú sablonok készítéséhez.
  • Az osztályok POJO-kként vannak megírva, és kommentárokkal vagy XML-konfigurációs fájlokkal társítják őket az oldal- és komponenssablonokkal.
  • Az Unified Expression Language lehetővé teszi az összetevő mezők és események kötését a POJO bab tulajdonságainak és módszereinek.
  • Az átalakítási és érvényesítési korlátozások a Facelets-ben megadhatók és automatikusan alkalmazandók, rendszerint ugyanannak az oldalnak a hibainformációval történő újbóli elküldését eredményezve, ha hiba történik.
  • A navigáció a konfigurációs fájl szabályain keresztül vagy közvetlenül az oldalon megadható.
  • Átláthatóan támogathatja az Ajaxot .
  • Versenyző : kiskapu, gobelin

SiteMesh

  • A SiteMesh egy HTML sablonkeret, amely a "Dekoráció" modelln alapul.
  • Ez lehetővé teszi egy „dekorációs” sablon létrehozását, amelyet azután minden más HTML-re alkalmaznak egy új HTML létrehozására.
  • Az újonnan létrehozott HTML az eredeti HTML elemeit tartalmazza, amelyek össze vannak keverve a sablonba.
  • Ez lehetővé teszi, hogy az eredeti HTML nagyon egyszerű legyen, és nem tartalmaz formázást vagy elrendezési specifikációt. A sablonnak viszont nincs tényleges információja.
  • A kettő összekeverése következetes megjelenést és érzetet biztosít minden weboldal számára .
  • Versenyző : Csempe

Szikra

  • Kissön egy egyszerű útválasztó rendszer körül épített mikrohálózati keretet
  • Alapértelmezés szerint beágyazott Jetty webszerveren fut , de konfigurálható úgy, hogy más webszervereken is futtasson.
  • Három különböző sablonmotort támogat: Velocity , FreeMarker és Bajusz
  • Célja a gyors fejlődés elősegítése, és nem használ feljegyzéseket vagy védett megoldásokat.


Lásd még