根据数据中的表生成实体和mapper接口及映射文件

1.创建一个Java工程,工程结构为


2.需要的jar包

链接:http://pan.baidu.com/s/1gd2jNDh 密码:pyux

3.GeneratorSqlmap

public class GeneratorSqlmap {

public void generator() throws Exception{

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

boolean overwrite = true;

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

ConfigurationParser cp = new ConfigurationParser(warnings);

Configuration config = cp.parseConfiguration(configFile);

DefaultShellCallback callback

= new DefaultShellCallback(overwrite);

MyBatisGenerator myBatisGenerator

= new MyBatisGenerator(config,callback, warnings);

myBatisGenerator.generate( null);

}

public static void main(String[] args) throws Exception {

try {

GeneratorSqlmap generatorSqlmap = new GeneratorSqlmap();

generatorSqlmap.generator();

} catch (Exception e) {

e.printStackTrace();

}

}

}

4.log4j.properties

log4j.rootLogger=DEBUG, Console

#Console

log4j.appender.Console=org.apache.log4j.ConsoleAppender

log4j.appender.Console.layout =org.apache.log4j.PatternLayout

log4j.appender.Console.layout.ConversionPattern =%d [%t] %-5p [%c] - %m%n

log4j.logger.java.sql.ResultSet =INFO

log4j.logger.org.apache=INFO

log4j.logger.java.sql.Connection =DEBUG

log4j.logger.java.sql.Statement =DEBUG

log4j.logger.java.sql.PreparedStatement =DEBUG

5.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>

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

<commentGenerator >

<!-- 是否去除自动生成的注释 true:是 : false:否 -->

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

</commentGenerator>

<!--数据库连接的信息:驱动类、连接地址、用户名、密码 -->

<!--

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

connectionURL=

"jdbc:mysql:// localhost:3306/mybatis " userId="root"

password=" mysql">

</jdbcConnection>

-->

<!--

-->

<jdbcConnection driverClass="oracle.jdbc.OracleDriver"

connectionURL= "jdbc:oracle:thin:@192.168.56.101:1521:orcl"

userId= "hfzj"

password= "hfzj">

</jdbcConnection>

<!-- 默认false,把JDBC DECIMAL 和 NUMERIC 类型解析为

Integer true,

把JDBC DECIMAL 和 NUMERIC 类型解析为java.math.BigDecimal -->

<javaTypeResolver >

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

</javaTypeResolver>

<!-- targetProject:生成PO类的位置 

                        pc.hfzj.po为你生成的实体要放的位置 -->

<javaModelGenerator targetPackage ="pc.hfzj.po"

targetProject= ".\src">

<!-- enableSubPackages:是否让schema作为包的后缀 -->

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

<!-- 从数据库返回的值被清理前后的空格 -->

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

</javaModelGenerator>

<!-- targetProject:mapper映射文件生成的位置

                pc.hfzj.dao.mapper为你生成的mapper映射文件要放的位置 -- >

<sqlMapGenerator targetPackage ="pc.hfzj.dao.mapper"

targetProject= ".\src">

<!-- enableSubPackages:是否让schema作为包的后缀 -->

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

</sqlMapGenerator>

<!-- targetPackage:mapper接口生成的位置

                        pc.hfzj.dao.mapper为你生成的mapper接口要放的位置 --> 

<javaClientGenerator type ="XMLMAPPER"

targetPackage= "pc.hfzj.dao.mapper"

targetProject= ".\src">

<!-- enableSubPackages:是否让schema作为包的后缀 -->

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

</javaClientGenerator>

<!-- 指定数据库表  tableName位生成实体的表名 -->

<table schema ="" tableName="tableName" ></table>

<!-- 有些表的字段需要指定java类型

<table schema="" tableName="">

<columnOverride column="" javaType="" />

</table> -->

</context >

</generatorConfiguration>

时间: 2024-08-05 11:17:03

根据数据中的表生成实体和mapper接口及映射文件的相关文章

symfony 数据库表生成实体、迁移

从数据库表生成实体 1. 由数据库生成模型: php bin/console doctrine:mapping:convert --from-database yml D:\db\ (模型要改第一行路径) 2.实例所有表结构 php bin/console doctrine:generate:entities AppBundle/Entity/ --path src/ 实例单个表结构(SiteChannel) php bin/console doctrine:generate:entities

使用MyBatis Generator自动生成实体、mapper和dao层

通过MyBatis Generator可以自动生成实体.mapper和dao层,记录一下怎么用的. 主要步骤: 关于mybatis从数据库反向生成实体.DAO.mapper: 参考文章:http://www.cnblogs.com/wangkeai/p/6934683.html第一种方式:main方法运行(推荐) 1.在pom.xml中加入插件依赖: 2.写mbgConfiguration.xml文件,jdbc.properties文件 3.写/SSM/src/main/java/main/Ge

mybatis的基本配置:实体类、配置文件、映射文件、工具类 、mapper接口

搭建项目 一:lib(关于框架的jar包和数据库驱动的jar包) 1,第一步:先把mybatis的核心类库放进lib里 2,第二步:导入第三方类库(在lib里).mybatis的核心类库在运行时还依赖一些第三方类库 3,第三步:导入连接数据库驱动jar包 二:创建mybatis的配置文件 1,第一步:先创建实体包,对照着表结构把实体类写出来.封装好就是写get,set方法------不像hibernate,可以自动的将表名字段名与实体类相对应,不用自己手写实体类与映射文件 2,第二步:创建xml

如何通过java反射将数据库表生成实体类?

首先有几点声明: 1.代码是在别人的基础进行改写的: 2.大家有什么改进的意见可以告诉我,也可以自己改好共享给其他人: 3.刚刚毕业,水平有限,肯定有许多不足之处: 4.希望刚刚学习java的同学能有所启发. //这个是做转换的类,里面的DB只是封装了数据库的连接,大家可以用自己的,随意 package com.tt.util.gen.entity.tool; import java.io.File;import java.io.FileWriter;import java.io.IOExcep

在Idea中连接数据库并生成实体类(mybatis逆向生成实体类)

连接数据库 1. 按下图 ,点击view-----选择tool windows----------选择database并点击 2. 弹出Database窗口 3. 弹出DataSources and Drivers窗口 分别填写画圈的方框. host-----写ip地址 Database-------写数据库名称 user-------写账号 Password------写密码 填好之后,可以点击一下test Connection,如果连接成功,那么test Connection按钮的右边会显示

检查MYSQL数据中的表是否都正常

"mysqlcheck"命令是MYSQL自带的一条命令,我们可以通过它检查数据库中的表是否正常.一.检查一张表 # mysqlcheck 数据库 表名 -uroot -p"password" 二.检查一个数据库下的所有表 # mysqlcheck 数据库 -uroot -p"password" 三.检查所有数据库下的所有表 # mysqlcheck -A -uroot -p"password" 四.修复一张表 # mysqlc

springmvc学习笔记--mybatis--使用插件自动生成实体和mapper

由于表对象在开发过程中会增删字段,有时候需要重新生成实体和对应的mapper,这时候可以通过mybatis的插件的生成. 优点是快速简洁,缺点同样很明显:覆盖.因此,通常是在第一次搭建框架的时候使用,因为开发过程中实体的字段会被修改,如添加注解validator.format等.所以架构师学会用包装对象?包装对象怎么实现在原始表的属性的控制呢,比如日期格式化,比如校验. 1.首先,在pom中依赖插件: 1 <!-- Mybatis generator代码生成插件 配置 --> 2 <pl

使用generatorConfig工具自动生成mybatis的实体类以及dao接口和映射文件

1:数据准备 创建一个数据库表 1 CREATE TABLE `logininfo` ( 2 `id` BIGINT(20) NOT NULL AUTO_INCREMENT, 3 `username` VARCHAR(50) DEFAULT NULL, 4 `password` VARCHAR(200) DEFAULT NULL, 5 `state` TINYINT(4) DEFAULT NULL, 6 PRIMARY KEY (`id`) 7 ) ENGINE=INNODB DEFAULT C

idea自动生成实体与mapper文件

配置文件:generator/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/mybati