最近一直在学习SSM框架,今天遇到一个关于MyBatis生成的问题,记录一下。

http://blog.csdn.net/zhshulin/article/details/37956105 我是根据这个博客进行测试的

首先介绍一下Mybatis属于半自动ORM,在使用这个框架中,工作量最大的就是书写Mapping的映射文件,由于手动书写很容易出错,我们可以利用Mybatis-Generator来帮我们自动生成文件。

1.相关文件:

2.generatorConfig.xml文件配置

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!DOCTYPE generatorConfiguration PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN" "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd">
  3. <generatorConfiguration>
  4. <!-- 数据库驱动-->
  5. <classPathEntry location="mysql-connector-java-5.1.25-bin.jar"/>
  6. <context id="DB2Tables" targetRuntime="MyBatis3">
  7. <commentGenerator>
  8. <property name="suppressDate" value="true"/>
  9. <!-- 是否去除自动生成的注释 true:是 : false:否 -->
  10. <property name="suppressAllComments" value="true"/>
  11. </commentGenerator>
  12. <!--数据库链接URL,用户名、密码 -->
  13. <jdbcConnection driverClass="com.mysql.jdbc.Driver" connectionURL="jdbc:mysql://127.0.0.1/myspring" userId="root" password="root">
  14. </jdbcConnection>
  15. <javaTypeResolver>
  16. <property name="forceBigDecimals" value="false"/>
  17. </javaTypeResolver>
  18.  
  19. <javaModelGenerator targetPackage="test.model" targetProject="src">
  20. <property name="enableSubPackages" value="true"/>
  21. <property name="trimStrings" value="true"/>
  22. </javaModelGenerator>
  23.  
  24. <sqlMapGenerator targetPackage="test.mapping" targetProject="src">
  25. <property name="enableSubPackages" value="true"/>
  26. </sqlMapGenerator>
  27.  
  28. <javaClientGenerator type="XMLMAPPER" targetPackage="test.dao" targetProject="src">
  29. <property name="enableSubPackages" value="true"/>
  30. </javaClientGenerator>
  31. <!-- 要生成的表 tableName是数据库中的表名或视图名 domainObjectName是实体类名-->
  32. <table tableName="user_t" domainObjectName="User" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false"></table>
  33. </context>
  34. </generatorConfiguration>

其中是参考了http://blog.csdn.net/zhshulin/article/details/23912615这篇博客

3.进行测试

在该目录按住Shift键,右键鼠标选择"在此处打开命令窗口",复制粘贴生成语句的文件代码即可。这一条在博客中没有提到,可是苦了我,不过幸好找到另一篇博客,算是解了谜团。http://www.cnblogs.com/smileberry/p/4145872.html

在命令行中输入语句

  1. java -jar mybatis-generator-core-1.3.2.jar -configfile generatorConfig.xml -overwrite

4.如果遇到这样错误的解决办法  

当用MyBatis生成的时候遇到问题了,出现前言中不允许有内容的问题,如果出现这样的问题,需要用Notepad++工具打开,选择格式以UTF-8无BOM格式编码,之后再运行就解决了,原理是将xml文件换成UTF-8格式的会有个BOM头  JAVA读取的时候就会报错

使用Mybatis-Generator自动生成Dao、Model、Mapping相关文件的更多相关文章

  1. 【Java MyBatis Generator】使用generator自动生成Dao,Mapping和实体文件

    具体请参照: http://blog.csdn.net/fengshizty/article/details/43086833 按照上面博客地址,下载Generator的依赖包: 如下是我的配置文件: ...

  2. idea集成 MyBatis Generator 插件,自动生成dao,model,sql map文件

    1.集成到开发环境中 以maven管理的功能来举例,只需要将插件添加到pom.xml文件中即可.(注意此处是以plugin的方式,放在<plugins></plugins>中间 ...

  3. mybatis generator 自动生成dao层映射代码

    资源: doc url :http://www.mybatis.org/generator/ download:https://github.com/mybatis/generator/release ...

  4. java web(七): mybatis的动态sql和mybatis generator自动生成pojo类和映射文件

    前言: MyBatis 的强大特性之一便是它的动态 SQL.如果你有使用 JDBC 或其它类似框架的经验,你就能体会到根据 不同条件拼接 SQL 语句的痛苦.例如拼接时要确保不能忘记添加必要的空格,还 ...

  5. IDEA Maven Mybatis generator 自动生成代码

    IDEA Maven Mybatis generator 自动生成代码 一.安装配置maven以及在Idea中配置maven 安装过程步骤可以看上面的博文,里面介绍得很详细. 二.建数据表 DROP ...

  6. 使用Mybatis Generator自动生成Mybatis相关代码

    本文将简要介绍怎样利用Mybatis Generator自动生成Mybatis的相关代码: 一.构建一个环境: 1. 首先创建一个表: CREATE TABLE pet (name VARCHAR(2 ...

  7. SpringBoot 添加mybatis generator 自动生成代码插件

    自动生成数据层代码,提高开发效率 1.pom添加插件,并指定配置文件路径 <!-- mybatis generator 自动生成代码插件 --> <plugin> <gr ...

  8. idea中mybatis generator自动生成代码配置 数据库是sqlserver

    好长时间没有写博客了,最近公司要用java语言,开始学习java,属于初学者,今天主要记录一下mybatis generator自动生成代码,首先在如下图的目录中新建两个文件,如下图 generato ...

  9. SpringBoot入门篇--整合mybatis+generator自动生成代码+druid连接池+PageHelper分页插件

    原文链接 我们这一篇博客讲的是如何整合Springboot和Mybatis框架,然后使用generator自动生成mapper,pojo等文件.然后再使用阿里巴巴提供的开源连接池druid,这个连接池 ...

  10. IDEA Maven Mybatis generator 自动生成代码(实例讲解)(转)

    IDEA Maven Mybatis generator 自动生成代码(实例讲解) MyBatis Generator • 简称MBG,是一个专门为MyBatis框架使用者定制的代码生成器,可以快速的 ...

随机推荐

  1. 【NOIP 2012 国王游戏】 贪心+高精度

    题目描述 恰逢 H 国国庆,国王邀请 n 位大臣来玩一个有奖游戏.首先,他让每个大臣在左.右 手上面分别写下一个整数,国王自己也在左.右手上各写一个整数.然后,让这 n 位大臣排 成一排,国王站在队伍 ...

  2. Linux内核spin_lock与spin_lock_irq分析

    http://blog.csdn.net/zhanglei4214/article/details/6837697

  3. USB Type-C,接口上的大统一?

    这款 24-pin 连接器的机械设计反应了设计人员从 Micro-B 连接器上获得的历史教训,它无需确定插入的正反方向并可实现 10000 次的插拔.使用者再也不需要担心“哪头上,哪头下”,因为 US ...

  4. 对TCP/IP网络协议的深入浅出归纳(转)

    前段时间做了一个开发,涉及到网络编程,开发过程比较顺利,但任务完成后始终觉得有一些疑惑.主要是因为对网络协议不太熟悉,对一些概念也没弄清楚.后来 我花了一些时间去了解这些网络协议,现在对TCP/IP网 ...

  5. chrome插件 postman插件 接口测试、API & HTTP 请求调试工具

    Postman 是一个非常棒的Chrome扩展,提供功能强大的API & HTTP 请求调试. 它能够发送任何类型的HTTP requests (GET, HEAD, POST, PUT..) ...

  6. C# SerialPort的简单使用

    SerialPort中串口数据的读取与写入有较大的不同.由于串口不知道数据何时到达,因此有两种方法可以实现串口数据的读取.一.线程实时读串口:二.事件触发方式实现.由于线程实时读串口的效率不是十分高效 ...

  7. OSFM Tables

    OSFM - Oracle Shop Floor Management 1. (N) Shop Floor Manager > Lot Based Jobs (B: New) Status: U ...

  8. Android开发UI之补间动画-Tween Animation

    Tween Animation-补间动画 官网链接-http://developer.android.com/reference/android/view/animation/Animation.ht ...

  9. ORA-28001: the password has expired

    大早上正式库提示: Oracle提示错误消息ORA-28001: the password has expired 解决办法: 1.利用SYSDBA权限登陆: 2.查看账户信息:select user ...

  10. $resource

    属性/URL映射 AngularJS Resource:与 RESTful API 交互 自定义$resource方法 <!DOCTYPE html> <html ng-app=&q ...