您的位置:首页 > 大数据 > 人工智能

Mybatis 如何自动生成bean dao xml 配置文件 generatorconfig.xml (main()方法自动生成更快捷)

2012-08-29 11:46 981 查看
最近项目要用到mybatis中间件,中间涉及到要对表结构生成bean,dao,和sqlconfig.xml 所以记录一下学习过程

首先是准备工作,即准备需要的jar包:我们的数据库mysql,所以驱动用的mysql-connector-5.1.8.jar 另外还需要 mybatis的jar包: mybatis-3.0.5-SNAPSHOT.jar

及自动生成的jar包:mybatis-generator-core-1.3.2.jar ....这些都可以到网上下载。。。

我首先是测试这个自动生成功能,所以没直接在项目里配置,而是先在 d盘测试了一下: 将三个jar包放入D:\test\lib下

其次是准备generatorconfig.xml ,将此文件直接放到D:\test 下。 generatorconfig.xml文件如:

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE generatorConfiguration

PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN"

"http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd">

<generatorConfiguration>

<classPathEntry location="lib/mysql-connector-5.1.8.jar" />

<context id="MySqlTables" targetRuntime="MyBatis3">

<!--配置数据库链接-->

<jdbcConnection driverClass="com.mysql.jdbc.Driver"

connectionURL="jdbc:mysql://localhost:3306/abcProject?characterEncoding=utf8" userId="root"

password="11112222">

</jdbcConnection>

<javaTypeResolver>

<property name="forceBigDecimals" value="false" />

</javaTypeResolver>

<!--配置实体bean-->

<javaModelGenerator targetPackage="xmlParer"

targetProject="D:\test\xmlParer">

<property name="enableSubPackages" value="true" />

<property name="trimStrings" value="true" />

</javaModelGenerator>

<!--配置实体map接口(dao)-->

<sqlMapGenerator targetPackage="xmlParer"

targetProject="D:\test\xmlParer">

<property name="enableSubPackages" value="true" />

</sqlMapGenerator>

<!--配置实体bean的sql.xml-->

<javaClientGenerator type="XMLMAPPER"

targetPackage="xmlParer"

targetProject="D:\test\xmlParer">

<property name="enableSubPackages" value="true" />

</javaClientGenerator>

<!--配置实体-->

<table tableName="abc_agency" domainObjectName="Agency">

</table>

</context>

</generatorConfiguration>

因为是简单的测试,所以我的bean和dao及xml 都放到了统一的目录下了。。。D:\test\xmlParer

最后 在cmd命令行 执行

将目录切换到 D:\test\lib 下

java -jar mybatis-generator-core-1.3.0.jar -configfile D:\test\generatorconfig.xml -overwrite

这样基本就ok了。。。后来还研究了一下 在java的main方法去执行。。。也ok

2012-09-19

今天把上次main方法读取配置 自动生成bean,及map的代码复制过来 供大家参考

package net.xh.xuanzhicms.util;

import java.io.File;

import java.io.IOException;

import java.util.ArrayList;

import java.util.List;

import org.mybatis.generator.api.MyBatisGenerator;

import org.mybatis.generator.config.Configuration;

import org.mybatis.generator.config.xml.ConfigurationParser;

import org.mybatis.generator.exception.XMLParserException;

import org.mybatis.generator.internal.DefaultShellCallback;

public class AutoMybatis {

/**

* @param args

*/

public static void main(String[] args) {

List<String> warnings = new ArrayList<String>();

boolean overwrite = true;

File configFile = new File("src/generatorConfig.xml");

ConfigurationParser cp = new ConfigurationParser(warnings);

Configuration config;

try {

config = cp.parseConfiguration(configFile);

DefaultShellCallback callback = new DefaultShellCallback(overwrite);

MyBatisGenerator myBatisGenerator;

try {

myBatisGenerator = new MyBatisGenerator(config, callback,

warnings);

myBatisGenerator.generate(null);

} catch (Exception e) {

e.printStackTrace();

}

} catch (IOException e) {

// TODO Auto-generated catch block

e.printStackTrace();

} catch (XMLParserException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}

}

这样就更方便自动生成代码了
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐