[linux-l] Was mich an WebApplikationen immer und?immerwiderAnkotzt...

Rocco Rutte pdmef at gmx.net
Sa Aug 2 18:23:23 CEST 2008


Hi,

* Olaf Radicke wrote:
>Am Samstag 02 August 2008 17:05:49 schrieb Rocco Rutte:
>> Erstens ist es Sache des DB-Treibers die Daten übers Netz zu schaufeln
>> und das wird wohl kein XML sondern proprietäre und binär sein. Und es
>> wird nicht in Klasseninstanzen geparst.

>Dann muss ich was falsch verstanden haben. Ich dachte, ich würde im Ersten 
>Schritt Klassen definieren die meine Daten Repräsentieren. Also z.B.

Ja, geht auch so ungefähr (Spring habe ich immer ignoriert weil ich 
nicht weiss wofür ich es brauche; nur als Wrapper um Hibernate wg. des 
Session-Handlings scheint mir doch etwas viel Overhead). Ich dachte mit 
XML meintest du die Daten, die für Aggregationen verwendet werden, um 
ein Ergebnis zu ermitteln.

Mit Hibernate werden die Wrapper aus Annotations/XML glaube ich nur 
einmal gebaut, es reicht ja auch. Pro Record wird dann natürlich auch 
eine Instanz deiner Klasse erzeugt (was ja aber auch der Fall ist wenn 
man per Hand ein ResultSet ausliest und eine Klasse vollstopft).

>Wenn ich jetzt noch versuchen wollte meine Lassen Datenbankoptimiert zu 
>gestalten, kommt einen Zoowächter gleich, der zum füttern der der Tiger einen 
>Elefanten auf der Nase balancieren muss. Das ist mein Eindruck gewesen, als 
>ich mich in Spring und Hibernate eingelesen habe.

Was heisst denn "datenbankoptimiert" in dem Fall genau? Im Zweifel würde 
ich eher ORM vertrauen, weil der DB-Dialekt besser kennt als einen Wald- 
und Wiesencoder (nicht du :).

Zum Beispiel weiss Hibernate bei Postgres, dass es für Blob die Large 
Object des Treibers API nehmen muss statt den bytea Typ (weil letzterer 
verlangt, dass man die Daten komplett im Speicher halten kann, ersterer 
nicht). Oder Sequences/AutoInkrement, was eher DB-spezifisch ist.

Sowas schreit praktisch nach Spaghetti-Code, wenn man es selbst 
"datenbankoptimiert" hinbekommen will... oder meinst du was anderes?

MfG, Rocco



Mehr Informationen über die Mailingliste linux-l