Ma propre table dans la database

cancel
Showing results for 
Search instead for 
Did you mean: 
hbf
Active Member

Ma propre table dans la database

Bonjour!

J'ai une question un peu spéciale: J'utilise Alfresco comme database d'un site web. Les pages de ce site web sont construites de beaucoup de "nodes" differents et ça prend un peu de temps. À cause de ça, je vais réaliser un "cache layer" entre le site web et Alfresco. Celui-çi garde les information d'une page et les met – ça c'est le plan – dans une table de la database d'Alfresco (ou ehcache). Si un des nodes qui a été utilisé pour la construction de la page change, la donné dans le cache est invalidée.

Pour réaliser ça, je veux créer ma propre table (MySQL table). J'imagine que je dois utiliser Hibernate pour ça. (Je veux que la table est inclue dans les transactions d'Alfresco, etc. Cela est nécessaire parce que je ne peut pas invalider certaines données dans le cache avant que la transacion d'Alfresco a fini – sinon, un visiteur va recréer la vieille version dans le cache… C'est à dire: Mon cache doit ëtre "transaction-safe".)

Ainsi: Est-ce que quelqu'un peut me donner un "tip" comment ajouter ma propre table à Alfresco?

Evidemment, je ne veux pas utiliser le "content model" d'Alfresco (performance est importante).

Merci pour tout conseil!

Gaspard

P.S. Pour clarifier: Je ne peut pas seulement utiliser ehcache, sans une table additionelle. Ehcache offre put(key, value) and get(key) mais ce dont j'ai besoin c'est:

* void put(String key, Object value, Set<String> dependencies)
   Met le value dans le cache sous le nom key et registre les dépendences dependencies.

* Object get(key)
   Retourne le value du key.

* void invalidate(dependency)
   Invalide tout les donnés dans le cache que sont registrées avec la dépendences dependency.

Alors j'ai besoin d'une table additionelle pour réaliser les dépendences.
1 Reply
pdubois
Active Member

Re: Ma propre table dans la database

Bonjour,

D’une manière générale je vous déconseille de créer une table complémentaire. Les raisons en sont :
-   l’implémentation de Alfresco repose sur un modèle très général de DB et le niveau d’interaction recommandé est l’utilisation du modèle de données de Alfresco.
-   Pour que l’opération soit cohérente par rapport à l’architeture de Alfresco, vous devez avoir une connaissance approfondie du sujet sinon vous allez au devant de nombreuses difficultés.  Si vous voulez approfondir le sujet, voyer http://wiki.alfresco.com/wiki/Alfresco_Repository_Architecture je vous recommande également « Spring par la pratique », éditions « eyrolles » chapitre 12.

Autre suggestion : utilisez la partie WCM de Alfresco. Voir : http://www.alfresco.com/products/docs/releases/2.0_preview/wcm/