konto usunięte

Temat: jsf+ hibernate- mapowanie relacyjne

public class Bid {

private Integer bidId;
private String amount;
private Item item;
public Bid() {
}

=============================================

public class Item{
private Integer itemId;
private String name;
private String descr;
private Set<Bid> bidSet;
public Item() {
}
=============================================

oczywiscie sa gety i setery,
=============================================
<hibernate-mapping>
<class name="model.Bid" table="bid">
<id column="bid_id" name="bidId" type="int"/>
<property column="amount" name="amount" not-null="true" type="string"/>
<many-to-one column="item_id" name="item" not-null="true"/>
</class>
<class name="model.Item" table="item">
<id column="item_id" name="itemId" type="int"/>
<property column="name" name="name" not-null="true" type="string"/>
<property column="descr" name="descr" not-null="true" type="string"/>
<set name="bidSet" cascade="all" inverse="true" >
<key column="item_id"/>
<one-to-many class="model.Bid"/>
</set>
</class>

</hibernate-mapping>

=============================================

@ManagedBean
@RequestScoped
public class Bean {

public Bean() {
}
public List<Bid> getBid() {
SessionFactory sf = HibernateUtil.getSessionFactory();
Session s = sf.openSession();
List<Bid> pp =(List<Bid>)s.createQuery("SELECT b FROM Bid b").list();
s.close();
return pp;
}

=============================================

<f:view>
<h:form>
<h:dataTable value="#{Bean.bid}" var="bi" border="1" >
<h:column>
<h:outputText value="#{bi.amount}"/>
</h:column>
<h:column>
<h:outputText value="#{bi.bidId}"/>
</h:column>
</h:dataTable>
</h:form>
</f:view>
=============================================

Nie wiem jak zrobić metodę w Bean żeby pobierała dane z dwóch tabel (za pomocą inner join). I jak już pobierze jak to wykorzystać i wyświetlić w jsf. Pobiera i wyświetla dane tylko z jednej tabeli.
Pozdrawiam

konto usunięte

Temat: jsf+ hibernate- mapowanie relacyjne

Potrzebne Ci coś w stylu:

<set inverse="true" name="nadrzedna">
<key>
<column name="podrzedna_id" not-null="true"/>
</key>
<one-to-many class="pakiet.i.klasa.Podrzedna"/>
</set>


Szczegóły na stronie hibernate'a. Musisz potem iterować po kolekcji Podrzedna tak, jak iterujesz po bidzie.

//edit: zawsze wstawiam <enter> po code... to tak brzydko wygląda;)Dariusz Wawer edytował(a) ten post dnia 23.02.11 o godzinie 15:57

konto usunięte

Temat: jsf+ hibernate- mapowanie relacyjne

JSF nie ma tutaj nic do rzeczy :)

A co do Hibernate'a: http://docs.jboss.org/hibernate/core/3.3/reference/en/...

Próbowałeś chociaż coś google'ować czy poszedłeś na łatwiznę i wrzuciłeś temat na GL?
Piotr T.

Piotr T. Spring/Microservices

Temat: jsf+ hibernate- mapowanie relacyjne

Marek Matuszewski:
>
oczywiscie sa gety i setery,
mały off top : do czego są ci potrzebne gettery i settery ?

konto usunięte

Temat: jsf+ hibernate- mapowanie relacyjne

Chodziło jak w tym wszystkim wyświetlić dane z dwóch tabel za pomocą JSF.

już to zrobiłem trzeba było w pliku hibernate.hbm.xml przy mapowaniu ustawić lazy="false" i pobiera obiekty item z bid.

Następna dyskusja:

Swietna Oferta!! J2EE+ (Hib...




Wyślij zaproszenie do