Obtener datos de dos tablas en Hibernate.
Tengo un problema con Hibernate al querer obtener datos de dos tablas. Te explico brevemente, Primero tengo dos tablas creadas en mysql una se llama Usuario y otra llamada Web donde la relación es de muchos a muchos por lo tanto rompo la relación creando una tabla UsuWeb.
Al momento de mapear el archivo map.hbm.xml lo hago de la sig forma:
<!-- Tabla de Usuario -->
<class name="Usu" table="USU">
<id name="cveusu" column="CVEUSU" type="integer">
<generator class="increment"></generator>
</id>
<property name="usuid" type="string" />
<set name="Web" table="USUWEB" cascade="all">
<key column="CVEUSU"/>
<many-to-many class="Web" column="CVEWEB"/>
</set>
</class>
<!-- Tabla de Web -->
<class name="Web" table="WEB">
<id name="cveweb" column="CVEWEB" type="integer">
<generator class="increment"></generator>
</id>
<property name="webdes" type="string" />
<set name="Usu" table="USUWEB" cascade="all">
<key column="CVEWEB"/>
<many-to-many class="Usu" column="CVEUSU"/>
</set>
</class>
Las clases son las siguientes:
public class Usu {
private int cveusu = 0;
private String usuid = "";
private Set Gru = new HashSet();
//... GETTERS AND SETTERS
}
public class Web{
private int cveweb = 0;
private String webdes= "";
private Set Gru = new HashSet();
//... GETTERS AND SETTERS
}
Mi pregunta es: ¿Cómo le puedo hacer para obtener datos de la tabla Web mediante la tabla UsuWeb hacia la tabla usu si no tengo una variable directa a USUWEB en ninguna de las dos Tablas arriba descritas?
Al momento de mapear el archivo map.hbm.xml lo hago de la sig forma:
<!-- Tabla de Usuario -->
<class name="Usu" table="USU">
<id name="cveusu" column="CVEUSU" type="integer">
<generator class="increment"></generator>
</id>
<property name="usuid" type="string" />
<set name="Web" table="USUWEB" cascade="all">
<key column="CVEUSU"/>
<many-to-many class="Web" column="CVEWEB"/>
</set>
</class>
<!-- Tabla de Web -->
<class name="Web" table="WEB">
<id name="cveweb" column="CVEWEB" type="integer">
<generator class="increment"></generator>
</id>
<property name="webdes" type="string" />
<set name="Usu" table="USUWEB" cascade="all">
<key column="CVEWEB"/>
<many-to-many class="Usu" column="CVEUSU"/>
</set>
</class>
Las clases son las siguientes:
public class Usu {
private int cveusu = 0;
private String usuid = "";
private Set Gru = new HashSet();
//... GETTERS AND SETTERS
}
public class Web{
private int cveweb = 0;
private String webdes= "";
private Set Gru = new HashSet();
//... GETTERS AND SETTERS
}
Mi pregunta es: ¿Cómo le puedo hacer para obtener datos de la tabla Web mediante la tabla UsuWeb hacia la tabla usu si no tengo una variable directa a USUWEB en ninguna de las dos Tablas arriba descritas?
Respuesta de ramonchu
1