原文出自http://www.yihaomen/article/java/302.htm
很久以前,我写过一个 mybatis mysql 版本的java 代码生成器,可以生成相应的mapper文件, 接口文件,实体类等代码。但是那个mysql 版本的尽管替换为oracle 的jar 包之后,还是不能用。恰好现在的项目又要用到oracle 数据库,于是就看了下,修改了一个oracle 版本的提供下载
基本用户还是与mysql 版本的mybatis 生成器没多大差别,我特地为oracle 单独增加了一个配置文件,还有执行方法
配置文件:
程序代码
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE generatorConfiguration
PUBLIC "-//mybatis//DTD MyBatis Generator Configuration 1.0//EN"
"http://mybatis/dtd/mybatis-generator-config_1_0.dtd">
<generatorConfiguration>
<!-- classPathEntry:数据库的JDBC驱动的jar包地址-->
<classPathEntry location="D:\oracle\instantclient_11_2\ojdbc6.jar" />
<context id="ORACLE_TABLES" targetRuntime="MyBatis3">
<commentGenerator>
<property name="suppressAllComments" value="true" />
<property name="suppressDate" value="true" />
</commentGenerator>
<jdbcConnection driverClass="oracle.jdbc.driver.OracleDriver"
connectionURL="jdbc:oracle:thin:@172.16.10.55:1521:orcl"
userId="shange"
password="123456">
</jdbcConnection>
<!-- 默认false,把JDBC DECIMAL 和 NUMERIC 类型解析为 Integer
true,把JDBC DECIMAL 和 NUMERIC 类型解析为java.math.BigDecimal
-->
<javaTypeResolver >
<property name="forceBigDecimals" value="true" />
</javaTypeResolver>
<!-- targetProject:自动生成代码的位置 -->
<!-- 这里是 实体类的包. -->
<javaModelGenerator targetPackage="com.isprint.server.yessafeid.core.model.bto" targetProject="src">
<!-- enableSubPackages:是否让schema作为包的后缀 -->
<property name="enableSubPackages" value="true" />
<!-- 从数据库返回的值被清理前后的空格 -->
<property name="trimStrings" value="true" />
</javaModelGenerator>
<!-- 这里是放XML 隐射文件的目录 -->
<sqlMapGenerator targetPackage="com.isprint.server.yessafeid.core.dao.mapper.oracle" targetProject="src">
<property name="enableSubPackages" value="true" />
</sqlMapGenerator>
<!-- 这里是放接口文件的包名 -->
<javaClientGenerator type="XMLMAPPER" targetPackage="com.isprint.server.yessafeid.core.dao" targetProject="src">
<property name="enableSubPackages" value="true" />
</javaClientGenerator>
<!-- tableName:用于自动生成代码的数据库表;domainObjectName:对应于数据库表的javaBean类名 -->
<table schema="" tableName="T_USER" domainObjectName="UserBto"
enableCountByExample="false" enableUpdateByExample="false"
enableDeleteByExample="false" enableSelectByExample="false"
selectByExampleQueryId="false">
</table>
</context>
</generatorConfiguration>
执行的java 代码方法:
程序代码
package com.yihaomen.test;
import org.mybatis.generator.ant.GeneratorAntTask;
public class GenOracleMain {
public static void main(String[] args) {
try {
GeneratorAntTask task = new GeneratorAntTask();
//配置文件的路径。
String genCfg = "D:/Dev/eclipse/workspace/myBatisGenerator/src/mbgConfigurationoracle.xml";
task.setConfigfile(genCfg); //(配置文件具体path)
task.execute();
} catch (Exception e) {
e.printStackTrace();
}
}
}
更多推荐
Mybatis 生成Oracle 数据库代码生成器
发布评论