Piste : • creation-application
Différences ¶
Ci-dessous, les différences entre deux révisions de la page.
Prochaine révision | Révision précédente | ||
fr:tutoriels:jelixnews-1.3:utiliser-dao [2011/05/24 12:24] – créée mindiell | fr:tutoriels:jelixnews-1.3:utiliser-dao [2020/08/03 15:10] (Version actuelle) – modification externe 127.0.0.1 | ||
---|---|---|---|
Ligne 2: | Ligne 2: | ||
Jelix propose un système de mapping relationnel objet, jDao, basé sur le pattern DAO. | Jelix propose un système de mapping relationnel objet, jDao, basé sur le pattern DAO. | ||
- | Le pattern DAO se base sur deux types d' | + | Le pattern DAO se base sur deux types d' |
+ | des données (représentant un enregistrement), | ||
+ | de récupérer des listes de records, ou de créer, sauver, effacer des records. | ||
- | Concrètement avec jDao, un fichier XML DAO vous permet de définir un record et une factory, qui agiront sur une ou plusieurs tables en même temps. Vous y définissez donc le mapping : quel champs de la table ira dans quelle propriété du record, ainsi que le type de donnée, les clés, sur quelles tables s' | + | Concrètement avec jDao, un fichier XML DAO vous permet de définir un record et |
+ | une factory, qui agiront sur une ou plusieurs tables en même temps. Vous y | ||
+ | définissez donc le mapping : quel champs de la table ira dans quelle propriété | ||
+ | du record, ainsi que le type de donnée, les clés, sur quelles tables s' | ||
+ | le mapping, selon quelles jointures, etc... | ||
- | À partir de ce fichier, jDao génère à la volée deux classes basées respectivement sur jDaoRecordBase et jDaoFactoryBase (qui sont stockées dans un fichier PHP dans le cache de Jelix), | + | À partir de ce fichier, jDao génère à la volée deux classes basées respectivement |
+ | sur jDaoRecordBase et jDaoFactoryBase (qui sont stockées dans un fichier PHP | ||
+ | dans le cache de Jelix), | ||
+ | requêtes SQL principales **en dur**. En effet, contrairement à d' | ||
+ | de mapping, les requêtes SQL sont donc générées une seule fois, et non pas | ||
+ | dynamiquement à chaque appel de pages. Cela permet de meilleures performances. | ||
Dans le fichier XML de DAO, vous pouvez aussi définir vos propres méthodes d' | Dans le fichier XML de DAO, vous pouvez aussi définir vos propres méthodes d' | ||
Ligne 27: | Ligne 38: | ||
Son contenu est le suivant : | Son contenu est le suivant : | ||
<code xml> | <code xml> | ||
- | <?xml version=" | + | <?xml version=" |
<dao xmlns=" | <dao xmlns=" | ||
< | < | ||
Ligne 33: | Ligne 44: | ||
</ | </ | ||
< | < | ||
- | < | + | < |
< | < | ||
< | < | ||
Ligne 109: | Ligne 120: | ||
Vous devriez voir la liste des news. | Vous devriez voir la liste des news. | ||
- | Remarque : si vous avez des problèmes d' | + | Remarque : si vous avez des problèmes d' |