Estou iniciando com Hibernate e não sei fazer consulta com resultado de duas tabelas, so consigo ober o resultado de uma tabela.
Apartamento e Bloco
public class Apartamento {
private int idApartamento;
private String apartamento;
private int fkBloco;
private Bloco bloco;
public Apartamento() {
}
public int getIdApartamento() {
return idApartamento;
}
public void setIdApartamento(int idApartamento) {
this.idApartamento = idApartamento;
}
public String getApartamento() {
return apartamento;
}
public void setApartamento(String apartamento) {
this.apartamento = apartamento;
}
}
<hibernate-mapping>
<class name="condominio.entidade.unidade.Apartamento" table="sc_imovel.tb_apartamentos">
<id name="idApartamento" type="int">
<column name="pk_apartamento" />
<generator class="assigned" />
</id>
<property name="apartamento" type="java.lang.String">
<column name="fi_apartamento" />
</property>
<many-to-one name="bloco" class="condominio.entidade.unidade.Bloco" access="field" fetch="join">
<column name="fk_bloco" />
</many-to-one>
</class>
</hibernate-mapping>
public class Bloco {
private int id;
private String bloco;
public Bloco(){}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getBloco() {
return bloco;
}
public void setBloco(String bloco) {
this.bloco = bloco;
}
}
<hibernate-mapping>
<class name="condominio.entidade.unidade.Bloco" table="sc_imovel.tb_bloco">
<id name="id" type="int">
<column name="pk_bloco" />
<generator class="assigned" />
</id>
<property name="bloco" type="java.lang.String">
<column name="fi_bloco" />
</property>
</class>
</hibernate-mapping>
Consulta a qual ainda tento fazer para dar certo
SELECT
*
FROM
sc_imovel.tb_apartamentos,
sc_imovel.tb_bloco
WHERE
tb_bloco.pk_bloco = tb_apartamentos.fk_bloco;
A consulta abaixo somente com a tabela Apartamento funciona corretamento porem ainda não sei fazer a mesma quando tem associação no Hibernate
public ArrayList<Apartamento> validaReserva(){
List<Apartamento>reserva_quiosque = new ArrayList<Apartamento>();
Query q =session.createQuery("FROM Apartamento a");
Iterator r = q.list().iterator();
while (r.hasNext()){
Apartamento re =(Apartamento) r.next();
reserva_quiosque.add(re);
System.out.println(re.getApartamento());
}
return (ArrayList<Apartamento>) reserva_quiosque;
}