Galera, eu tenho o seguinte mapeamento:
:arrow: uma pessoa pode fazer várias doações
:arrow: e uma doação só pode ser feita por uma pessoa
Só que não estou conseguindo faze-lo funcionar, podem me ajudar??
Esses são meus .hbm:
o Dizimista…
[code]<?xml version=“1.0” encoding=“UTF-8”?>
<!DOCTYPE hibernate-mapping PUBLIC “-//Hibernate/Hibernate Mapping DTD 3.0//EN” “http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd”>
<hibernate-mapping>
<class dynamic-insert=“false” dynamic-update=“false” mutable=“true” name=“modelo.Dizimista” optimistic-lock=“version” polymorphism=“implicit” select-before-update=“false”>
<id column=“cod” name=“codigo” type=“integer”>
<generator class=“native” />
</id>
<property column="nome" name="nome" type="string"/>
<property column="ende" name="endereco" type="string"/>
<property column="datan" name="data" type="string"/>
<one-to-many name="contribuicao" class="modelo.Contribuicao">
<column name="codcont" />
</one-to-many>
</class>
</hibernate-mapping>[/code]
E o Contribuicao:
[code]<?xml version=“1.0” encoding=“UTF-8”?>
<!DOCTYPE hibernate-mapping PUBLIC “-//Hibernate/Hibernate Mapping DTD 3.0//EN” “http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd”>
<hibernate-mapping>
<class name=“modelo.Contribuicao” table=“contribuicao”/>
<class name=“modelo.Contribuicao” table=“contribuicao”>
<id name="codcont" column="codcont" type="integer" >
<generator class="native" />
</id>
<property name="codcont" column="codcont" type="integer" />
<property name="coddiz" column="coddiz" type="integer" />
<property name="datacont" column="datacont" type="string" />
<property name="janeiro" column="janeiro" type="boolean" />
<property name="fevereiro" column="fevereiro" type="boolean" />
<property name="marco" column="marco" type="boolean" />
<property name="abril" column="abril" type="boolean" />
<property name="maio" column="maio" type="boolean" />
<property name="junho" column="junho" type="boolean" />
<property name="julho" column="julho" type="boolean" />
<property name="agosto" column="agosto" type="boolean" />
<property name="setembro" column="setembro" type="boolean" />
<property name="outubro" column="outubro" type="boolean" />
<property name="novembro" column="novembro" type="boolean" />
<property name="dezembro" column="dezembro" type="boolean" />
<set name="dizimista" inverse="true">
<key column="cod" foreign-key="fk_estrangeira"/>
<many-to-one class="modelo.Dizimista"/>
</set>
</class>
</hibernate-mapping>[/code]
E meu hibernate.cfg.xml, sei que está faltando configurar o Contribuicao.hbm
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<session-factory>
<property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property>
<property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
<property name="hibernate.connection.url">jdbc:mysql://localhost:3306/paroquia</property>
<property name="hibernate.connection.username">root</property>
<property name="hibernate.connection.password">1234</property>
<mapping class="modelo.Dizimista" package="Dizimista.hbm.xml" resource="Dizimista.hbm.xml"/>
</session-factory>
</hibernate-configuration>
Minha database:
CREATE DATABASE paroquia;
USE paroquia;
CREATE TABLE dizimista (
cod int(11) NOT NULL auto_increment,
nome varchar(50) NOT NULL,
ende varchar(100) NOT NULL,
datan varchar(8) default NULL,
CONSTRAINT fk_chave PRIMARY KEY (`cod`)
) ;
CREATE TABLE contribuicao(
codcont int not null auto_increment,
coddiz int not null,
datacont varchar(8) not null,
janeiro boolean,
fevereiro boolean,
marco boolean,
abril boolean,
maio boolean,
junho boolean,
julho boolean,
agosto boolean,
setembro boolean,
outubro boolean,
novembro boolean,
dezembro boolean,
CONSTRAINT fk_chave1 PRIMARY KEY(codcont),
CONSTRAINT fk_estrangeira FOREIGN KEY (coddiz) REFERENCES dizimista(cod)
ON UPDATE CASCADE
ON DELETE CASCADE
);