1. Créez un projet Web avec Maven
Afin de terminer l'intégration de Spring 4.x et Mybatis3.x en douceur, examinez d'abord la création d'un projet Web dans l'environnement Maven et utilisez Mybatis3.x. Le premier et le deuxième contenu consiste principalement à examiner le contenu passé.
1.2. Cliquez sur "Fichier" -> "Nouveau" -> "Autre" -> Entrez "Maven" et créez un nouveau "Maven Project", comme indiqué dans la figure ci-dessous:
1.2. Veuillez vérifier "Créer un projet simple" pour créer un projet simple sans utiliser de modèles. Vous pouvez également utiliser le modèle et sélectionner WebApp, mais vous ne devez pas le vérifier ici. Comme indiqué dans la figure ci-dessous:
1.3. Remplissez le nom du package et le nom du projet et sélectionnez le type d'emballage comme: guerre, comme indiqué dans la figure ci-dessous:
1.4. Une fois le projet créé, vous pouvez trouver une erreur. Sélectionnez le projet, cliquez avec le bouton droit sur "Propriétés" -> "Facteurs du projet de couche" -> "Java" et modifiez le numéro de version à 1.7, et la valeur par défaut est 1,5; Cliquez sur "OK" pour l'enregistrer et le fermer. Comme indiqué dans la figure ci-dessous:
1.5. Répétez l'étape précédente, rétrécissez le module Web dynamique et transformez temporairement le projet en projet non Web. Cliquez sur "OK" pour l'enregistrer et le fermer.
1.6. Répétez l'étape précédente, puis accédez aux attributs de niveau, vérifiez le "module Web dynamique" et sélectionnez la version pour 3.0. Cliquez sur l'hyperlien "Configuration supplémentaire disponible ..." dans le coin inférieur gauche.
1.7. Cochez "Générer le descripteur de déploiement Web.xml" pour générer le fichier de description de déploiement web.xml. Cliquez sur "OK" pour l'enregistrer et le fermer.
1.8. Copiez les deux dossiers "Meta-Inf" et "Web-Inf" dans le répertoire WebContent généré dans le répertoire SRC / Main / WebApp.
1.9. Supprimez le répertoire WebContent.
1.10. Après la suppression, vous constaterez que les erreurs de fichier POM.xml du projet sont signalées car le fichier web.xml à l'emplacement spécifié ne peut être trouvé. Entrez les propriétés du projet, sélectionnez l'élément de déploiement du projet "Deployment Assembly" et supprimez les répertoires "src / test / java", "src / test / ressources" et "webContent", car ces trois éléments n'ont pas besoin d'être déployés.
1.11. Cliquez sur "Ajouter" et sélectionnez "Folder Dossier" pour spécifier le dossier racine du contenu Web pour le résultat de déploiement final du projet.
1.12. Sélectionnez le répertoire SRC / Main / WebApp comme répertoire cible, cliquez sur "Terminer" pour enregistrer et fermer.
1.13. Si le projet signale toujours une erreur pour le moment, l'erreur disparaîtra après avoir modifié le fichier pom.xml et l'enregistrer.
1.14. Créez un nouveau fichier index.jsp dans le répertoire SRC / Main / WebApp pour les tests.
1.15. Une fois la nouvelle création terminée, une erreur est trouvée car il n'y a pas d'exécution du serveur Javaee. Cliquez avec le bouton droit sur la propriété sur le projet et sélectionnez l'élément "Java Build Path", et cliquez sur "Ajouter la bibliothèque ..." pour ajouter une référence.
1.16. Sélectionnez l'élément d'exécution du serveur, cliquez sur "Suivant", puis sélectionnez "Apache Tomcat V7.0". Vous devrez peut-être choisir en fonction de votre propre environnement d'exploitation. Si vous n'avez pas de serveur, vous devez d'abord intégrer Tomcat.
1.17. Écrivez le contenu de test dans le fichier index.jsp.
<% @ Page Language = "Java" ContentType = "Text / Html; charSet = UTF-8" Pageencoding = "UTF-8"%> <! Doctype HTML Public "- // W3C // DTD HTML 4.01 Transitional // en" "http://www.w3.org/tr/html4/loose.dtd"><html><head><meta http-equiv =" contenu-type "contenu =" text / html; charset = utf-8 "> <% = world! </ title> </-head> <pody> Bonjour mon monde! <p> java.util.date (). tolocalestring ()%> </p> </body> </html>
1.18. Cliquez avec le bouton droit sur le projet pour exécuter le projet et sélectionnez "Exécuter" -> "Exécutez sur le serveur" et exécutez le projet. Les résultats en cours d'exécution sont les suivants.
2. Utilisez MyBatis pour terminer l'accès à la base de données MySQL
2.1. Ajouter des dépendances
Pour terminer à l'aide de MyBatis pour accéder à la base de données MySQL, vous devez ajouter des packages de dépendance, y compris MyBatis3, Connection Driver, JUnit, Log4J2, etc. Vous pouvez rechercher dans la bibliothèque de ressources partagées. La première adresse de site Web est: http://mvnrepository.com/. Ici, la recherche de pilotes de connexion est un exemple. Les résultats après la recherche sont de nombreuses versions de 5.xx et 6.xx, mais il n'est pas recommandé d'utiliser la version 6.xx car MyBatis3 ne le prend pas en charge.
Nous sélectionnons 5.1.38 dans la version 5.0 et copierons les dépendances de Maven au nœud de dépendances de pom.xml dans le projet
Bien sûr, vous pouvez également aller sur un autre site Web: http://search.maven.org/. Ici, vous pouvez rechercher Log4j comme exemple comme suit:
Si vous avez des dépendances, vous pouvez également vous rendre directement sur le site officiel pour rechercher, comme MyBatis3:
Le fichier pom.xml du projet est le suivant:
<project xmlns = "http://maven.apache.org/pom/4.0.0" xmlns: xsi = "http://www.w3.org/2001/xmlschema-instance" xsi: schemalation = "http://maven.apache.org/pom/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd "> <ModelVersion> 4.0.0 </ ModelVersion> <proupId> com.zhangguo </prôdId> <ArtifActid> printemps061 </ artifactid> <Desencty> 0.0.1 </package> <package> war </packaging> <Desencesc <GroupId> MySQL </rom grouped> <ArtifActid> MySQL-Connector-Java </ ArtifactId> <Dersion> 5.1.38 </ Version> </ Dependency> <Dedency> <ProupID> org.apache.logging.log4j </proupId> <Artifactid> Log4j-core </Artifactid> <Dudition>> 2.6.1 </nourée> </Dedency> </ptetifactid> <dependency> <proupId> org.mybatis </rompuprid> <letifactive> mybatis </ artifactid> <version> 3.4.1 </ version> </ endence> <Dedency> <proupId> junit </proupId> <e Artifactid> Junit </ Artifactid> <frille> 4.10 </ version> </pedency> </dependsc
Résultats de la citation:
Si la vitesse du réseau est instable, le package de téléchargement est susceptible d'échouer. Vous pouvez essayer de forcer le projet à être redémarré; Vous pouvez utiliser l'outil de téléchargement pour copier le package JAR dans la bibliothèque de ressources locales après le téléchargement.
2.2. Préparer les données
Ouvrez la base de données MySQL et créez une table. Ici, nous prenons la table BookTypes à titre d'exemple.
Le script SQL est le suivant:
/ * NAVICAT MYSQL DATA TRANSFERSOURCE Server: LocalHostSource Server Version: 50536Source Hôte: LocalHost: 3306Source Database: DB2Target Server Type: MySqltarget Server Version: 50536File Encoding: 65001Date: 2016-07-04 10: 49: 56 * ------------------------------ STRUCTURE DE TABLE pour `BookTypes`-- ---------------------------- Table Drop Exists` BookTypes '; Créer une table' BookTypes '(`id` int (11) pas null Auto_increment Commentaire' 类型编号 '',` `Tyname ' Charset par défaut = UTF8; - ------------------------------ Records de BookTypes- ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- `BookTypes` Values ('6', 'Test Type'); insérer dans` `Booktypes 'Values (' 7 ',' 91 '); insérer dans` `BookTypes' Values ('8', '92'); insérer dans` `BookTypes 'des valeurs (' 9 ',' 93 '); insert dans` `BookTyes' des valeurs ('91' ',' 93 '); insert dans` `BookTyes' Values ('91', ','); insert dans` `BookTyes 'des valeurs (' 91 '', '); insert dans` `BookTyes' des valeurs ('91' ','); insert dans les valeurs de BookTyes` `` BookTypes` Values ('92', 'Industrial Design'); insérer dans les valeurs «BookTypes» («93», «Made in Ship»);2.3. Créer un haricot Java
Ajoutez le type de bookType de classe sous le package com.zhangguo.spring61.entities.
package com.zhangguo.spring61.entités; / ** * Type de livre * * / classe publique BookType {/ ** * numéro * / private int id; / ** * Nom de type * / Private String TypeName; public int getID () {return id; } public void setid (int id) {this.id = id; } public String getTyPename () {return typename; } public void SetTyPename (String TypeName) {this.typename = typEname; }2.4. Créer un fichier de mappage pour les instances et les tables
Cela se fait sous la forme d'interface + XML. L'interface d'accès aux données BookType est la suivante:
package com.zhangguo.spring61.mapping; import java.util.list; import com.zhangguo.spring61.entities.booktype; / ** * Type de livre Interface d'accès * * / interface publique bookTypedao {/ * * Obtenez tous les types de livres * / Liste publique <BookType> GetAllETYPES ();}Le fichier booktypemapper.xml est le suivant:
<? xml version = "1.0" Encoding = "UTF-8"?> <! Doctype Mappen public "- // mybatis.org//dtd mapper 3.0 // en" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"><!-- le nom de nom devrait être le nom de pack namespace = "com.zhangguo.spring61.mapping.booktypedao"> <! - ID devrait être une méthode dans l'interface. S'il n'y a pas d'alias, le nom complet doit être utilisé -> <select id = "getAllBookTypes" resultType = "bookType"> SELECT ID, typename from bookTypes </lect> </caper>
2.5. Créer un fichier mybatiscfg.xml
Le fichier mybatisfg.xml est utilisé pour configurer l'environnement en cours d'exécution de MyBatis, et le contenu est le suivant:
<? xml version = "1.0" Encoding = "UTF-8"?> <! Doctype Configuration public "- // mybatis.org//dtd config 3.0 // en" "http://mybatis.org/dtd/mybatis-3config.dtd"> <configuration> <! ressource = "db.properties"> </ properties> <! - Type Alias, toutes les classes sous com.zhangguo.spring61.entities -> <ypealiases> <package name = "com.zhangguo.spring61.entities" /> </ typiases> <Environments default = "Develop"> <Environment ID = "Development"> <transactionNager = "jdbc"> <Environment = "Development"> <transactionmanagère = "jdbc"> <vironment ID = "Development"> <transactionNAGER = "Jdbc"> <Environment ID = "Development"> <transactionNAGER) <dataSource type = "poolled"> <propriété name = "driver" value = "$ {driver}" /> <propriété name = "url" value = "$ {url}" /> <propriété name = "username" value = "$ {username}" /> <propriété name = "mot de passe" value = "$ {mot de passe}" /> </ datasource> <! - Présentez le fichier de mappage -> <mapper ressource = "com / zhangguo / printemps61 / mapping / bookTypeMapper.xml" /> </mappers> </figuration>Étant donné que la configuration repose sur le fichier db.properties, ce fichier est utilisé pour spécifier les informations de connexion de la base de données et le contenu est le suivant:
driver = com.mysql.jdbc.driverurl = jdbc: mysql: // localhost: 3306 / db2userName = rootpassword = root
2.6. Implémentez la fonction d'accès aux données
Afin de réutiliser plus commodément MyBatis pour obtenir un accès aux données, il n'est pas nécessaire de créer fréquemment des objets SQLSessionFactory et SQLSession, encapsuler une classe d'outils MyBatisutil comme suit:
package com.zhangguo.spring61.dao; import java.io.inputstream; import org.apache.ibatis.session.sqlsession; import org.apache.ibatis.session.sqlsessionfactory; import org.apache.ibatis.session.sqlSessionFactoryBuilder; classe abstraite publique MyBatisUtil {// gc ignore une usine statique statique statique SQLSessionFactory = null; public static sqlSessionFactory getSQLSessionFactory () {if (factory == null) {// Obtenez le flux de file de configuration de l'environnement InputStream Config = MyBatisUtil.class.getClassLoader (). GetResourCeaSstream ("Mybatiscfg.xml"); // Créer une SQL Session Factory Factory = new SQLSessionFactoryBuilder (). Build (config); } return usine; } // Obtenez la session publique statique SqlSession getSession () {return getSQLSessionFactory (). OpenSession (true); } / ** * Obtenez la session SQL * @param isautoCommit s'il faut soumettre automatiquement, si false, sqlSession.Commit (); rollback (); * @return SQL Session * / public static sqlSession getSession (boolean isautoCommit) {return getSQLSessionFactory (). OpenSession (IsautoCommit); }}Créez une classe BookTypedao de classe pour implémenter l'interface booktypedao. Ici, nous devons implémenter la fonction d'accès aux données via MyBatis, et le contenu est le suivant:
Package com.zhangguo.spring61.dao; import java.util.list; import org.apache.ibatis.ession.sqlsession; import com.zhangguo.spring61.mapping.bookTypedao; implémente bookTypedao {@Override public list <fookType> getAllBookTypes () {// get session object sqlSession session = mybatisUtil.getSession (); essayez {// implémenter l'interface booktypedao via mybatis, renvoyez l'instance booktypedao booktypedao = session.getmapper (booktypedao.class); return bookTypeda.getallBookTypes (); } enfin {session.close (); }}}3. Utilisez le printemps 4.x pour intégrer mybatis3.x
Ce qui précède est une explication détaillée du tutoriel graphique MyBatis (Maven + MySQL) de Spring Integration (Maven + MySQL) par l'éditeur. J'espère que cela vous sera utile. Si vous avez des questions, veuillez me laisser un message et l'éditeur vous répondra à temps. Merci beaucoup pour votre soutien au site Web Wulin.com!