java-forum.org - Java programmieren aus Leidenschaft
Java 6 Einstieg und professioneller Einsatz
Alter Preis: 34,90 EUR
Jetzt: 0,00 EUR

zzgl. Versandkosten

Zurück   java-forum.org - Java programmieren aus Leidenschaft > Java - Programmierung > Datenbankprogrammierung

Datenbankprogrammierung Fragen zur Anbindung und Programmierung von Datenbanken bzw. Datenbankabfragen

Thema geschlossen    
Themen-Optionen Thema durchsuchen Ansicht
Alt 26.11.2007, 08:48   #1 (permalink)
Stammbenutzer
Floppy Disc
 
Registriert seit: 16.12.2006
Fachbeiträge: 722
Abgegebene Danke: 32
Erhielt 3 Danke für 3 Beiträge
Standard Hibernate - Werte aus 2 Tabellen laden

Hi!
Folgendes Problem:

Ich habe Tabelle A mit 3 Columns: id, name, desc und Tabelle B mit 2 Columns: length, unit.
Wie geht ihr nun damit um wenn ihr bpsw aus Table A eine Zeile mit der ID = 3 lädt und gleichzeitig aus der Tabelle B den Wert length benötigt? Mit SQL macht man ja einfach einen Join, nur wie löst man das mit Hibernate, da ich ja dann kein geeignetes mapping objekt habe - sprich ich besitze ein mapping für Tabelle A und eines für Tabelle B - aber kein Mapping für beide Tabellen gleichzeitig.

mfg
y0dA ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Alt 26.11.2007, 08:51   #2 (permalink)
Java-Forum Team
Moderator
 
Benutzerbild von SlaterB
 
Registriert seit: 13.11.2005
Fachbeiträge: 31.675
Abgegebene Danke: 0
Erhielt 2.570 Danke für 2.531 Beiträge
select a.id, b.length from A a, B b where a.id = b.unit

du bekommst eine List<Object[]>
__________________
Hansa wird Meister.
SlaterB ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Alt 26.11.2007, 08:53   #3 (permalink)
Stammbenutzer
Floppy Disc
Themenstarter
 
Registriert seit: 16.12.2006
Fachbeiträge: 722
Abgegebene Danke: 32
Erhielt 3 Danke für 3 Beiträge
ja und wenn ich ein list object bekomme muss ich dann casten od wie, deshalb wollte ich ja wissen ob es mit mapping auch geht
y0dA ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Alt 26.11.2007, 09:01   #4 (permalink)
Java-Forum Team
Moderator
 
Benutzerbild von SlaterB
 
Registriert seit: 13.11.2005
Fachbeiträge: 31.675
Abgegebene Danke: 0
Erhielt 2.570 Danke für 2.531 Beiträge
allgemein kann man Objekte auch über mehrere Tabellen mappen, ja,
da kann ich aber leider konkret nicht weiterhelfen, Lehrbuch?

parallele Mappings (neben den normalen für A und B) nur für spezielle Anfragen klingen dagegen merkwürding/ gefährlich,
auch dazu nix genaues von meiner Seite
__________________
Hansa wird Meister.
SlaterB ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Alt 26.11.2007, 09:16   #5 (permalink)
Stammbenutzer
Megabyte
 
Registriert seit: 11.09.2005
Fachbeiträge: 1.059
Abgegebene Danke: 0
Erhielt 1 Danke für 1 Beitrag
Also generell sollte man da überlegen, ob die Tabellen nicht auch in der Objektwelt zusammengehören, sprich ob Entität A nicht eine Assoziation zu B bekommen sollte - dann werden die Objekte bereits über ein simples get/load mit eingetütet - per lazy-loading auch entsprechend nur dann, wenn es wirklich benötigt wird (sprich beim Zugriff innerhalb der Session oder explizit via hql).

Ansonsten wenn man ganz frei nen sql/hql absetzt auf zwei unterschiedliche Dinge, kann Hibernate natürlich auch nicht wirklich raten, bzw. wenn man halt mehrere unterschiedliche Objekte in einer Ergebnisliste hat, muss man halt casten

Wir haben hier manchmal spezielle Mappings für spezielle Entitäten die über mehrere Tabellen gehen also eine Beziehung zwischen mehreren Tabellen/views aufmachen, die einzeln ebenfalls abgedeckt sind - einfach weil es performanter oder vom Zugriff später dadurch einfacher wird... - kann sich also in Einzelfällen evtl. lohnen.
__________________
"The use of COBOL cripples the mind; its teaching should, therefore, be
regarded as a criminal offence."

Edsger W. Dijkstra
SnooP ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Alt 26.11.2007, 09:20   #6 (permalink)
Stammbenutzer
Floppy Disc
Themenstarter
 
Registriert seit: 16.12.2006
Fachbeiträge: 722
Abgegebene Danke: 32
Erhielt 3 Danke für 3 Beiträge
Leider ist mir das Datenmodell vorgegeben bzw gehören die beiden Tabellen getrennt.

Zitat:
Wir haben hier manchmal spezielle Mappings für spezielle Entitäten die über mehrere Tabellen gehen also eine Beziehung zwischen mehreren Tabellen/views aufmachen, die einzeln ebenfalls abgedeckt sind - einfach weil es performanter oder vom Zugriff später dadurch einfacher wird... - kann sich also in Einzelfällen evtl. lohnen.
Wie darf man sich das vorstellen, bzw wie sieht so eine mapping datei dann aus?
y0dA ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Alt 26.11.2007, 09:25   #7 (permalink)
ms
Stammbenutzer
Floppy Disc
 
Registriert seit: 16.08.2007
Fachbeiträge: 802
Abgegebene Danke: 0
Erhielt 1 Danke für 1 Beitrag
Die Frage ist, wie maki schon gesagt hat, wie die beiden Tabellen in Beziehung miteinander stehen.
Oder anders gefragt, wie sieht denn derzeit dein SQL-Statement für diese Abfrage aus?

ms
ms ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Alt 26.11.2007, 09:27   #8 (permalink)
Stammbenutzer
Megabyte
 
Registriert seit: 11.09.2005
Fachbeiträge: 1.059
Abgegebene Danke: 0
Erhielt 1 Danke für 1 Beitrag
das die beiden Tabellen getrennt gehören ist ja kein Problem für das zusammenlegen auf Objektebene.

Es spricht nichts dagegen in dein Objekt A eine Assoziation (one-to-one) zu dem anderen Objekt zu haben. Auf der DB wird dies ja entsprechend berücksichtigt, sprich die beiden Tabellen so gelassen.

Du brauchst halt eine Entität, die genau die Properties besitzt, die du brauchst. Zusammengeklaubt aus den einzelnen Spalten aller benötigten Tabellen... das mapped man ganz normal und verbindet die Entity dann aber nicht mit einer konkreten Tabelle sondern via manuellem mapping bei einem sql-statement entsprechend...

beim Inserten muss man dann natürlich evtl. nochmal gucken... das Problem hatte ich aber nie - haben sowas für spezielle Select-Objekte gemacht, wenn man irgendwas "größeres" zur Anzeige bringen wollte.
__________________
"The use of COBOL cripples the mind; its teaching should, therefore, be
regarded as a criminal offence."

Edsger W. Dijkstra
SnooP ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Alt 26.11.2007, 09:30   #9 (permalink)
Stammbenutzer
Floppy Disc
Themenstarter
 
Registriert seit: 16.12.2006
Fachbeiträge: 722
Abgegebene Danke: 32
Erhielt 3 Danke für 3 Beiträge
Es ist eine 1:n Beziehung von Tabelle Feature zu Tabelle Feature_Interconnection. Fremdschlüsselbeziehung Feature.F_ID = Feature_Interconnection.FI_F_ID.

Zur Zeit habe ich hierfür 2 getrennte Stmts, da ich zum damaligen ZEitpunkt noch die Distanz berechnen musste - mittlerweile ist die Distanz aber in den Daten vorhanden.

Stmt sollte schlichtweg so aussehen (da oracle funktionen benutzt werden wohl nur mittels SQL möglich):

Code:
 SELECT *
 FROM feature, feature_interconnection
 WHERE SDO_NN (feature.f_geom,  SDO_GEOMETRY( 2001, 8307, SDO_POINT_TYPE( 9.65522833333333, 47.346115, null), null, null), ' SDO_NUM_RES = 10 unit=meter', 1) = 'TRUE'
 AND SDO_WITHIN_DISTANCE( feature.f_geom,  SDO_GEOMETRY( 2001, 8307, SDO_POINT_TYPE( 9.65522833333333, 47.346115, null), null, null), ' DISTANCE = 25 unit=meter') = 'TRUE'
 AND f_ft_id = 1
 AND feature.f_id = feature_interconnection.fi_f_id
**EDIT**
Also mach ich nun eine many to one oder eine join beziehung in mein mapping?
Code:
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC
	"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
	"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping package="at.pcd.wam.technologie.persistence.model">
	<class name="at.pcd.wam.technologie.persistence.model.FeatureModel"
		table="FEATURE">

		
		<id name="id" type="integer" column="F_ID">
		<generator class="assigned" />
		</id>

		<property name="dataSupplierSourceId" type="integer" column="F_DSS_ID" />
		<property name="featureTypeId" type="integer" column="F_FT_ID" />
		<property name="geom" type="at.pcd.wam.technologie.persistence.custom.type.JGeometryType" column="F_GEOM" />
		<property name="insert" type="timestamp" column="F_INSERT" />
		<property name="intersectionId" type="integer" column="F_INTERSECTION_ID" />
		<property name="name" type="string" column="F_NAME" />
		<property name="update" type="timestamp" column="F_UPDATE" />

	</class>
</hibernate-mapping>
y0dA ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Alt 26.11.2007, 09:43   #10 (permalink)
Stammbenutzer
Megabyte
 
Registriert seit: 11.09.2005
Fachbeiträge: 1.059
Abgegebene Danke: 0
Erhielt 1 Danke für 1 Beitrag
das ist eine many-to-one Beziehung mit column= auf die Feature_Interconnection Fremdschlüsselspalte... wenn bijektiv, muss noch ein mappedBy dazukommen... obwohl ich grad nich mehr weiß, wie genau das bei hibernate-xml aussieht... nutze nur noch JPA da ist das anders.
__________________
"The use of COBOL cripples the mind; its teaching should, therefore, be
regarded as a criminal offence."

Edsger W. Dijkstra
SnooP ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Alt 26.11.2007, 09:44   #11 (permalink)
ms
Stammbenutzer
Floppy Disc
 
Registriert seit: 16.08.2007
Fachbeiträge: 802
Abgegebene Danke: 0
Erhielt 1 Danke für 1 Beitrag
Gut, dann ganz einfach 2 Klassen, die jeweils die genannten Attribute hat und eine many-to-one Definition im mapping der Kindklasse und eine Collection-Definition nach Wahl im mapping in der Elternklasse.

Siehe dazu auch hier: http://www.hibernate.org/hib_docs/re...ociations.html

Übrigens sollte es möglich sein (habs noch nicht probiert) durch Ableiten von OracleDialect zusätzliche Funktionen zu definieren, die dann in HQL verwendet werden können. Siehe hier: Oracle9Dialect.java


btw: Hast du das Performanceproblem schon lösen können?

ms
ms ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Alt 26.11.2007, 09:52   #12 (permalink)
Stammbenutzer
Floppy Disc
Themenstarter
 
Registriert seit: 16.12.2006
Fachbeiträge: 722
Abgegebene Danke: 32
Erhielt 3 Danke für 3 Beiträge
Zitat: ms
Gut, dann ganz einfach 2 Klassen, die jeweils die genannten Attribute hat und eine many-to-one Definition im mapping der Kindklasse und eine Collection-Definition nach Wahl im mapping in der Elternklasse.

Siehe dazu auch hier: http://www.hibernate.org/hib_docs/re...ociations.html

Übrigens sollte es möglich sein (habs noch nicht probiert) durch Ableiten von OracleDialect zusätzliche Funktionen zu definieren, die dann in HQL verwendet werden können. Siehe hier: Oracle9Dialect.java


btw: Hast du das Performanceproblem schon lösen können?

ms
Ich arbeite grad an dem Performanceproblem (diesbezüglich antworte ich dann im entsprechenden Thread).

Also ich brauche nun 2 mapping dateien und 2 Klassen - eine für Feature und eine für Feature_Interconnection?
Elternklasse ist feature?
Kindklasse ist Feature_Interconnection?
<many-to-one> schreibe ich dann in das Eltern- oder Kindmapping?
Wie sieht dann das Objekt aus, dass ich zurückbekomme beim ausführen des Stmts?
y0dA ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Alt 26.11.2007, 10:00   #13 (permalink)
ms
Stammbenutzer
Floppy Disc
 
Registriert seit: 16.08.2007
Fachbeiträge: 802
Abgegebene Danke: 0
Erhielt 1 Danke für 1 Beitrag
Zitat: y0dA
Also ich brauche nun 2 mapping dateien und 2 Klassen - eine für Feature und eine für Feature_Interconnection?
Ja

Zitat: y0dA
Elternklasse ist feature?
Kindklasse ist Feature_Interconnection?
Wenn ein Feature viele Feature_Interconnections haben kann, dann ja, ansonsten eben umgekehrt.

Zitat: y0dA
<many-to-one> schreibe ich dann in das Eltern- oder Kindmapping?
In das Kind-Mapping.
Im Elternmapping definierst du am einfachsten eine Collection die dann die Kinder enthalten wird. Siehe dazu Collection Mapping

Zitat: y0dA
Wie sieht dann das Objekt aus, dass ich zurückbekomme beim ausführen des Stmts?
Du machst ein SELECT auf das Elternobjekt und in der Collection werden die Kinder mit- bzw. nachgeladen. Je nach dem, ob du lazyloading aktiviert hast.

ms
ms ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Alt 26.11.2007, 10:15   #14 (permalink)
Stammbenutzer
Floppy Disc
Themenstarter
 
Registriert seit: 16.12.2006
Fachbeiträge: 722
Abgegebene Danke: 32
Erhielt 3 Danke für 3 Beiträge
ok, es ist eine 1:1 beziehung - irgendwelche änderungen?
wie aktiviere ich lazyloading?

**EDIT**
Die beiden Tabellen stehen ein wenig komisch zu einander:
+) Es gibt eine Fremdschlüsselbeziehunge F_ID = FI_F_ID
--> Es gibt pro F_ID auch nur einen Datensatz in der Feature_Interconnection mit FI_F_ID
+) Jedoch hat die Tabelle Feature_Interconnection einen eigenen Primärschlüssel und benutzt nicht den Fremdschlüssel als PK.
y0dA ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Alt 26.11.2007, 11:01   #15 (permalink)
Stammbenutzer
Megabyte
 
Registriert seit: 11.09.2005
Fachbeiträge: 1.059
Abgegebene Danke: 0
Erhielt 1 Danke für 1 Beitrag
Zitat: y0dA
ok, es ist eine 1:1 beziehung - irgendwelche änderungen?
es gibt zwar auch one-to-one - ist aber nur ne spezielle Form der one-to-many, sprich geht auch beides.

Zitat:
wie aktiviere ich lazyloading?
Das ist der Standard

Zitat:
**EDIT**
Die beiden Tabellen stehen ein wenig komisch zu einander:
+) Es gibt eine Fremdschlüsselbeziehunge F_ID = FI_F_ID
--> Es gibt pro F_ID auch nur einen Datensatz in der Feature_Interconnection mit FI_F_ID
find ich jetzt gar nich komisch ... letztlich wie gehabt: trag in der one-to-many beziehung unter column (siehe doku da stehts ganz genau) den foreign-key der "Feature_Interconnection" Tabelle ein... (FI_F_ID)...

Zitat:
+) Jedoch hat die Tabelle Feature_Interconnection einen eigenen Primärschlüssel und benutzt nicht den Fremdschlüssel als PK.
das macht gar nix ...
__________________
"The use of COBOL cripples the mind; its teaching should, therefore, be
regarded as a criminal offence."

Edsger W. Dijkstra
SnooP ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Alt 26.11.2007, 11:06   #16 (permalink)
ms
Stammbenutzer
Floppy Disc
 
Registriert seit: 16.08.2007
Fachbeiträge: 802
Abgegebene Danke: 0
Erhielt 1 Danke für 1 Beitrag
Zitat: y0dA
ok, es ist eine 1:1 beziehung - irgendwelche änderungen?
Öhm ... ja, da muss dann ein one-to-one im mapping stehen.
Hier ist aber die Eltern-Kind-Beziehung (falls es überhaupt eine gibt) nicht mehr so klar wie bei 1:n.
Es gibt dann natürlich keine Collection von Features mehr, sondern nur mehr ein Feature.

Siehe dazu hier: http://www.hibernate.org/hib_docs/re...ation-onetoone

Du solltest einen halben bis ganzen Tag ins Lesen der Doku investieren. Da ist das wichtigste sehr gut aber kurz erklärt.

Zitat: y0dA
wie aktiviere ich lazyloading?
Ab 3.0 ist lazyloading defaultmäßig aktiviert.

Dass es einen eigenen Primärschlüssel gibt ist ok.

ms
ms ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Alt 26.11.2007, 11:07   #17 (permalink)
Stammbenutzer
Floppy Disc
Themenstarter
 
Registriert seit: 16.12.2006
Fachbeiträge: 722
Abgegebene Danke: 32
Erhielt 3 Danke für 3 Beiträge
ok, leider steh ich heute extremst auf der Leitung, also hier meine 2 hbm files:

feature hbm, welche das objekt feature_interconnection bekommen soll. Was muss ich hier angeben, eine Collection (es wird ja nur 1 Objekt gefunden werden), wie adde ich die Collection?
Code:
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC
	"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
	"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping package="at.pcd.wam.technologie.persistence.model">
	<class name="at.pcd.wam.technologie.persistence.model.FeatureModel"
		table="FEATURE">

		
		<id name="id" type="integer" column="F_ID">
		<generator class="assigned" />
		</id>
	
		<property name="dataSupplierSourceId" type="integer" column="F_DSS_ID" />
		<property name="featureTypeId" type="integer" column="F_FT_ID" />
		<property name="geom" type="at.pcd.wam.technologie.persistence.custom.type.JGeometryType" column="F_GEOM" />
		<property name="insert" type="timestamp" column="F_INSERT" />
		<property name="intersectionId" type="integer" column="F_INTERSECTION_ID" />
		<property name="name" type="string" column="F_NAME" />
		<property name="update" type="timestamp" column="F_UPDATE" />

	</class>
</hibernate-mapping>
die "kindklasse":
Code:
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC
	"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
	"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping package="at.pcd.wam.technologie.persistence.model">
	<class name="at.pcd.wam.technologie.persistence.model.FeatureInterconnectionModel"
		table="FEATURE_INTERCONNECTION">

		
		<id name="id" type="integer" column="FI_ID">
		<generator class="assigned" />
		</id>

		<many-to-one name="featureId" class="at.pcd.wam.technologie.persistence.model.FeatureModel"
			column="FI_F_ID" unique="true"/>

		<property name="featureFrom" type="integer" column="FI_F_FEATURE_FROM" />
		
		<property name="featureInterconnectionTypeId" type="integer" column="FI_FIT_ID" />
		<property name="featureTo" type="integer" column="FI_F_FEATURE_TO" />
		<property name="length" type="float" column="FI_LENGTH" />
		<property name="lengthUnit" type="string" column="FI_LENGTH_UNIT" />

	</class>
</hibernate-mapping>
**EDIT**
Also wird nun nur mehr in eines der beiden hbm files eine one-to-one eingetragen? leider habe ich keine zeit zum doku lesen (unter der woche zumindest - habs immo sehr stressig).

Sollte wohl dies umsetzen?:
Code:
Alternatively, a foreign key with a unique constraint, from Employee to Person, may be expressed as: 

<many-to-one name="person" class="Person" column="PERSON_ID" unique="true"/>
And this association may be made bidirectional by adding the following to the Person mapping: 

<one-to-one name"employee" class="Employee" property-ref="person"/>
**EDIT**
Dürfte es nun geschafft haben -.-

-->
Code:
		<one-to-one name="fInterconModel" class="at.pcd.wam.technologie.persistence.model.FeatureInterconnectionModel"
			property-ref="featureId"/>
und das trage ich in die featuremodel hbm ein.

danke euch.
y0dA ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Alt 26.11.2007, 11:24   #18 (permalink)
ms
Stammbenutzer
Floppy Disc
 
Registriert seit: 16.08.2007
Fachbeiträge: 802
Abgegebene Danke: 0
Erhielt 1 Danke für 1 Beitrag
Kind-Mapping sollte so bleiben wie es ist.
Im Elternmapping steht dann
Code:
<one-to-one name="feature_interconnection" class="at.pcd.....Feature_interconnection"
         column="FI_F_ID" property-ref="f_id"/>
Wenn auch Datensätze angelegt bzw. gelöscht werden sollen, müssen die cascadings gesetzt werden.

ms
ms ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Alt 26.11.2007, 11:25   #19 (permalink)
Stammbenutzer
Floppy Disc
Themenstarter
 
Registriert seit: 16.12.2006
Fachbeiträge: 722
Abgegebene Danke: 32
Erhielt 3 Danke für 3 Beiträge
Zitat: ms
Kind-Mapping sollte so bleiben wie es ist.
Im Elternmapping steht dann
Code:
<one-to-one name="feature_interconnection" class="at.pcd.....Feature_interconnection"
         column="FI_F_ID" property-ref="f_id"/>
Wenn auch Datensätze angelegt bzw. gelöscht werden sollen, müssen die cascadings gesetzt werden.

ms
reicht es nicht, wenn ich nur folgendes in das featuremodel hbm schreibe:
Code:
		<one-to-one name="fInterconModel" class="at.pcd.wam.technologie.persistence.model.FeatureInterconnectionModel"
			property-ref="featureId"/>
zumindest funktioniert es so bei mir, sprich ich habe nur in ein hbm file die beziehung bekannt gegeben.
y0dA ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Alt 26.11.2007, 11:35   #20 (permalink)
Stammbenutzer
Megabyte
 
Registriert seit: 11.09.2005
Fachbeiträge: 1.059
Abgegebene Danke: 0
Erhielt 1 Danke für 1 Beitrag
das geht aber auch nur dann, wenn du die featureID also den Foreignkey als tatsächliches Attribut in deiner Entity hast... was eigentlich blöd ist, weil ein solcher Key eigentlich keine weitere Information in dein Objekt bringt sondern eher eine Verknüpfungsinfo für die DB ist... - und genau das kann dir hibernate an der stelle abnehmen, er stellt die Beziehung via column genau so eher, ohne dass du den Foreignkey noch zusätzlich in deiner FeatureInterconnection drinne haben musst.

zum Doku lesen: die ist eigentlich im singe-document so aufgebaut, dass man mit einigen Schlüsselwörtern prima die richtigen Informatinonen zeitnah rausziehen kann... das geht imho schneller als die Informationen aus dem Forum zu ziehen, auch wenn wir dir natürlich gerne helfen ... sind ja schon interessantere Themen als NoClassDefFound
__________________
"The use of COBOL cripples the mind; its teaching should, therefore, be
regarded as a criminal offence."

Edsger W. Dijkstra
SnooP ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Thema geschlossen    

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Hibernate: Abfrage über 2 Tabellen pusteblume Data Tier 2 22.01.2009 12:30
[Hibernate] Constraints über mehrere Tabellen Java Basics - Anfänger-Themen 2 30.09.2008 14:03
Hibernate - Mapping der Beziehung zwischen 2 Tabellen y0dA Datenbankprogrammierung 2 23.01.2008 11:51
[Hibernate] Alle Objekte laden aus der DB laden Fenixx Java Basics - Anfänger-Themen 6 23.08.2007 09:48
Tabellen als XML exportieren mit Hibernate ZeHa Datenbankprogrammierung 0 11.12.2006 10:21


Lesezeichen

Forumregeln
Es ist Ihnen erlaubt, neue Themen zu verfassen.
Es ist Ihnen erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are aus
Pingbacks are aus
Refbacks are aus


Alle Zeitangaben in WEZ +1. Es ist jetzt 05:04 Uhr.


Powered by vBulletin® Version 3.8.6 (Deutsch)
Copyright ©2000 - 2013, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.3.2
Thanks for Smilies by smilies.4-user.de