benhaze
Mitglied Platinum
Hallo!
Ich habe folgendes Problem und komme dabei einfach nicht richtig weiter.
Ich möchte im Prinzip *nur* meine HibernateConfiguration *programatisch*
erweitern. Das klappt aber nur bedingt.
Diesen Block möchte ich als Code verfassen.
Da aber die API unvollständig dokumentiert ist, komme ich einfach nicht weiter.
Ich wäre froh, könnte mir jemand helfen!
So habe ich angefangen:
(Constraints und Spalten werden richtig angelegt, nur habe ich irgendetwas anderes falsch gemacht, sodas ich nun einen Hinweis bekomme (im createSessionFactory) das user_id nicht vorhanden ist)
Hat jemand eine Idee, wie man mit den Klassen:
- ManyToOne
- Property
- Column
umzugehen hat?
Ich habe folgendes Problem und komme dabei einfach nicht richtig weiter.
Ich möchte im Prinzip *nur* meine HibernateConfiguration *programatisch*
erweitern. Das klappt aber nur bedingt.
Code:
<many-to-one class="de.test.platform.TestEntity" fetch="select" name="schwfirma">
<column name="user_id"/>
</many-to-one>
Diesen Block möchte ich als Code verfassen.
Da aber die API unvollständig dokumentiert ist, komme ich einfach nicht weiter.
Ich wäre froh, könnte mir jemand helfen!
So habe ich angefangen:
(Constraints und Spalten werden richtig angelegt, nur habe ich irgendetwas anderes falsch gemacht, sodas ich nun einen Hinweis bekomme (im createSessionFactory) das user_id nicht vorhanden ist)
Code:
ManyToOne v = new ManyToOne(t);
//v.setTypeName(p_type);
v.setTable(t);
v.setFetchMode(FetchMode.SELECT);
v.setReferencedEntityName("de.test.TestEntity");
v.setLazy(true);
v.setUnwrapProxy(false);
Column col = new Column("user_id");
col.setNullable(true);
col.setUnique(false);
if (p_length != null)
col.setLength(p_length);
v.addColumn(col);
v.setEmbedded(true);
v.setIdentifierGeneratorStrategy("assigned");
col.setValue(v);
Column mycol = new Column(colNameInDB);
mycol.setNullable(true);
mycol.setUnique(false);
mycol.setValue(v);
if (p_length != null)
mycol.setLength(p_length);
t.addColumn(mycol);
List l = new ArrayList<Column>();
l.add(mycol);
t.createForeignKey(null,l, "de.test.TestEntity");
Property p = new Property();
p.setGeneration(PropertyGeneration.NEVER);
p.setLazy(false);
p.setOptional(true);
p.setValue(v);
p.setName(fieldName);
p.setNodeName(fieldName);
p.setPropertyAccessorName("property");
p.setCascade("none");
p.setUpdateable(false);
p.setInsertable(false);
p.setSelectable(true);
p_persistenClass.addProperty(p);
Hat jemand eine Idee, wie man mit den Klassen:
- ManyToOne
- Property
- Column
umzugehen hat?