|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Nouveau Membre du Club
![]() Étudiant Inscription : mai 2009 Messages : 102 ![]() |
Bonjour à tous,
Je suis en train de me renseigner pour mettre en place le framework Spring.Net /NHibernate pour une application qui servira à gérer une base de donnée MySQL via une interface graphique. J'ai déjà jeté un oeil aux exemples venant avec l'installation de Spring.Net et particulierement le Spring.Data.NHibernate.Northwind Il est difficile de trouver un exemple très basique tournant sur une table pour tester le bon fonctionnement de sa config du framework spring et l'acces aux données via NHibernate ainsi que la bonne structure de son application. Au final il s'agit de faire une application 3 couches (DAO, Metier, UI) très simple qui permet de faire des opérations sur une table d'une base de données. Quelqu'un aurait une base assez simple ou un tuto pour mettre en place cette architecture très basique ? Ou des conseils pour attaquer une premiere application sous Spring.net / NHibernate ? Mon application ne sera pas orientée web contrairement à l'exemple Northwind. Merci d'avance |
|
|
00
|
|
|
#2 |
|
Membre Expert
![]() Inscription : février 2005 Messages : 1 238 ![]() |
Pour ce que tu veux faire tu n'as pas besoin d'utiliser Spring.
Tu as juste besoin de gérer une factory au niveau application et de manipuler des sessions. Spring ne t'apportera rien de plus. Les exemples donnés dans le framework Spring sont simplistes au possible, donc si ceux là te sont inabordables, c'est que ce n'est pas ce que tu recherches et ce qu'il te faut (sans méchanceté aucune) Spring était utile en 1.2 pour les transactions (entre autres) et pour les architectures multi-tiers pour injecter le contexte nhibernate ("presqu'EJB"). Aujourd'hui et à plus forte raison dans une application client serveur, tu ne ferais qu'ajouter une couche pas très pratique; déjà qu'un ORM en client serveur n'est pas souvent une bonne idée (perfs). Donc si tu veux faire une bonne application basée sur des données, il faut aussi éviter de la construire sur des technologies sur lesquels tu auras une grosse courbe d'apprentissage (spring et nhibernate sont complexes) et peu de certitudes. Je vais jeter un pavé dans la mare et m'attirer les foudres de plein de gens, mais pour faire select, insert et update dans une table avec des écrans, être en "couches" on s'en fout, et encore plus si c'est du client serveur. Dans ce cas l'architecture en couche, c'est juste un perf killer.
|
|
|
00
|
|
|
#3 | ||||
|
Nouveau Membre du Club
![]() Étudiant Inscription : mai 2009 Messages : 102 ![]() |
Hmm ton point de vue se defend. Ce qui m'interessait dans le fait d'utiliser un framework, c'était de mettre en place une architecture logicielle qui une fois configurée pourrait servir de base pour n'importe quelle application future (du moins pour les principales fonctionnalités).
De plus c'est plutot NHibernate qui m'interesse pour faire une application CRUD de gestion de base de données. En effet le fait de laisser NHibernete gerer les transactions, sessions et de pouvoir recupérer les données dans un objet contenant une row de data me plait bcp. Actuellement j'ai mis en place un projet utilisant NHibernate. J'ai un deuxieme projet de test (NUnit) qui me permet de tester mes methodes. Actuellement j'arrive à compiler est à exporter un schema sous MySQL. Le problème que j'obtiens actuellement et lors de la création d'une session factory j'ai un message me demandant de configurer une factory session Pour la creation de l'objet configuration pas de problème par contre. Code :
Code :
Config : NHibernate 3.0 .Net 2.0 MySql.Data 6.2.4.0 Server MySQL 5.5 |
||||
|
|
00
|
|
|
#4 |
|
Membre Expert
![]() Inscription : février 2005 Messages : 1 238 ![]() |
Pourquoi utiliser Spring en particulier ?
Tu as bien référencé la DLL pour le proxy spring ? Essayes avec le paramétrage castle qui est la factory par défaut. |
|
|
00
|
|
|
#5 |
|
Nouveau Membre du Club
![]() Étudiant Inscription : mai 2009 Messages : 102 ![]() |
En fait j'ai essayé avec les générateurs de proxy LinFu et Spring mais pas avec Castle. Je peux essayer en effet avec celui là.
J'ai referencé les dll suivantes : Spring.Aop Spring.Core NHibernate.ByteCode.Spring comme vu dans des tutos. J'ai choisi Spring dans l'hypothese d'utiliser Spring.net une fois la configuration et la prise en main de NHibernate réussie... MAJ (Essais avec Castle) : idem même probleme des que je veux utiliser session factory... dès que je fais un buildSessionFactory() ça sort en erreur sur le même message que celui cité dans le premier post ... |
|
|
00
|
|
|
#6 |
|
Membre Expert
![]() Inscription : février 2005 Messages : 1 238 ![]() |
Ca vient d'ailleurs alors...Je vais essayer, si ça fonctionne je te donne le bout de code.
|
|
|
00
|
|
|
#7 |
|
Nouveau Membre du Club
![]() Étudiant Inscription : mai 2009 Messages : 102 ![]() |
Je peux filer le code de mon projet si jamais ça peut aider... Y a pas de souci
Ce qui est étonnant c'est que tout semble marcher jusqu'à ce que je demande à faire une sessionFactory = configuration.BuildSessionFactory(). Il arrive par exemple à me créer la table sur le serveur MySQL. |
|
|
00
|
|
|
#8 |
|
Nouveau Membre du Club
![]() Étudiant Inscription : mai 2009 Messages : 102 ![]() |
Toujours au même point.
Je ne sais plus trop par quel bout attaquer le problème à présent. Y a pas des avis éclairés ? Merci d'avance. PS : je suis parti du tuto http://nhibernate.hibernatingrhinos....ed-application |
|
|
00
|
|
|
#9 |
|
Nouveau Membre du Club
![]() Étudiant Inscription : mai 2009 Messages : 102 ![]() |
J'ajoute une reflexion à ce sujet.
En effet, serait-il possible que la version du connecteur mysql que j'utilise n'est pas gérée correctement par le NHibernate.Driver.MySqlDataDriver ? J'ai entraperçu sur des fora que les versions de connecteurs pouvaient entrainer des problèmes... J'espère qu'une âme charitable aura une petite idée pour m'aider. Sachant que je peux fournir mon code de test sans problème. |
|
|
00
|
|
|
#10 |
|
Nouveau Membre du Club
![]() Étudiant Inscription : mai 2009 Messages : 102 ![]() |
[MAJ] j'ai mis à jour certaines dll et passé au Proxy LinFu ce qui a reglé mon pb.
Merci pour votre aide Salut à tou(te)s encore une fois. Je poste les infos précises concernant ma configuration dans le cas où quelqu'un aurait une configuration similaire et chez qui NHibernate fonctionnerait. Impossible de faire marcher quoi que ce soit pour le moment alors qu'il y a une semaine j'avais une erreur sql qui s'affichait donc NHibernate semblait marcher. MySql server : 5.5.13 MySql connector : 6.2.4.0 Framework .Net 2.0 Win Xp Pro sp3 Serait-il possible que la version du connecteur que j'utilise pose des problèmes avec NHibernate ? Cordialement |
|
|
00
|
Copyright © 2000-2013 - www.developpez.com