ulx_logo_400ulx_logo_400ulx_logo_400ulx_logo_400
  • MEGOLDÁSAINK
    • Konténerizáció és hibrid felhő
      • Automatizált DMZ-létrehozás
      • Hibrid load-menedzsment operátor
    • DevOps és felhőnatív fejlesztés
    • Adatközponti és felhőautomatizáció
    • Szolgáltatásközpontú transzformáció
    • Klasszikus és felhőalapú rendszerek integrációja
    • Nagyvállalati adatbáziskezelés
  • SZOLGÁLTATÁSAINK
    • Kritikus rendszerek támogatása
    • Fejlesztői támogatás
    • Nagyvállalati OpenShift integráció
      • Automatizált DMZ-létrehozás
      • Hibrid load-menedzsment operátor
    • Klasszikus és felhőalapú integráció
    • Komplex rendszerek tervezése, megvalósítása
    • Automatizáció, szolgáltatáskialakítás
    • Oktatás
    • Tanácsadási szolgáltatások
  • OKTATÁSOK
    • Red Hat Enterprise Linux alap- és intenzív tanfolyamok
      • RH124 – Red Hat Rendszeradminisztráció I.
      • RH134 – Red Hat Rendszeradminisztráció II.
      • RH199 – Intenzív RHCSA tanfolyam
      • RH294 – Red Hat Rendszeradminisztráció III: Linux automatizáció
    • Red Hat Automatizáció tanfolyamok
      • DO417 – Microsoft Windows automatizálás Red Hat Ansible segítségével tanfolyam
      • DO457 – Hálózatautomatizáció Red Hat Ansible használatával tanfolyam
      • DO467 – Nagyvállalati automatizálás Red Hat Ansible Automation Platform segítségével tanfolyam
    • Speciális Red Hat Enterprise Linux tanfolyamok
      • RH342 – Red Hat Enterprise Linux Diagnosztika és Hibaelhárítás
      • RH358 – Red Hat Szolgáltatás-menedzsment és automatizáció tanfolyam
      • RH403 – Red Hat Satellite 6 adminisztráció tanfolyam
      • RH442 – Red Hat Enterprise Performance Tuning tanfolyam
    • Red Hat felhő, köztesréteg és storage tanfolyamok
      • CL110 – Red Hat OpenStack adminisztráció tanfolyam
      • CL210 – Red Hat OpenStack adminisztráció II. tanfolyam
      • DO180 – Bevezetés a konténerizációba és a Kubernetes technológiába
      • DO280 – Red Hat OpenShift adminisztrációI: Élesüzemű Kubernetes klaszterek üzemeltetése
      • DO288 – Red Hat OpenShift fejlesztés: Alkalmazások konténerizációja
      • DO322 – Red Hat OpenShift telepítése a gyakorlatban tanfolyam
      • DO380 – Skálázható Kubernetes környezetek készítése vállalati környezetben
    • Fejlesztői tanfolyamok
      • AD183 – Red Hat Alkalmazás fejlesztés I: Programozás Java EE környezetben
      • DO288 – Fejlesztés Red Hat OpenShiften – Konténerizált alkalmazások tanfolyam
      • DO378 – Red Hat Cloud-native Microservices fejlesztése Quarkus-szal tanfolyam
      • AD482 – Eseményvezérelt alkalmazások fejlesztése Apache Kafka és Red Hat AMQ Streams segítségével tanfolyam
    • Hivatalos Red Hat tanúsítványok
      • EX200 – Red Hat Certified System Administration (RHCSA) vizsga
      • EX294 – Red Hat Certified Engineer (RHCE) vizsga
    • PostgreSQL / EnterpriseDB tanfolyamok
      • Bevezető PostgreSQL adminisztráció tanfolyam
      • Haladó PostgreSQL adminisztráció tanfolyam
      • Átfogó PostgreSQL adminisztráció tanfolyam
      • PostgreSQL adminisztráció és fejlesztés tanfolyam
      • Bevezető PostgreSQL fejlesztői tanfolyam
      • Postgres Plus Advanced Server adminisztráció tanfolyam
    • Előzetes szintfelmérők a tanfolyamokhoz
      • PostgreSQL / EnterpriseDB Szintfelmérő
    • Tanfolyami naptár
    • Red Hat Academy
  • TERMÉKEK
    • Red Hat Enterprise Linux
      • Red Hat Enterprise Linux
      • Red Hat Satellite
      • Red Hat Insights
      • Red Hat Smart Management
    • Red Hat OpenShift
      • OpenShift Container Platform
      • Red Hat ACM for Kubernetes
      • Red Hat OpenShift Advanced Cluster Security for Kubernetes
      • Red Hat OpenShift Data Foundation
      • Red Hat Quay
    • Red Hat Ansible Automation
    • Red Hat OpenStack Platform
    • Red Hat JBoss middleware
      • Red Hat JBoss Enterprise Application Platform
      • Red Hat JBoss Web Server
      • Red Hat Data Grid
      • Red Hat Runtimes
      • Red Hat Fuse
      • Red Hat A-MQ
      • Red Hat 3Scale
      • Red Hat Decision Manager
      • Red Hat Process Automation Manager
    • EnterpriseDB
      • EnterpriseDB PostgreSQL
      • EDB Postgres Advanced Server
    • Nagios
  • Rólunk
    • Hírek és események
  • Red Hat Summit 2023

10 jó ok, amiért érdemes Seam-et használni

  • Home
  • Híreink és eseményeink
  • Technológiai újdonságok
  • 10 jó ok, amiért érdemes Seam-et használni
2010-01-26
Categories
  • Technológiai újdonságok
Tags

Az Ajax mélyrehatóan megváltoztatja a web interakciós modelljét. A hagyományos webkliensek kevésbé kifinomult szinkron kérései lehetővé tették, hogy számos szerveroldali alkalmazás „megússza” egy minimális gyorstárazással, illetve a session-szintű konkurrencia teljes mellőzésével. De ez már a múlté!

Így „gazdagodhatunk” a leggyorsabban

Az Ajax mélyrehatóan megváltoztatja a web interakciós modelljét. A hagyományos webkliensek kevésbé kifinomult szinkron kérései lehetővé tették, hogy számos szerveroldali alkalmazás „megússza” egy minimális gyorstárazással, illetve a session-szintű konkurrencia teljes mellőzésével. De ez már a múlté! Az AJAX kliensek számos aszinkron, konkurrens, kifinomult kérést küldenek a szervernek, amellyel nem biztos, hogy az adabázisunk meg tud küzdeni. Amikor a kérések között a memóriában az állapot tárolódik, védtelenné válik a konkurrenciáól fakadó hibákkal szemben, mivel a Java EE platform nem biztosít olyan szerkezetet, amely a munkamenet-szintű konkurrenciát tudná kezelni.

A Seam teljesen egyedülálló konkurrencia–, valamint állapotmenedzsment modelljét az AJAX-ra tekintettel találták és fejlesztették ki.

A Seam 1.1 olyan nyílt forrású, JSF-alapú AJAX megoldásokat integrál a konkurrencia–, valamint állapotmenedzsment motorjába, mint amilyen az ICEfaces vagy az Ajax4JSF. Könnyedén hozzáadhatjuk az AJAX-ot az alkalmazásainkhoz, úgy, hogy még a JavaScriptet sem kell megtanulni — ezzel védelmet kapva olyan esetleges hibák és teljesítményproblémák ellen, amelyek az AJAX-ra való váltással összefüggnek.

Ez a legegyszerűbb módja annak, hogy elkezdjük használni az EJB 3.0-t

Az EJB 3.0 egy remek komponens-modell tranzakciós üzleti komponensek számára, amelynek egyik kiemelt jellemzője a vadonatúj Java Persistence API (JPA). Viszont a Java web és alkalmazási keretrendszere, amelyeket még az EJB 3.0 kibocsátása előtt terveztek, nem támogatják az új komponens-modellt, és emiatt ránk hárul az a feladatot, hogy megírjuk az integrációs kódunkat, valamint gyakran azt is jelenti, hogy olyan rétegezett architektúrát kell használnunk, amely esetleg nem megfelelő az alkalmazásunk számára.

A Seam-et úgy tervezték, hogy az EJB 3.0-val együtt lehessen használni, és bárhol lehetővé teszi az új komponens-modell használatát. Mivel a Seamen belül bármelyik osztály lehet EJB komponens, nincsen arra szükség, hogy további felesleges rétegeket építsünk be csak a keretrendszerünkre tekintettel. És természetesen kódírásra sincsen szükség ahhoz, hogy az EJB 3.0-t a webes keretrendszerünkkel integráljuk, mivel a Seambe ez már be van építve.

Megjegyzendő, hogy a Seam alkalmazásához nem szükséges, hogy az EJB 3.0-t is használjuk, és ha olyan környezetet fejlesztünk ki, amely nem támogatja az EJB 3.0-t, a Seam ilyenkor is kínál alternatív megoldásokat.

Ez a legjobb módja, hogy a JSF előnyeivel éljünk

A JSF komponens könyvtárak és egyéb add-onok élénk ekorendszerét hozta létre, ami miatt ez minden bizonnyal a Javán belüli legizgalmasabb keretrendszer. De a sima JSF sok XML-t használ, és egy sor fontos jellemzőt kihagy, különösen olyan emberek számára, akik internetes alkalmazásokat építenek. A Seam a fárasztó XML konfigurációt néhány annotációval helyettesíti, így csökkentve a kód-menyiséget, és növelve a hatékonyságot. A Seam kibővíti a JSF-et további funkciókkal a több ablakos munka és munkatér-menedzsment, modell-alapú validáció, jBPM-alapú pageflow, nemzetköziesítés, és oldaltöredékek gyorsítótárazása tekintetében. A Seam még a könyvjelzővel ellátható (REST típusú) weboldalak kezeléséhez is segítséget nyújt, amely a legnagyobb problémát jelenti a JSF felhasználói számára.

Mivel a JSF nem foglalkozik a tranzakciós forrásokhoz való hozzáféréssel, a JSF felhasználók többsége számára elengedhetetlen a Seam által integrált JTA, JPA és EJB 3.0 használata.

Ez a legegyszerűbb módja a BPM használatának is

A jBPM intuitív és hatékony megoldás összetett emberi együttműködést megkövetelő vállalati alkalmazások vagy összetett felhasználói párbeszédet magukban foglaló webes alkalmazások számára. A BPM technológia nemcsak a fejlesztők és elemzők számára könnyíti meg az üzleti folyamatok modellezését, megvalósítását. és optimalizálását, hanem az üzemeltetők és a menedzsment számára is lehetővé teszi, hogy az üzleti folyamat hatékonyságát elemezzék, és minél előbb értesüljenek az esetleges problémákról.

A Seam mélyen integrálja a jBPM-et, ennek köszönhetően hihetetlenül egyszerű a jBPM-et feladatkezelésre és pageflow-ra használni, valamint remek eszköze annak, hogy a BPM technológiával megismerkedjünk. A Seam és a jBPM kombinációja bizonyos projektek esetében hónapokkal képes lecsökkenteni a fejlesztési időt.

De a CRUD is éppolyan egyszerű…

A Seam kézbe veszi az összetett vállalati alkalmazásokat érintő nehezebb problémákat is. De ettől az egyszerű dolgok sem lesznek a szükségesnél bonyolultabbak. A Seammel pontosan ugyanolyan hatékonyan építhető egy egyszerű adatvezérelt alkalmazás, mint a mostani CRUD keretrendszerekkel. A Seam egy JPA és Hibernate köré épült egyszerű adathozzáférési keretrendszer, valamint egy parancssor-kódgeneráló és adatbázis visszatervező eszköz kombinációját nyújtja, amelynek segítségével percek alatt belevághatunk a munkába.

Ezentúl már a perzisztencia sem jelent gondot

A Seam a Hibernate közösségből nőtte ki magát, és azok az emberek tervezték és valósították meg, akik nemcsak a Hibernate-et találták ki, hanem a perzisztencia kontextus kifejezést is. A Seam párbeszéd modellje egy sor olyan, perzisztenciához kapcsolódó programozási problémát old meg, amelyek oka az állapotmentes web alkalmazások architektúrájában rejlik. Akár a Hibernate-et, akár a JPA-t használjuk, a Seam segítségével könnyedén és természetesen tudunk kiterjedt perzisztencia-kontextusokat használni, és segít elkerülni a felesleges állapotok többszörözését, amikor klaszteres környezetben használunk kiterjedt perzisztencia-kontextusokat.

Annotációk

A Seam az első olyan programozási modell, amely lehetővé teszi a Java 5 annotációk használatát a folyamat elejétől a végéig, a perzisztencia rétegtől a felhasználói felületekig. Többé nem kell szükségtelen, „zajos” XML-ekkel küszködnünk. Ez nem jelenti azt, hogy a Seam nem használ XML-t azokban az esetekben, ahol szükséges (a Seam kifinomult XML-alapú komponens konfigurációs jellemzővel rendelkezik), viszont az egyszerű programozási feladatok végrehajtása során nem fogunk többé elveszni az XML birodalmában.

Automatizált integráció-tesztelés

Az automatizált egység-teszteknek bármilyen projektek esetében megvan a helyük. De több mint veszélyes csupán egység-tesztekre hagyatkozni. A legtöbb meghibásodás a komponensek interakciójához, illetve a komponensek és az azt futtató konténer-környezet interakciójához kapcsolódik. Az egység-tesztek nem képesek a konténer-környezet viselkedését megfelelően visszaadni, és ez többnyire az összetett, komponensek közti interakciókra is igaz. A Seam az automatizált integrációs tesztelés innovatív megközelítését vezeti be, ahol egy kérés vagy interakció teljes folyamatát emulálja, a Java kód minden rétegét tesztelve az alkalmazásban a prezentációtól a perzisztenciáig.

A nyílt forráskódok és a nyílt szabványok összeházasítása

A Seam a nyílt szabványok olyan nyílt forráskódú változatain alapul, mint amilyen a JSF vagy az EJB 3.0, illetve olyan nyílt forráskódú innovációkon, mint a Hibernate, jBPM, Facelets, Drools, ICEfaces és az Ajax4JSF. A Seam létrehozói közreműködnek az EJB, JPA, Bean Validation és JSF szakértői csoportokban, és a Web Beans (JSR-299) szakértői csoportot vezetik, amelynek célja, hogy a Seam elemeit beépítse a Java EE szabványba. A Seam projekt elkötelezetten támogatja azt, hogy a nyílt forráskódú újítások új ötletekkel és fejlesztésekkel gazdagítsák a Java platformot.

Egyszerűen, mert működik

Ha kipróbálod, nem akarsz majd mást használni. Kezdd el most!

Copyright: ULX, 2023