Intégration d'une DataSource
Bonjour a tous,
Je suis sur la conception d'un projet respectant une architecture MVC et utilisant le framework Struts.
Je travaille actuellement sur la partie métier du projet. Je souhaite donc créer une connexion vers une base de données (MySQL pour le moment). Dans un premier temps, j'utilise seulement des connexions JDBC, donc pas de ORM (ce sera dans un second temps).
J'ai donc décidé d'utiliser les DataSources pour gérer mes connexions, ce qui me permettra de posséder un pool. Mais c'est ici que mes problèmes surviennent.
Dans un premier temps, j'ai voulu utiliser les Datasources les plus connues tel que DBCP ou C3PO.
Avec C3PO, il est possible de créer un fichier qui configurera le datasource. Une mise en place très simple et qui fonctionne bien. Mais lorsqu'il y a des erreurs dans le fichier de configuration (un utilisateur avec un mauvais mot de passe, ...), la librairie ne remonte pas d'erreur. Si l'on tente d'ouvrir une connexion celle ci garde le Thread courant sans ne jamais rendre la main.
Pour DBCP, la librairie fonctionne également bien, mais je n'ai pas trouvé ou l'on peut configurer (Limite des connexion active, ...).
J'ai donc décider de pousser mes recherches, et vu qu'il était possible de paramétrer une DataSource via le serveur d'application lui meme, ou via Struts. En consultant quelques exemples, j'ai pu m'apercevoir que les requêtes vers la base de données étaient faites soit au niveau du controler (la servlet ou ActionSupport pour struts) ou pire dans la JSP. Donc il n'y a plus de respect de la norme MVC.
Faut il que je permette le transfert de la Datasource du controler a mes classes models ?
Je cherche un peu d'aide pour y voir plus claire. Peut être ai je loupé un détail important durant ma recherche ?
Je vous remercie d'avance pour l'aide que vous pourriez me fournir.