Hallo,
EJB ist ziemliches Neuland für mich.
Ich komme eher aus der Ecke mit Spring, Hibernate...
Es geht mir erst mal ums Verständnis:
Bei Spring habe ich von einer Entity auf eine Repository (Datenschicht) -> diese auf den Anwendungskern (Service-Klasse) und schließlich auf eine JSF Seite zugegriffen.
Im ManagedBean hab ich die Daten von der JSF Seite gespeichert, die wiederum zu der Service - Klasse gehen etc.
Nun möchte ich ein Projekt realisieren, das OHNE Spring auskommt, sondern EJB 3.0!
Ich habe gehört, dass ich dann nur eine Service - Klasse brauche, in der ich dann meine NamedQueries auch reinstecke.
Jetzt ist mir aber unklar, ob ich ein ManagedBean brauche etc.
Vorteilhaft wäre, wenn mir hier jemand einen einfachen Code hinschreiben könnte, der zB nach einer ID sucht.
Das würde mir ungemein helfen. Oder gibts irgendwo Beispiele?
Hier ist mal der Code von dem bisherigen ServiceBean:
EJB ist ziemliches Neuland für mich.
Ich komme eher aus der Ecke mit Spring, Hibernate...
Es geht mir erst mal ums Verständnis:
Bei Spring habe ich von einer Entity auf eine Repository (Datenschicht) -> diese auf den Anwendungskern (Service-Klasse) und schließlich auf eine JSF Seite zugegriffen.
Im ManagedBean hab ich die Daten von der JSF Seite gespeichert, die wiederum zu der Service - Klasse gehen etc.
Nun möchte ich ein Projekt realisieren, das OHNE Spring auskommt, sondern EJB 3.0!
Ich habe gehört, dass ich dann nur eine Service - Klasse brauche, in der ich dann meine NamedQueries auch reinstecke.
Jetzt ist mir aber unklar, ob ich ein ManagedBean brauche etc.
Vorteilhaft wäre, wenn mir hier jemand einen einfachen Code hinschreiben könnte, der zB nach einer ID sucht.
Das würde mir ungemein helfen. Oder gibts irgendwo Beispiele?
Hier ist mal der Code von dem bisherigen ServiceBean:
Java:
package session;
import java.util.List;
import javax.ejb.Stateless;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import javax.persistence.Query;
import ..............entity.ServiceDefinition;
@Stateless(name="ejb/ServiceManagementBean")
public class ServiceManagementBean implements ServiceManagementLocal {
@PersistenceContext(unitName="service-config")
EntityManager entityManager;
@Override
public void addNewServiceDefinition(ServiceDefinition sd) {
entityManager.persist(sd);
}
@Override
public void removeNewServiceDefinition(ServiceDefinition sd) {
entityManager.remove(sd);
}
@Override
public void updateServiceDefinition(ServiceDefinition sd) {
entityManager.merge(sd);
}
@Override
public ServiceDefinition[] getAllServiceDefinitions() {
Query query = entityManager.createQuery("from ServiceBinding");
return (ServiceDefinition[]) query.getResultList().toArray(new ServiceDefinition[]{});
}
@Override
public List<ServiceDefinition> findByInternalCategory(String category){
Query query = entityManager.createQuery("FROM ServiceDefinition sd WHERE UPPER(sd.INTERNAL_CATEGORY) LIKE UPPER(:internalCategory)");
query.setParameter("category","%"+category+"%");
List<ServiceDefinition> servicedefinition=query.getResultList();
return servicedefinition;
}