[java EE] Welke techniek gebruik jij en waarom?

Pagina: 1
Acties:
  • 146 views sinds 30-01-2008
  • Reageer

  • flowerp
  • Registratie: September 2003
  • Laatst online: 04-02 02:01
Omdat Java zo'n populair en open platform is heb je ongelooflijk veel keuzes om te maken als je een applicatie wilt bouwen. Ik vroeg me af welke technieken iedereen hier gebruikt en waarom?

Recent opende ik een topic om te vragen wie JSF gebruikte. Als het standaard component framework in Java blijkt dit verbazingwekkend weinig gebruikt te worden. Gedeeltelijk blijkt dit door FUD te komen. Ooit heeft iemand eens geroepen dat het overengineered zou zijn, en iedereen is dat aan het naroepen. Peeter Heerschop (cabaretier) omschreef dit verschijnsel laatst nog heel treffend in een interview. Het was wel heel ergens anders voor van toepassing, maar het geldt voor heel veel dingen:

Het is een beetje de stem van de omgeving: als mensen het iedereen horen roepen, gaan zij dat ook doen. (bron: Veronica magazine, nr 2, 2006)

Volgens het zelfde fenomeen roepen ook veel mensen dat PHP zo makkelijk is en Java zo moeilijk.

Maar goed, wat gebruik je dan wel voor Java web applicaties?

* Struts?
* Tapestry?
* Toch stiekum JSF?
* Spring MVC?
* WebWorks?
* PHP-style (JSP's met scriptlets)
* JSP (moderne style, dus zonder Java code, maar met JSTL en EL)
* ...

En waarom? Omdat iedereen roept dat het "licht" moet zijn en voor framework X wordt geroepen dat het "licht" is, of omdat je zelf echt vind dat het feature X of Y heeft die het developpen en onderhoud beter & makkelijker maakt?

[ Voor 7% gewijzigd door flowerp op 15-01-2006 18:53 ]

It's shocking to find how many people do not believe they can learn, and how many more believe learning to be difficult.


  • BasieP
  • Registratie: Oktober 2000
  • Laatst online: 19-10-2025
ik (moest voor school) JSP's gebruiken (oude stijl) en ben daarin zoveel rampen tegengekomen dat ik uit eigen ervaring kan zeggen
"PHP is zo makkelijk en Java is zo moeilijk"

en dan bedoel ik niet dat java moeilijk is, of de taal oid, maar de constructie.
De ontwikkelomgevingen (wij moesten jbuilder gebruiken) werken wel, maar soms is *poef* je code weg, en de gebrekkige (online) documentatie zorgt voor meer vragen dan antwoorden.

Ook omdat er zoveel manieren zijn is het lastig om dingen uit te zoeken. Ik ben er toen een week mee bezig geweest om uit te zoeken waarom ik, nadat ik een databae (entitybean) had gewijzigd, ik er geen records meer in kon zetten..
bleek dat jbuilder de tabel creatie niet had aangepast (logisch) en dat we dit handmatig uit een sql filetje moesten gaan halen..
Dit moesten we echt van een klasgenoot horen, want online was er niks over te vinden..

kortom, mijn mening:
j2ee, een prachtig idee, maar zeer slecht uitgevoerd

This message was sent on 100% recyclable electrons.


Verwijderd

BasieP schreef op zondag 15 januari 2006 @ 19:08:
ik (moest voor school) JSP's gebruiken (oude stijl) en ben daarin zoveel rampen tegengekomen dat ik uit eigen ervaring kan zeggen
"PHP is zo makkelijk en Java is zo moeilijk"

en dan bedoel ik niet dat java moeilijk is, of de taal oid, maar de constructie.
De ontwikkelomgevingen (wij moesten jbuilder gebruiken) werken wel, maar soms is *poef* je code weg, en de gebrekkige (online) documentatie zorgt voor meer vragen dan antwoorden.
[...]
j2ee, een prachtig idee, maar zeer slecht uitgevoerd
Het niet functioneren van een tool zegt natuurlijk niets over de kwaliteit van een framework. Ik vraag me ook af wat jij onder gebrekkige online documentatie verstaat. Welke j2ee gerelateerde ramp ben je tegengekomen, want je hebt er immers nog geen een genoemd...

  • Eelke Spaak
  • Registratie: Juni 2001
  • Laatst online: 13-04 14:23

Eelke Spaak

- Vlad -

Ik gebruikte tot op heden altijd Hibernate voor mijn domain layer en EJB 2 SessionBeans voor de business logic. Echt een web framework gebruikte ik niet, omdat ik meestal met Swing clients werkte. Wanneer ik toch JSP ging schrijven, was het JSP 'moderne stijl'.

Sinds kort ben ik echter aan het spelen met GlassFish (Sun's open source JEE5 server) en de daily builds van Netbeans JEE5 (n.b.: dit is wat anders dan Netbeans 5, waar onlangs RC1 van is verschenen). Ik moet zeggen dat mijn eerste indruk van deze combinatie werkelijk fantastisch is. EJB3 EntityBeans werken simpeler en flexibeler dan Hibernate, EJB3 SessionBeans zijn echt een verademing en JSF in de web tier is ook handig. Vooral de injection van dingen die je nodig hebt werkt volledig transparant, over de hele server door. Zo snapt GlassFish automatisch waar bepaalde SessionBeans vandaan moeten komen en kan je die direct in JSF ManagedBeans aanspreken.

Kortom: in de toekomst zal ik JSF, als onderdeel van JEE5, zeker gaan gebruiken.

[ Voor 6% gewijzigd door Eelke Spaak op 15-01-2006 19:31 ]

TheStreme - Share anything with anyone


  • flowerp
  • Registratie: September 2003
  • Laatst online: 04-02 02:01
Eelke Spaak schreef op zondag 15 januari 2006 @ 19:30:
Ik moet zeggen dat mijn eerste indruk van deze combinatie werkelijk fantastisch is. EJB3 EntityBeans werken simpeler en flexibeler dan Hibernate, EJB3 SessionBeans zijn echt een verademing
EJB3 is inderdaad geweldig. Wist je dat Hibernate gewoon een implementatie heeft van EJB3? Ze hebben 'gewoon' een entity manager implementatie gemaakt en deze kun je prima gebruiken met Hibernate 3.1, waarvan pas de final uitgekomen is.

EJB heeft een beetje naar smaakje (en dat is dan eens niet slechts FUD), maar EJB3 is behoorlijk anders en ongelooflijk makkelijk. Een paar annotations in je POJO, en via je entity manager kun je deze persisten naar je DB. Makkelijker kan bijna niet.

Net zoals JSF, wordt EJB3 een standaard onderdeel van Java EE 5. Het belangrijkste deel van EJB3 heet dan ook heel neutraal de Java Persistence API. Simpel maar erg krachtig.

It's shocking to find how many people do not believe they can learn, and how many more believe learning to be difficult.


  • Gert
  • Registratie: Juni 1999
  • Laatst online: 05-12-2025
Ik ben een keer webwork gaan gebruiken en heb nog geen reden tot klagen gevonden. Hoewel de overgang van 2.1 naar 2.2 nog wel wat slapeloze nachten heeft opgeleverd omdat er vrij veel niet meer werkte / anders moest. :)
Daarachter hang ik jsp moderne stijl + sitemesh, hoewel ik me nog wil gaan verdiepen in velocity templates, en of dat handiger/sneller/eenvoudiger is.

Hoewel webwork natuurlijk ook weer prima gebruikt kan worden i.c.m. struts, jsf en spring. :D

  • flowerp
  • Registratie: September 2003
  • Laatst online: 04-02 02:01
Gert schreef op zondag 15 januari 2006 @ 20:24:

Hoewel webwork natuurlijk ook weer prima gebruikt kan worden i.c.m. struts, jsf en spring. :D
Dat is dan wel een compliceerende factor aan de ene kant. Je kunt ook nog eens heel veel combineren. JSF + Struts werkt ook. Deze hebben gedeeltelijk overlap (Tiles van Struts met de component tree van JSF) maar Struts doet meer aan de controller kant. Zelfs voor nieuw projecten kun je dus Struts voor de controller gebruiken en JSF voor de view.

Is er iemand die zoiets bewust doet?

It's shocking to find how many people do not believe they can learn, and how many more believe learning to be difficult.


  • Eelke Spaak
  • Registratie: Juni 2001
  • Laatst online: 13-04 14:23

Eelke Spaak

- Vlad -

flowerp schreef op zondag 15 januari 2006 @ 20:17:
EJB3 is inderdaad geweldig. Wist je dat Hibernate gewoon een implementatie heeft van EJB3? Ze hebben 'gewoon' een entity manager implementatie gemaakt en deze kun je prima gebruiken met Hibernate 3.1, waarvan pas de final uitgekomen is.
Ja dat wist ik, en die zit ook standaard in JBoss tegenwoordig. Ik heb alleen mijn buik een beetje vol van JBoss, met zijn hyper-ingewikkelde architectuur, onduidelijke configuratie en moeilijke documentatie. GlassFish gebruikt standaard Oracle Toplink voor zijn persistence implementatie. Ik weet niet welke van de twee persistence frameworks beter is, maar GlassFish als server bevalt me tot nu toe beter dan JBoss (waar ik eerst dus mee werkte). Nou is het natuurlijk ook mogelijk om GlassFish+Hibernate te gebruiken, maar dat heb ik nog niet uitgeprobeerd :) .

TheStreme - Share anything with anyone


  • Bbfreak
  • Registratie: September 2002
  • Laatst online: 04-02 10:03
Op school heb ik les gehad in JSP oude stijl, Struts en EJB.
"De gevestigde standaard." Totdat ik op mijn werk ook met J2EE moest gaan werken.
Na veel interessante dingen over Spring gelezen te hebben ben ik dit gaan toepassen.
Ik moet zeggen dat ik het een verademing vindt.
Mijn meest gebruikte combo is Spring MVC + Hibernate.
Spring biedt ideale Hibernate support en Spring MVC is een echt MVC framework.
Makkele configuratie, uitstekende debugging en goede integratie van JUnit zijn voor mij de grootste
redenen om voor deze combinatie te kiezen.

Twitter @cmeerbeek / Halo Waypoint Profile


  • ronaldmathies
  • Registratie: Juni 2001
  • Niet online
Eelke Spaak schreef op zondag 15 januari 2006 @ 20:30:
[...]

Ja dat wist ik, en die zit ook standaard in JBoss tegenwoordig. Ik heb alleen mijn buik een beetje vol van JBoss, met zijn hyper-ingewikkelde architectuur, onduidelijke configuratie en moeilijke documentatie. GlassFish gebruikt standaard Oracle Toplink voor zijn persistence implementatie. Ik weet niet welke van de twee persistence frameworks beter is, maar GlassFish als server bevalt me tot nu toe beter dan JBoss (waar ik eerst dus mee werkte). Nou is het natuurlijk ook mogelijk om GlassFish+Hibernate te gebruiken, maar dat heb ik nog niet uitgeprobeerd :) .
Dit snap ik nu niet hé. Ik werk nu al 5 jaar met JBoss en ik vindt het nogsteeds een van de betere application servers. Juist omdat het zo gemakkelijk te configureren is. Daarnaast is de documentatie behoorlijk volledig (vroeger moesten we ervoor betalen maar tegenwoordig is ook dit gratis). Het Forum is een fantastische bron van informatie. Verder is de gehele opbouw van de server volledig modulair. Wil je bepaalde onderdelen niet, dan haal je deze er toch gewoon uit.

3015 Wp-z 5360 Wp-nno op 2 x SMA-SB3600 TL-21, Warmtepomp: ERSC-VM2CR2 / PUHZ-SHW140 YHA, WTW Q350, EV Kia Ev6 GT-Line


  • flowerp
  • Registratie: September 2003
  • Laatst online: 04-02 02:01
Bbfreak schreef op zondag 15 januari 2006 @ 21:16:
Spring biedt ideale Hibernate support en Spring MVC is een echt MVC framework.
Hebben het Spring team en het Hibernate team niet een beetje onenigheid? De support was vooral goed met de oudere versies van Hibernate had ik begrepen, met de nieuwere schijnt het wat minder te zijn.

It's shocking to find how many people do not believe they can learn, and how many more believe learning to be difficult.


  • Ti_Uhl
  • Registratie: Mei 2003
  • Laatst online: 19-09-2012
ben ik nu de enige of zijn er nog mensen die met al deze technieken en frameworks de duidelijkheid compleet missen. Ik programmeer al wel ff met java voor webapps maar kan uit alles niet zo'n goed beeld meer krijgen van welke techniek of framework waarom goed is. of zelfs wat hij doet, ik weet compleet niet wat ik eerst moet bestuderen omdat er voor elk probleem wel 10 frameworks schijnen te bestaan.

En dit vind ik dan ook meteen het grote nadeel. Ik ben namelijk een student en door de huidige situatie weet ik niet welke framework ik het beste kan gebruiken met oog op de toekomst, dit vooral aangezien ik niet weet in welk bedrijf ik ga terecht komen en welke frameworks zij zullen gebruiken.

[ Voor 28% gewijzigd door Ti_Uhl op 15-01-2006 23:56 ]


  • Gert
  • Registratie: Juni 1999
  • Laatst online: 05-12-2025
Dat merk je dan wel weer. :)

Als je maar ervaring hebt met "een" framework is leren werken met een ander niet zo moeilijk. Zolang je maar weet dat zelf alles doen niet altijd het beste is, en dat er meer is dan alleen servlets en jsp. ;)

  • Valor
  • Registratie: Mei 2005
  • Laatst online: 06-02 08:25

Valor

yummie spam

BasieP schreef op zondag 15 januari 2006 @ 19:08:
ik (moest voor school) JSP's gebruiken (oude stijl) en ben daarin zoveel rampen tegengekomen dat ik uit eigen ervaring kan zeggen
"PHP is zo makkelijk en Java is zo moeilijk"

en dan bedoel ik niet dat java moeilijk is, of de taal oid, maar de constructie.
De ontwikkelomgevingen (wij moesten jbuilder gebruiken) werken wel, maar soms is *poef* je code weg, en de gebrekkige (online) documentatie zorgt voor meer vragen dan antwoorden.

Ook omdat er zoveel manieren zijn is het lastig om dingen uit te zoeken. Ik ben er toen een week mee bezig geweest om uit te zoeken waarom ik, nadat ik een databae (entitybean) had gewijzigd, ik er geen records meer in kon zetten..
bleek dat jbuilder de tabel creatie niet had aangepast (logisch) en dat we dit handmatig uit een sql filetje moesten gaan halen..
Dit moesten we echt van een klasgenoot horen, want online was er niks over te vinden..

kortom, mijn mening:
j2ee, een prachtig idee, maar zeer slecht uitgevoerd
Ik had het niet beter kunnen zeggen.

Het spijtige is dat wij echt een BAGGER slechte leraar hadden voor het aan leren van j2ee waardoor denk wel redelijk wat verpest is qua geduld met java :)

  • Cuball
  • Registratie: Mei 2002
  • Laatst online: 03-04 10:15
Valor schreef op maandag 16 januari 2006 @ 01:52:
[...]


Ik had het niet beter kunnen zeggen.

Het spijtige is dat wij echt een BAGGER slechte leraar hadden voor het aan leren van j2ee waardoor denk wel redelijk wat verpest is qua geduld met java :)
even ter verduidelijking: J2EE leer je niet op school, dat leer je pas door ervaring, veel lezen, studeren, code bekijken etc etc. En om te zeggen dat J2EE slecht uitgewerkt is omdat je er niet overweg mee kon met je IDE slaat totaal nergens op.

J2EE vergelijken met PHP slaat ook op niet veel, beiden hebben ze hun doel met elk hun voor -en nadelen.

"Live as if you were to die tomorrow. Learn as if you were to live forever"


Verwijderd

probeer Spring+Webwork of Spring+JSF (dat beperkt de keuzes al) en Hibernate voor de persistentie.

motivatie:
-> Eens je Hibernate snapt zul je wel zonder veel moeite kunnen overschakelen naar EJB3
-> Die combinatie kun je nog op een gewone webapplicationserver draaien (dus geen complete JBoss/Geronimo/whatever maar enkel Tomcat ofzo) zodat de infrastructuur wat makkelijker is om op te zetten.
-> WebWork wordt gemerged met Struts om zo Struts 2.0 te worden, en Struts is momenteel toch dé top hit in vacatures. Maar de huidige versie van Struts zou ik je toch niet willen opdringen (zelfs niet aanraden).
-> JSF is een standaard, dat wordt dan toch al sneller aanvaard in sommige werkomgevingen.
-> Spring is blijkbaar toch een blijvertje en neemt tamelijk wat lastige taken (transaction, ...) uit je handen, dus de lastige dingen als beginner schuif je dan gewoon door naar Spring... (ik heb zelf geen ervaring met Spring, ik zie niet echt grote mogelijkheden voor Spring in een groot project, misschien mis ik ergens iets waardoor het wel deftig zou kunnen maar voorlopig geen Spring hier)

Misschien zit er ergens nog een gaatje in mijn motivatie maar ze lijkt me niet zo slecht.... Het is een tip als een ander. Je zou beter vragen welke frameworks je beter NIET gebruikt aangezien ze zich allemaal toch wel ergens bewezen hebben. Het maakt inderdaad niet zoveel uit welk je kiest maar een keuze maken ifv de jobmarkt is wel praktisch natuurlijk.

  • Alarmnummer
  • Registratie: Juli 2001
  • Laatst online: 09-07-2024

Alarmnummer

-= Tja =-

ronaldmathies schreef op zondag 15 januari 2006 @ 21:22:
[...]


Dit snap ik nu niet hé. Ik werk nu al 5 jaar met JBoss en ik vindt het nogsteeds een van de betere application servers. Juist omdat het zo gemakkelijk te configureren is. Daarnaast is de documentatie behoorlijk volledig (vroeger moesten we ervoor betalen maar tegenwoordig is ook dit gratis). Het Forum is een fantastische bron van informatie.
Heb jij andere ervaringen dan ik. Het JBoss en het Hibernate forum vind ik vrij matig.

Ik gebruik zelf voornamelijk Spring + Hibernate en ik hoef gelukkig niet zoveel aan de webkant te doen. Maar het komende project zal hier waarschijnlijk Spring-MVC voor gebruikt worden.
Verder is de gehele opbouw van de server volledig modulair. Wil je bepaalde onderdelen niet, dan haal je deze er toch gewoon uit.
Ik heb persoonlijk niet zoveel met JBoss. Verder zie ik dat door met Spring te werken een aantal technieken zie verdwijnen. JNDI is bv lang niet zo belangrijk meer, en EJB heeft ook geen toegevoegde waarde meer. Ik zie meer in een omgeving die je niet zoveel door de keel probeert te drukken. En alhoewel EJB3 een behoorlijke verbetering is tov EJB2 zie ik nog steeds geen toegevoegde waarde tov Spring. Het voelt half af aan. Ze hebben het over DI maar het is lang niet zo krachtig als Spring DI. Gelukkig bestaat er wel een JBoss microcontainer waarmee je ook heel fijnmazig DI kunt uitvoeren.

[ Voor 3% gewijzigd door Alarmnummer op 16-01-2006 09:14 ]


Verwijderd

Struts, eigenlijk geen problemen mee. Misschien komt dat omdat ik niet zulke ingewikkelde dingen doe ;) Aanrader is het boek"Jakarta Struts Cookbook" van O'Reilly. De eerder genoemde beta van Netbeans 5 heeft goede Struts ondersteuning.

[ Voor 47% gewijzigd door Verwijderd op 16-01-2006 09:21 ]


  • Bbfreak
  • Registratie: September 2002
  • Laatst online: 04-02 10:03
Valor schreef op maandag 16 januari 2006 @ 01:52:
[...]
Het spijtige is dat wij echt een BAGGER slechte leraar hadden voor het aan leren van j2ee waardoor denk wel redelijk wat verpest is qua geduld met java :)
Ik heb zelf dus ook les gehad in J2EE van twee leraren. Een die alles uit een boek haalde en imho vreselijk les gaf, verouderd en saai. De tweede leraar deed het ook als beroep naast het leraar zijn en daar heb ik echt heel veel van geleerd en de verslaving een beetje van overgenomen :)
Hij was zo gek van J2EE technieken en alles wat daaromheen zat dat ik me ook erg ben gaan interesseren voor deze wereld, bevalt me nog steeds erg goed.

Het bedrijf waar ik nu werk had nog geen keuze gemaakt qua Java frameworks en daarom heb ik voor Spring gekozen. Geeft een goede performance, wat bij een bedrijf met als CB testen en performance management geen onbelangrijk punt is!

Nog een paar kleine voordelen van Spring
  1. Spring-IDE voor Eclipse ( dit is persoonlijk en niet bedoeld als reden om Spring te gebruiken )
  2. Integratie met andere frameworks; Quartz, JavaMail, Hibernate, Struts, EJB en ga zo maar door.
  3. Uitstekende documentatie en boeken verkrijgbaar. APress Pro Spring _/-\o_
Ik wil nu binnen het bedrijf nog een goede ontwikkelstraat opzetten om de Spring projecten in te hangen maar dan ben ik echt heel erg tevreden.

Twitter @cmeerbeek / Halo Waypoint Profile


  • Valor
  • Registratie: Mei 2005
  • Laatst online: 06-02 08:25

Valor

yummie spam

Cuball schreef op maandag 16 januari 2006 @ 08:23:
[...]


even ter verduidelijking: J2EE leer je niet op school, dat leer je pas door ervaring, veel lezen, studeren, code bekijken etc etc. En om te zeggen dat J2EE slecht uitgewerkt is omdat je er niet overweg mee kon met je IDE slaat totaal nergens op.

J2EE vergelijken met PHP slaat ook op niet veel, beiden hebben ze hun doel met elk hun voor -en nadelen.
Nee ok je leert het niet maar het is wel kennis maken met.

Nee idd als je niet de IDE over zou kunnen slaat het nergens op. Alleen moet de IDE dan wel werken en dat doet ie zeker op veel gevallen ook wel echter moet het niet zo zijn dat de IDE instaat is om jouw code te wijzigen zonder daar ook maar enige vorm van melding van te geven.

  • jochemd
  • Registratie: November 2000
  • Laatst online: 29-12-2025
flowerp schreef op zondag 15 januari 2006 @ 18:50:Maar goed, wat gebruik je dan wel voor Java web applicaties?

* Struts?
* Tapestry?
* Toch stiekum JSF?
* Spring MVC?
* WebWorks?
* PHP-style (JSP's met scriptlets)
* JSP (moderne style, dus zonder Java code, maar met JSTL en EL)
* ...
CFML

Verwijderd

flowerp schreef op zondag 15 januari 2006 @ 22:23:
[...]
Hebben het Spring team en het Hibernate team niet een beetje onenigheid? De support was vooral goed met de oudere versies van Hibernate had ik begrepen, met de nieuwere schijnt het wat minder te zijn.
Er is nu net een 3rd party integratie voor gebruik van EJB3 en Spring uit:

http://www.theserverside.com/news/thread.tss?thread_id=38538

EJB3 support zal echter ook in Spring 2.0 komen maar is, ook volgens de posters in bovenstaande thread, duidelijk niet echt de ideale manier om met Hibernate/EJB3 om te gaan.
Pagina: 1