Introduction à Mybatis:
MyBatis est un excellent cadre de couche de persistance qui prend en charge les requêtes SQL simples, les procédures stockées et la cartographie avancée. MyBatis élimine les paramètres manuels de presque tous les code et paramètres JDBC et l'encapsulation de recherche de l'ensemble de résultats. MyBatis peut utiliser du XML ou des annotations simples pour la configuration et la cartographie originale, les interfaces de cartographie et les Pojos de Java (Old Java objets) en enregistrements dans la base de données.
Lire connexe: Tutoriel d'apprentissage de l'introduction MyBatis (i) - Mybatis Quick Start
Les étudiants qui ont utilisé MyBatis savent que pour chaque projet, ils doivent établir les tables de base de données correspondantes utilisées dans la base de données, ajouter, supprimer, modifier et vérifier le fichier xxxmapper.xml, le fichier d'entité xxx.java et d'autres classes utilisées pour appeler le fichier xxxmapper.java pour les opérations de la base de données. Quand j'ai commencé à apprendre Mybatis, je crois que beaucoup de gens ont construit ces fichiers manuellement. Il ne fait aucun doute que si le projet est plus grand, il est très inefficace de créer manuellement ces fichiers. Pour le moment, nous pouvons générer automatiquement ces fichiers via MyBatis-Generator. Cependant, cet outil génère des fichiers connexes sous la forme d'une ligne de commande par défaut, afin que nous puissions écrire un script ANT. Chaque fois que nous devons créer ces fichiers, nous pouvons générer automatiquement le script Ant dans Eclipse. Les étapes complètes sont les suivantes:
Importer des forfaits de pot liés
Pour utiliser "MyBatis-Generator", vous devez importer le fichier MyBatis-Generator-1.3.x.jar correspondant dans la lib du projet Web. L'adresse de téléchargement sur github: téléchargement du package de pot-générateur mybatis
Deuxièmement, configurez le fichier de configuration de MyBatis-Generator
(1) Tout d'abord, créez plusieurs nouveaux packages dans le projet pour stocker les fichiers correspondants:
Comme le montre la figure ci-dessus, SRC / Main / Java est utilisé pour stocker le code source Java; SRC / Main / Env / Dev est utilisé pour stocker des fichiers de configuration dans l'environnement de développement (tels que: JDBC, Cache, Log, etc.); SRC / Main / Resources est utilisé pour stocker certains fichiers de configuration courants, où le fichier MAPPER.xml que nous générons automatiquement est stocké dans ce chemin; SRC / Test / Java représente le code de test, et cela n'a pas d'importance ici.
Remarque: Comment ajouter ces dossiers source dans Eclipse?
(2) Créer un générateurconfig.xml et build_mybatis.xml dans le répertoire racine du projet:
Ces deux fichiers sont le fichier de configuration de "MyBatis-Generator" et le script ANT automatisé. Les chemins du projet sont les suivants:
i) GeneratorConfig.xml:
<? xml version = "1.0" Encoding = "utf-8"?> <! doctype générateur ConfigurationPublic "- // Mybatis.org//dtd MyBatis Generator Configuration 1.0 // en "" http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd "> <générateurconfiguration> <! - Database Driver -> <classpathentryLocation =" webContent / web-inf / lib / mysql-connector-java-5.1.1.26bin.jar " id = "db2tables" targetRuntime = "mybatis3"> <commentgenerator> <propriété name = "suppressallcomments" value = "true" /> <! - Que ce soit pour générer des informations de génération de commentaires -> </ commentgenerator> <! - DriverClass = "com.mysql.jdbc.Driver" ConnectionUrl = "JDBC: mysql: //127.0.0.1: 3306 / ehcache_db" userrid = "root" password = "root"> </ jdbccconnection> <!! Si le champ est précis que 0, générez BigDecimal si le champ est exact, la longueur totale est de 10-18, générez des longs; Si le champ est précis, la longueur totale est de 5-9 générer entier; Si le champ est précis, la longueur totale est inférieure à 5 génère courte; Si ForceBigDecimals est vrai, générez BigDecimal uniformément -> <Javatyperesolver> <! - Que ce soit pour utiliser BigDecimal, False peut convertir automatiquement les types suivants (Long, Integer, Short, etc.) Fichier -> <javamodelGenerator TargetPackage = "cn.zifangsky.model" cibleProject = "src / main / java"> <! - Value = "true" /> </ javamodelgenerator> <! - Générer le fichier mappeur.xml -> <SqlMapGenerator TargetPackage = "SQLMAPS" TargetProject = "Src / Main / Resources"> <! - LEABLESUBPACKAGES: IF UTILISER SCHEMA COMME LA SUPÉRIEUR DE LA Pack /> </ sqlmapGenerator> <! - Générer un fichier mappeur.java, c'est-à-dire dao couche -> <javaclientGenerator type = "xmlmapper" targetpackage = "cn.zifangsky.mapper" targetproject = "src / main / java"> <propriété name = "eableSubpackages" /> </ javaclientGenerator> <! - Pour générer le nom de la table dans la base de données à générer, pour générer un fichier java et xml correspondant à une table, vous devez configurer une section -> <table tableName = "user" domainObjectName = "user" perteCountByExample = "false" perteupDateExample = "false" activedElectByExample = "false" selectByExampleQueryId = "false"> </ Table> </ Context> </ GeneratorConfiguration>
Remarque: certains endroits qui doivent être modifiés peuvent être modifiés en fonction de mes commentaires ci-dessus. N'oubliez pas le package de pot basé sur les données
ii) build_mybatis.xml:
<project default = "GenFiles"-Basedir = "."> <propriété name = "généré.source.dir" value = "$ {basasedir}" /> <path id = "ant.run.lib.path"> <Pathétique Location = "$ {basasedir} /webcontent/web-inf/lib/mybatis-tenerator-core-1.3.2.jar" / </ path name = "genfiles" description = "générer les fichiers"> <taskdef name = "MBGenerator" classname = "org.mybatis.generator.ant.generatorantTask" classpathref = "ant.run.lib.path" /> <mbGenerator overwrite = "true" configFile = "GeneratorConfig.xml" Verbose = "false"> <wawetwetSet> <propriétéRef name = "généré.source.dir" /> </promidestset> </mbgenerator> </ cible> </ project>Il y a deux choses à noter dans le code ci-dessus: l'une est le package JAR de "Mybatis-Generator", et l'autre est le fichier "GeneratorConfig.xml" correspondant
Remarque: Si vous n'êtes pas familier avec les scripts ANT, vous pouvez vous référer à l'article que j'ai écrit: //www.vevb.com/article/87674.htm
Trois tests
Lorsque vous effectuez le test d'effet, il vous suffit de faire glisser le fichier "build_mybatis.xml" dans la vue Ant, puis cliquez pour exécuter ce script pour générer automatiquement le fichier dont nous avons besoin. Enfin, actualisez la structure du projet et vous pouvez voir le fichier. L'effet est le suivant:
Remarque: les données de base de données que j'ai utilisées dans les tests:
SET FORTER_KEY_CHECKS = 0; - ------------------------------ STRUCTURE DE TABLE pour l'utilisateur-- ---------------------------- Déposer la table si existe `User`; Créer la table` User` (`id` int (11) pas null auto_increment,` name` NULL, clé primaire (`id`)) moteur = innodb auto_increment = 4 Charset par défaut = UTF8; - ------------------------------- Records of User-- ----------------------------, 'insert dans` `User' les valeurs ('1', 'Admin', '123456' ',` `Administra` `Valeurs' ',' 2000-01-02"); insert dans "Value (" 2 ', 2000-01-02 "); insert dans" Value ("2', '2000-01-02"); insertion dans "Value (" 2', "2000-01-02"); insert dans "Value (" 2 "," 2000-01-02 "); insertion dans" Value "," 2000-01-02 "); insert dans" Value ("2" " '1234', '[email protected]', '1990-12-12'); insérer dans `` User` Values ('3', 'xxxx', 'xx', '[email protected]', '1723-06-21');Ce qui précède est la méthode d'utilisation du générateur MyBatis pour générer rapidement et automatiquement le modèle, mappeur et autres fichiers que l'éditeur vous présente. 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!