DAO Pattern in EJB 3, Dao's auch als SessionBeans ?

navino

Mitglied
Hallo,

ich bin gerade dabei ein JSF-Spring-Anwendung zu EJB 3.1 zu migrieren.
Ich frage mich gerade allerdings wie ich das mit den DAO's mache. Ich habe in der alten Anwendung halt ein Interface und eine Hibernate bzw. JPA Implementierung.
Werde jetzt nur noch noch die JPA-Implementierung nutzen wollen.

Deklariere ich die Dao's auch als Sessionbeans?

Gruß
navino

Hallo,

habe mir mal mit maven ein Beispiel von fluttercode angesehen... In dem wird das auch mit SessionBeans gemacht.... Dann mache ich das auch erstmal so ;-)

Gruß
navino
 
Hi,

ich mache das immer nach Schema F:


Code:
[M] <---  [DB & Persistence]
[O]               |
[D] <---  [DAO-Schicht        ]
[E]               |
[L] <---- [Service Schicht    ]  ---> [Externe Services] 
                   |
[DTO] --[Frontend Services]
Hierbei gilt :

DTO -> POJOs
Model -> JPA-POJOs
DAO, Services, Controller, XI -> Stateless Session Beans


bin bisher immer gut damit gefahren
 
Hallo,

hört sich gut an, so mache ich das auch.
Verstehe ich das richtig, das bei dir DTO's die Serviceschicht verlassen ?
So wollte ich das zumindest machen...

Gruß
navino
 
yup.

kostet mehr zeit, aber die abstraktionsmöglichkeiten sind einfach besser.

wenn der jsf-anteil direkt auf der box läuft, würde ich mir diese schicht aber sparen.

grüße,
gore
 
Was meinst du mit jsf-anteil auf der box ?
Das mit dem richtigen deployen von jsf und ejb-komponenten hab ich auch noch nicht verstanden!
Benutze zur Zeit noch die JBoss-Tools, möchte das später aber auch von Hand machen...
Erzeuge ich da für die web-app ein war-file und für das andere ein jar oder ear?
Oder packe ich alles in ein ear?
Und da hab ich noch ne Frage: Wenn ich ein jar in der Webapp und und in den ejb benötige (z.B log4j) muss ich das in beiden Teilen reinpacken, und wohin?

Gruß
navino
 
ganz einfach:

schau dir mal die maven-archetypes für JBoss an. Da gibt es einen Classic-Ansatz (Webapp Archetype for JBoss 7 containing an EAR, WAR and EJB JAR).

Das Teil zieht Dir einen kompletten, direkt deploybaren Workspace hoch, den Du dann in eclipse importieren kannst. Der Charme dabei ist, dass a) die JBoss Tools bereits maven-Support haben und b) Du den Build dann nicht mehr nur aus eclipse, sondern auch aus der commandline, einem CI-Server o.ä. machen kannst.

Grüße,
gore

Nachtrag :

Hierzu einfach mal - wenn noch nicht vorhanden - lokal maven (maven.apache.org) installieren, das bin-Verzeichnis in den %PATH% einbinden und dann mvn archetype:generate aufrufen, falls Du das noch nie gemacht hast.
 
Zurück