ciao!
sono alle prese con lo studio di hibernate.
in un progetto di prova, mi sono creato i file con l'aiuto di netbeans (so che non si dovrebbe fare, ma almeno sto capendo tutto il processo).
vi chiedo consiglio sulla struttura delle classi che ho fatto.
prima c'è la classe creata dalla procedura automatica:
che rispecchia la tabella del db (ho anche il file LavoriSezioni.hbm.xml ovviamente).codice:public class LavoriSezioni implements java.io.Serializable { private Integer lsId; private String lsNome; private Short lsOrdine; private Set lavoris = new HashSet(0); public LavoriSezioni() { } public LavoriSezioni(String lsNome, Short lsOrdine, Set lavoris) { this.lsNome = lsNome; this.lsOrdine = lsOrdine; this.lavoris = lavoris; } public Integer getLsId() { return this.lsId; } public void setLsId(Integer lsId) { this.lsId = lsId; } public String getLsNome() { return this.lsNome; } public void setLsNome(String lsNome) { this.lsNome = lsNome; } public Short getLsOrdine() { return this.lsOrdine; } public void setLsOrdine(Short lsOrdine) { this.lsOrdine = lsOrdine; } public Set getLavoris() { return this.lavoris; } public void setLavoris(Set lavoris) { this.lavoris = lavoris; } @Override public String toString() { return lsNome; } }
poi ho creato una classe helper per eseguire le query, e dove istanzio la sessione hibernate:
infine il bean che richiamo nelle pagina:codice:public class LavoriSezioniHelper { Session session = null; public LavoriSezioniHelper() { this.session = HibernateUtil.getSessionFactory().getCurrentSession(); } public List<LavoriSezioni> getLavoriSezioni() { Transaction tx = session.beginTransaction(); Query q = session.createQuery("from LavoriSezioni"); List<LavoriSezioni> list = (List<LavoriSezioni>) q.list(); return list; } }
funziona tutto, ma mi chiedevo se come struttura possa andare oppure ho scritto un pò di scemenze di troppo!!codice:@ManagedBean(name = "lsb") @SessionScoped public class LavoriSezioniBean { private DataModel sezioni; private LavoriSezioniHelper helper; public LavoriSezioniBean() { helper = new LavoriSezioniHelper(); } public DataModel getSezioni() { if (sezioni == null) { sezioni = new ListDataModel(helper.getLavoriSezioni()); } return sezioni; } public void recreateModel() { sezioni = null; } }

Rispondi quotando
