Aprende Java Aprende Php Aprende C++ Aprende HTML 5 Aprende JavaScript Aprende JSON Aprende MySQL Aprende SQLServer Aprende Visual Basic 6 Aprende PostgreSQL Aprende SQLite Aprende Redis Aprende Kotlin Aprende XML Aprende Linux VSC Aprende Wordpress Aprende Laravel Aprende VueJS Aprende JQuery Aprende Bootstrap Aprende Netbeans Aprende Android
Sigueme en Facebook Sigueme en Twitter Sigueme en Instagram Sigueme en Youtube Sigueme en TikTok Sigueme en Whatsapp
Home / Java / Ejemplo de uso del Generador de Código de MyBatis

Ejemplo de uso del Generador de Código de MyBatis

Por jc mouse lunes, septiembre 16, 2019

MyBatis es un framework de persistencia Java que se encarga de mapear sentencias SQL y procedimientos almacenados a partir de ficheros XML o anotaciones.  Una de las herramientas con las que cuenta MyBatis, es «MyBatis Generator» el cual es un generador de código, para todas sus versiones, que nos permite ahorrar tiempo en la escritura de código y configuración de archivos para la interacción del framework  con las tablas de la base de datos. Actualmente se encuentra en la versión 1.3.7 y esta bajo la licencia Apache Version 2.0

El generador de código se puede utilizar desde java, con maven, se dispone ademas de un plugin para Eclipse y también funciona desde linea de comandos. Sera esta ultima opción la que utilizaremos en el ejemplo de este post.

¿Que necesitamos?

  • Conector JDBC MariaDB mariadb-java-client-x.x.x.jar
  • Generador de Código MyBatis mybatis-generator-core-1.3.7.jar
  • Un sistema de gestión de base de datos (con XAMPP basta y sobra)

Paso 1. La base de datos

Utilizando su Gestor de base de datos favorito, cree una nueva base de datos y agregue las siguientes tablas:

database example

Paso 2.  Archivos jar

Descargue el Generador de Código MyBatis y el conector de base de datos MariaDB, coloque ambos en una misma carpeta en su pc.

librería para generar código java y xml para framework

Paso 3. Archivo de configuración XML

Con un editor de texto crea un archivo XML en la misma carpeta donde están el generador de código y la librería JDBC, llama a este nuevo archivo como «generatorConfig.xml» y pega el siguiente código:

 1 <?xml version="1.0" encoding="UTF-8"?>
 2 <!DOCTYPE generatorConfiguration PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN"
 3      "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd">
 4 <generatorConfiguration>
 5    <!-- Ubicación del conector JDBC -->
 6    <classPathEntry location="mariadb-java-client-2.4.1.jar" />
 7    <!-- MyBatis versión 3 -->
 8    <context id="DB2Tables" targetRuntime="MyBatis3">
 9       <!-- Datos de conexión -->
10       <jdbcConnection driverClass="org.mariadb.jdbc.Driver" 
11           connectionURL="jdbc:mariadb://localhost:3306/TU_BASE_DE_DATOS" 
12           userId="root" 
13           password="" />
14       <javaModelGenerator targetPackage="org.example.model" targetProject="src">
15          <property name="enableSubPackages" value="true" />
16          <property name="trimStrings" value="true" />
17       </javaModelGenerator>
18       <sqlMapGenerator targetPackage="org.example.data" targetProject="src">
19          <property name="enableSubPackages" value="true" />
20       </sqlMapGenerator>
21       <javaClientGenerator type="XMLMAPPER" targetPackage="org.example.data" targetProject="src">
22          <property name="enableSubPackages" value="true" />
23       </javaClientGenerator>
24       <!-- Todas las tablas de nuestra base de datos  -->
25       <table tableName="%">
26          <property name="useActualColumnNames" value="true" />
27       </table>
28    </context>
29 </generatorConfiguration>

donde:

6) Se indica la ubicación y nombre del conector JDBC

8) El código generado sera compatible para MyBatis 3

10-13) Se indican los parámetros de conexión a a base de datos, driver, URL de conexión, puerto, base de datos, usuario y password.

14) Se indica el paquete con el que se generara el modelo, para este ejemplo «org.example.model»

18) Generador de mapas SQL, archivos XML con formato compatible con MyBatis

21) El generador de cliente Java crea interfaces y clases Java que permiten un uso sencillo del modelo Java generado y los archivos de mapa XML.

25) Finalmente indicamos las tablas de las cuales deseamos generar código, para este ejemplo son todas las de la base de datos objetivo.

Podemos observar en nuestro código XML una propiedad targetProject=»src», esta indica la carpeta destino donde se genera el código,  crea una nueva carpeta «src» en nuestra carpeta de trabajo.

Claro esta, este archivo se puede personalizar al gusto de las necesidades del programador, para más referencias visitar  GeneratorXML Configuration File Reference.

Paso 4. Generando el código

Abre una nuevo Símbolo del Sistema y ubícate en la carpeta de trabajo.

consola de comandos windows 8 y 10 para programación java

Escribe y ejecuta:

java -jar mybatis-generator-core-1.3.7.jar -configfile generatorConfig.xml -overwrite

Los archivos generados están ahora en la carpeta SRC

codigo java y xml generador con la herramienta mybatis generator

Si bien el código generado no es perfecto, ya que deberemos modificarlo según nuestras necesidades, esta herramienta nos ahorra un gran tiempo de programación al automatizar la generación de código repetido.

enjoy!!!

Tags

Artículos similares

Envía tu nombre a Marte en la Mars 2020 Rover

La misión espacial de la NASA, el Mars  2020 Rover Mission esta proyectada para lanzarse en julio de 2020 y su llegada s[...]

Conexión a base de datos Access con C#

En este post veremos como conectarnos a una base de datos Access con C# En un nuevo proyecto en consola con Visual Studi[...]

AutoDraw: App Inteligente de Google para adivinar lo que estas dibujando

Google acaba de lanzar AutoDraw, una aplicación que usa la Inteligencia Artificial para adivinar lo que intentas dibujar[...]

Visualiza JSON de forma gráfica y rápida en VSC

JSON Crack es un plugin para Visual Studio Code que permite analizar, validar y depurar archivos JSON de manera rápida y[...]

Impresión de reportes con JasperReport + YAPA

En un post anterior [Guardar reporte PDF directamente con Jasperreports] vimos una manera de imprimir reportes directame[...]

Mapas HTML5 – Elementos del canvas- Parte 4

Continuando con nuestro tutorial de «Mapas interactivos con HTML5» , esta es la sección que corresponde a los elementos[...]