Beans

  • Themenstarter Themenstarter Frank Heinzelmann
  • Beginndatum Beginndatum
Status
Nicht offen für weitere Antworten.
F

Frank Heinzelmann

Gast
Ich beschäftige mich erst seit kurzem J2EE und arbeite mit gerade in Hibernate ein. In einem Buch über Hibernate ist bei mir eine Frage aufgetaucht, nachdem ich den Quellcode gesehen habe:

Was ist bei einer Bean besser für jede Aktion eine Bean also so
Code:
        class MyHibernateSessionBeanSave() {
                save() {
                       ....
                }
        }

        class MyHibernateSessionBeanLoad() {
                load() {
                       ....
                }
        }

oder eine Bean mit mehreren Aktionen
Code:
        class MyHibernateSessionBean() {
                save() {
                       ....
                }

                load() {
                       ....
                }
        }

Also ich rede hier nicht von der Übersichtlichkeit, da wäre der letzter Code wahrscheinlich besser, sondern von der allg. Definitionsfrage oder Performance gründen, oder spielt dieses selbst bei größeren Anwendung keine Rolle?

Danke
Frank
 
Vorweg: Was Hibernate und Beans angeht bin ich auch noch recht unbedarft.

Nach der generellen Definition würde ich eher zu Lösung 2 tendieren, dein Code-Auszug sieht allerdings irgendwie nicht wirklich nach einer standardkonformen Bean aus...

Folgendes habe ich jedenfalls erst kürzlich im "Java EE 5 Tutorial" von Sun gelesen:

[...]A property does not have to be implemented by an instance variable. It must simply be
accessible using public methods that conform to the following conventions:
■ For each readable property, the bean must have a method of the form:
PropertyClass getProperty() { ... }
■ For each writable property, the bean must have a method of the form:
setProperty(PropertyClass pc) { ... }
In addition to the property methods, a JavaBeans component must define a constructor that
takes no parameters.[...]

Vielleicht hilfts dir ja.

Gruß
winfi
 
klarkimming hat gesagt.:
Ich beschäftige mich erst seit kurzem J2EE und arbeite mit gerade in Hibernate ein

Vergiss das "alte" Hibenate und arbeite dich direkt in die JPA Umsetzung von Hibernate ein.

Insbesondere wenn du spaeter EJB 3.0 benutzen willst!

Gruesse

Meinst du Hibernate mit Annotations?
 
Er meint JPA (Java Persistence API).
Hibernate implementiert das - im Prinzip benutzt JPA Annotationen auf den Entity Beans und den EntityManager. Mehr brauchts nicht - kein XML, keine hibernatespezifischen Klassen (nur javax.persistence.* ).

Weitere JPA-Implementationen sind EclipseLink (ehem. Oracle TopLink - war vor einiger Zeit noch richtig richtig teuer ^^), OpenJPA, JPOX, etc.
 
Status
Nicht offen für weitere Antworten.

Zurück
Oben