Java keretrendszerek

Fő kategória: Java.

Az általános Enterprise Java mellett (ill. égisze alatt) megjelentek a célirányos Java futtató keretrendszerek (framework), melyek kisebb-nagyobb területet lefedve gyorsítja a fejlesztés folyamatát. Ezek elterjedéséhez sokban hozzájárult az "alap" Enterprise Java nehézkessége: amíg ott a fejlesztő állandó problémákba ütközik, itt az alapok gyors elsajátítását követően az üzleti logikára koncentrálhat. Sok ilyen keretrendszer van, melyeknek a teljes tanulási görbéje külön-külön is hosszú lehet. Viszont mivel ezek többnyire igen elterjedtek (némelyek de facto szabványoknak is tekinthetőek), érdemes időt és energiát beléjük fektetni, ugyanis jelentősen növelik a produktivitást.

Ezen az oldalon a legnépszerűbb Java keretrendszerekről olvashatunk. Igyekeztem témák szerint felosztani. Ez a felosztás saját elképzelésen alapul, és számos esetben nem egyértelmű a határ két terület között.

Web keretrendszerek

Ide azokat a keretrendszereket sorolom, melyeket webes alkalmazások fejlesztésénél tudunk hasznosítani. Ritkán fordul elő az, hogy natív HTML-t, CSS-t, JavaScript-et, esetleg még JSP-t használunk (bár elvileg megtehetnénk), többnyire valamilyen keretrendszer által nyújtott, magasabb szintű komponenseket használunk a gyakorlatban. A lentiek többé-kevésbé kizárják egymást: egy-egy alkalmazásnál tipikusan kiválasztunk egyet, és annak segítségével építjük fel az alkalmazást.

Azok közül a keretrendszerek közül, amelyek több kategóriába is beleillenek, azokat soroltam ide, amelyeknél hangsúlyos a webes megjelenés.

  • JSF
  • Struts
  • ZK
  • PrimeFaces
  • GWT
  • Vaadin
  • Tapestry
  • Wicket
  • Blade

Üzleti komponensek

Jobb nevet nem találtam ki ennek a kategóriának; azokat sorolom ide, amelyeknél a hangsúly nem a megjelenésem, hanem a háttérfolyamatokon, tehát a nem látható részeken van. Ezek önállóan futó komponensek (a fentiekkel ellentétben, amelyek függőségként jelennek meg), és többé-kevésbé lefedik a tipikus nagyvállalati alkalmazások fő területeit. Ez utóbbi tulajdonsága miatt több esetben nem is teljesen önálló keretrendszerről beszélünk, hanem számos, egymástól többé-kevésbé független komponens összegyúrásáról és egységes felületen való megjelenéséről.

  • Spring
  • Play
  • Apache ServiceMix: Apache ActiveMQ, Apache Camel, Apache CXF, Apache Karaf
  • Adobe Enterprise Manager: Java Content Repository, Apache Jackrabbit, Adobe CRX, Apache Sling
  • Grails
  • Dropwizard
  • JHipster
  • Spark

Adatbázis

Azokat a keretrendszereket sorolom ebbe a kategóriába, amelyek kifejezetten az adatbázis kapcsolatot segítik elő.

  • Hibernate
  • MyBatis

Eseménykezelés

Ebben a kategóriában azok a keretrendszerek kerültek, amelyeknél hangsúlyos elem a - tipikusan aszinkron - üzenetek kezelése.

  • Vert.x
  • Apache Beam
  • Mule ESB
  • Apache Camel
  • Apache NiFi
  • Netty
Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License