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?
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:
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.
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.
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
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!!!
Yo soy yo :) JC Mouse, Soy orgullosamente boliviano soy fundador y CEO de la web jc-Mouse.net uno de las pocas web en emprendimiento y tecnología en Bolivia.
Toda la información que encuentres en este sitio es y sera completamente gratis siempre, puedes copiar, descargar y re-publicar si así lo deseas en otros blogs o sitios web, solo te pido a cambio que dejes una referencia a esta web. Esto nos ayuda a crecer y seguir aportando. Bye
Enjoy! :)
En este post crearemos un componente gráfico para java que nos permitirá seleccionar la hora del día de una manera senci...
CSS Flexible Box Layout, comúnmente conocido como Flexbox, es un modelo de diseño web CSS que permite que los elementos...
Continuación del tutorial «Google Circles en java» o.O 🙂 La Interfaz El proyecto consta de una sola interfaz la cual es...
🙂 Una de las preguntas más buscadas por programadores java es la de crear componentes swing en tiempo de ejecución, eso...
Muchas veces necesitamos de fotos para adornar nuestros perfiles en RRSS pero no queremos subir nuestras propias fotos p...
Para conectar Visual Basic .NET con una base de datos de MS Access se utiliza la libreria «System.Data.OleDb» en el sigu...
El gigante tecnologico Google a puesto un bonito Doodle en su buscador que esta fascinando a sus millones de usuarios qu...
WhatsApp anuncio a través de su blog que ya se encuentra disponible la función de envío de fotos y videos TEMPORALES, es...
Muchas de las innovaciones computacionales de la NASA se desarrollaron para ayudar a explorar el espacio, pero ahora la...
TikTok es una plataforma de microvideos muy popular entre los jóvenes el cual cuenta ya con millones de videos cortps de...