查看: 930|回复: 0
打印 上一主题 下一主题

mybatis generator自动生成代码插件

[复制链接]
  • TA的每日心情
    开心
    2017-7-5 20:14
  • 签到天数: 4 天

    [LV.2]偶尔看看I

    1698

    主题

    1707

    帖子

    7350

    积分

    管理员

    Rank: 9Rank: 9Rank: 9

    积分
    7350
    跳转到指定楼层
    楼主
    发表于 2018-6-8 20:24:15 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
    一 功能
    利用此源码,可以自动根据数据库里的表生成相应的实体、Dao层以及相应的mapper.xml文件,复制到项目相应的路径即可使用,快速开发;

    二 源码下载
    下载地址:插件编号【001】 mybatisGenerator.zip (241 Bytes, 下载次数: 0, 售价: 1000 金钱)

    三 项目结构


    四 部分代码
    配置文件tt.xml



    1. ? ?? ???
    2. ? ?? ???
    3. ? ?? ???
    4. ? ?? ???
    5. ? ?? ?? ?? ?? ?
    6. ? ?? ?? ?? ?? ?
    7. ? ?? ?? ?? ?? ?? ?? ?? ?
    8. ? ?? ?? ?? ?? ?

    9. ? ?? ?? ?? ?? ?
    10. ? ?? ?? ?? ?? ?
    11. ? ?? ?? ?? ?? ?
    12. ? ?? ?? ?? ?? ?

    13. ? ?? ?? ?? ?? ?
    14. ? ?? ?? ?? ?? ?? ?? ?? ?
    15. ? ?? ?? ?? ?? ?

    16. ? ?? ?? ?? ?? ?
    17. ? ?? ?? ?? ?? ?
    18. ? ?? ?? ?? ?? ?? ?? ?? ?
    19. ? ?? ?? ?? ?? ?? ?? ?? ?
    20. ? ?? ?? ?? ?? ?

    21. ? ?? ?? ?? ?? ?
    22. ? ?? ?? ?? ?? ?
    23. ? ?? ?? ?? ?? ?? ?? ?? ?
    24. ? ?? ?? ?? ?? ?

    25. ? ?? ?? ?? ?? ?
    26. ? ?? ?? ?? ?? ?
    27. ? ?? ?? ?? ?? ?? ?? ?? ?
    28. ? ?? ?? ?? ?? ?

    29. ? ?? ?? ?? ?? ?

    30. ? ?? ?? ?? ?? ?
    31. ? ?? ???

    32. ? ?? ???
    复制代码
    生成代码工具类MyBatisGeneratorTool.java
    1. package com.zydgbbs.utils;


    2. import java.io.File;
    3. import java.io.IOException;
    4. import java.sql.SQLException;
    5. import java.util.ArrayList;
    6. import java.util.List;

    7. import org.mybatis.generator.api.MyBatisGenerator;
    8. import org.mybatis.generator.config.Configuration;
    9. import org.mybatis.generator.config.xml.ConfigurationParser;
    10. import org.mybatis.generator.exception.InvalidConfigurationException;
    11. import org.mybatis.generator.exception.XMLParserException;
    12. import org.mybatis.generator.internal.DefaultShellCallback;

    13. public class MyBatisGeneratorTool {
    14. ? ?? ???public static void main(String[] args) {
    15. ? ?? ?? ?? ?? ? List warnings = new ArrayList();
    16. ? ?? ?? ?? ?? ? boolean overwrite = true;
    17. ? ?? ?? ?? ?? ? String genCfg = "/ttt.xml";
    18. ? ?? ?? ?? ?? ? File configFile = new File(MyBatisGeneratorTool.class.getResource(genCfg).getFile());
    19. ? ?? ?? ?? ?? ? //File configFile = new File("D:/ylink/myeclipse/MBG/src/com/yuan/mybatis/mbg/util/generatorConfig.xml");
    20. ? ?? ?? ?? ?? ? ConfigurationParser cp = new ConfigurationParser(warnings);
    21. ? ?? ?? ?? ?? ? Configuration config = null;
    22. ? ?? ?? ?? ?? ? try {
    23. ? ?? ?? ?? ?? ?? ?? ?? ?config = cp.parseConfiguration(configFile);
    24. ? ?? ?? ?? ?? ? } catch (IOException e) {
    25. ? ?? ?? ?? ?? ?? ?? ?? ?e.printStackTrace();
    26. ? ?? ?? ?? ?? ? } catch (XMLParserException e) {
    27. ? ?? ?? ?? ?? ?? ?? ?? ?e.printStackTrace();
    28. ? ?? ?? ?? ?? ? }
    29. ? ?? ?? ?? ?? ? DefaultShellCallback callback = new DefaultShellCallback(overwrite);
    30. ? ?? ?? ?? ?? ? MyBatisGenerator myBatisGenerator = null;
    31. ? ?? ?? ?? ?? ? try {
    32. ? ?? ?? ?? ?? ?? ?? ?? ?myBatisGenerator = new MyBatisGenerator(config, callback, warnings);
    33. ? ?? ?? ?? ?? ? } catch (InvalidConfigurationException e) {
    34. ? ?? ?? ?? ?? ?? ?? ?? ?e.printStackTrace();
    35. ? ?? ?? ?? ?? ? }
    36. ? ?? ?? ?? ?? ? try {
    37. ? ?? ?? ?? ?? ?? ?? ?? ?myBatisGenerator.generate(null);
    38. ? ?? ?? ?? ?? ? } catch (SQLException e) {
    39. ? ?? ?? ?? ?? ?? ?? ?? ?e.printStackTrace();
    40. ? ?? ?? ?? ?? ? } catch (IOException e) {
    41. ? ?? ?? ?? ?? ?? ?? ?? ?e.printStackTrace();
    42. ? ?? ?? ?? ?? ? } catch (InterruptedException e) {
    43. ? ?? ?? ?? ?? ?? ?? ?? ?e.printStackTrace();
    44. ? ?? ?? ?? ?? ? }
    45. ? ?? ???}
    46. }
    复制代码


    测试类配置文件Configuration.xml



    1. ? ?? ???
    2. ? ?? ?? ?? ?? ?
    3. ? ?? ?? ?? ?? ?? ?? ?? ?
    4. ? ?? ?? ?? ?? ?? ?? ?? ?
    5. ? ?? ?? ?? ?? ?? ?? ?? ?? ?? ???
    6. ? ?? ?? ?? ?? ?? ?? ?? ?? ?? ???
    7. ? ?? ?? ?? ?? ?? ?? ?? ?? ?? ???
    8. ? ?? ?? ?? ?? ?? ?? ?? ?? ?? ???
    9. ? ?? ?? ?? ?? ?? ?? ?? ?

    10. ? ?? ?? ?? ?? ?

    11. ? ?? ???

    12. ? ?? ???
    13. ? ?? ?? ?? ?? ?
    14. ? ?? ???

    复制代码
    测试类MyTest.java
    1. package com.zydgbbs.utils;

    2. import java.io.IOException;
    3. import java.util.List;

    4. import org.apache.ibatis.io.Resources;
    5. import org.apache.ibatis.session.SqlSession;
    6. import org.apache.ibatis.session.SqlSessionFactory;
    7. import org.apache.ibatis.session.SqlSessionFactoryBuilder;

    8. import com.zydgbbs.dao.StudentMapper;
    9. import com.zydgbbs.model.Student;
    10. import com.zydgbbs.model.StudentExample;

    11. public class MyTest {

    12. ? ?? ???/**
    13. ? ?? ?? ?* @param args
    14. ? ?? ?? ?*/
    15. ? ?? ???public static void main(String[] args) {
    16. ? ?? ?? ?? ?? ? // TODO Auto-generated method stub
    17. ? ?? ?? ?? ?? ? SqlSessionFactory factory = null;
    18. ? ?? ?? ?? ?? ? try {
    19. ? ?? ?? ?? ?? ?? ?? ?? ?factory = new SqlSessionFactoryBuilder().build(Resources.getResourceAsReader("Configuration.xml"));
    20. ? ?? ?? ?? ?? ? } catch (IOException e) {
    21. ? ?? ?? ?? ?? ?? ?? ?? ?e.printStackTrace();
    22. ? ?? ?? ?? ?? ? }
    23. ? ?? ?? ?? ?? ? SqlSession sqlSession = factory.openSession();
    24. ? ?? ?? ?? ?? ? StudentExample example = new StudentExample();
    25. ? ?? ?? ?? ?? ? example.setLimitOffset(2);
    26. ? ?? ?? ?? ?? ? example.setLimitRows(3);
    27. ? ?? ?? ?? ?? ? example.createCriteria().andNameIsNotNull();
    28. ? ?? ?? ?? ?? ? StudentMapper studentMapper = sqlSession.getMapper(StudentMapper.class);
    29. ? ?? ?? ?? ?? ?
    30. ? ?? ?? ?? ?? ? List s = studentMapper.selectByExample(example);
    31. ? ?? ?? ?? ?? ?
    32. ? ?? ?? ?? ?? ? System.out.println(s.size());
    33. ? ?? ?? ?? ?? ?
    34. ? ?? ?? ?? ?? ? try{
    35. ? ?? ?? ?? ?? ?? ?? ?? ?sqlSession.commit();
    36. ? ?? ?? ?? ?? ? }catch(Exception e){
    37. ? ?? ?? ?? ?? ?? ?? ?? ?
    38. ? ?? ?? ?? ?? ? }finally{
    39. ? ?? ?? ?? ?? ?? ?? ?? ?sqlSession.close();
    40. ? ?? ?? ?? ?? ? }
    41. ? ?? ?? ?? ?? ? System.out.println("over");
    42. ? ?? ???}

    43. }
    复制代码

    五 注意多次生成代码时,一定要把之前的先删除,尤其是xml文件,否则会出现mapper.xml文件内容重复。

    资源帝国 - 论坛版权1、本主题所有言论和图片纯属会员个人意见,与本论坛立场无关
    2、本站所有主题由该帖子作者发表,该帖子作者与资源帝国享有帖子相关版权
    3、其他单位或个人使用、转载或引用本文时必须同时征得该帖子作者和资源帝国的同意
    4、帖子作者须承担一切因本文发表而直接或间接导致的民事或刑事法律责任
    5、本帖部分内容转载自其它媒体,但并不代表本站赞同其观点和对其真实性负责
    6、如本帖侵犯到任何版权问题,请立即告知本站,本站将及时予与删除并致以最深的歉意
    7、资源帝国管理员和版主有权不事先通知发贴者而删除本文

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    QQ|Archiver|手机版|小黑屋|资源帝国 ( 皖ICP备14009953号 )?

    GMT+8, 2019-8-11 01:51 , Processed in 0.273094 second(s), 33 queries .

    Powered by Discuz! X3.2

    ? 2001-2017 Comsenz Inc.

    快速回复 返回顶部 返回列表