Persistència
Aquests dies he après com en la eina que he creat i anomenat SocialBookmarks es genera la persistència, i el més important, com editar-la i que funcioni.
Els arxius marcats en verd són els que s’expliquen en qualsevol tutorial de hibernate que es pugui trobar a la xarxa.
En el nostre cas SocialBookmarksItem.java seria el POJO on estarien els valors que defineixen un item (un bookmark), amb els seus getters i setters.
A SocialBookmarksItem.hbm.xml s’especifica el nom de la taula a la BBDD i els camps que tindrà (hauria de seguir la lògica de SocialBookmarksItem.java).
Per acabar a hibernate.cfg.xml s’indiquen els recusos que s’han de carregar: <mapping resource=”org/sakaiproject/socialbookmarks/dao/hbm/SocialBookmarksItem.hbm.xml” /> en el nostre cas.
Ara bé, els arxius marcats en vermell no s’expliquen a cap tutorial i fan la funció següent:
spring-hibernate.xml: s’ha d’incloure el mateix que ha hibernate.cfg.xml. <mapping resource=…. />
AddItemProducer.java: aquest arxiu parla més sobre què s’ha de fer quan s’insereix un nou item (bookmark). M’ha donat problemes ja que en aquest arxiu s’utilitzen directament els noms dels atributs definits al POJO SocialBookmarksItem.java en forma d’String (p.ex. “#{itemsBean.newItem.hidden}”, on hidden és un atribut del POJO).
Dit això, em posaré mans a la feina i descriuré una mica com és que m’agradaria que quedés al final el projecte. En quant a taules, una cosa semblant a aquesta:
D’aquesta manera mitjançant el id d’usuari de sakai podrem saber quins bookmarks té guardats aquest i, a més, quants usuaris tenen guardat un mateix bookmark.

