Mybatis源码分析(十) - Mybatis Generator (MBG)

Mybatis Generator 工具分享:

链接:https://pan.baidu.com/s/1f506HFXu8iDJsXwIfb9sAg 
提取码:9hiw 

MyBatis Generator:MyBatis 的开发团队提供了一个很强大的代码生成器,代码包含了数据库表对应的实体
类 、Mapper 接口类、 Mapper XML 文件和 Example 对象等,这些代码文件中几乎包含了全部的单表操作方
法,使用 MBG 可以极大程度上方便我们使用 MyBatis,还可以减少很多重复操作

Mybatis源码分析(十) - Mybatis Generator (MBG)_第1张图片

generatorConfig.xml

  




	
	
	
	
	
	
	    
    	
	
	
		
			
			
			
			
			
			
		
		
		


        
		
			
			
		


		
		
		
		
		
		 		
    	




		
		
		

怎么运行MGB

1.从命令提示符 使用 XML 配置文件

java -jar mybatis-generator-core-x.x.x.jar -configfile generatorConfig.xml

使用场景:对逆向工程定制较少,项目工程结构比较复杂的情况

2. 作为 Maven Plugin


			
				org.mybatis.generator
				mybatis-generator-maven-plugin
				1.3.2
				
					true
					true
				
			

mvn mybatis-generator:generate

3.Java 程序 使用 XML 配置文件

        @Test
	public void mybatisGeneratorTest() throws FileNotFoundException{
		List warnings = new ArrayList();  
        boolean overwrite = true;
        String genCfg = "generatorConfig.xml";  
        File configFile = new File(getClass().getClassLoader().getResource(genCfg).getFile());
        ConfigurationParser cp = new ConfigurationParser(warnings);  
        Configuration config = null;  
        try {  
            config = cp.parseConfiguration(configFile);  
        } catch (IOException e) {  
            e.printStackTrace();  
        } catch (XMLParserException e) {  
            e.printStackTrace();  
        }  
        DefaultShellCallback callback = new DefaultShellCallback(overwrite);  
        MyBatisGenerator myBatisGenerator = null;  
        try {  
            myBatisGenerator = new MyBatisGenerator(config, callback, warnings);  
        } catch (InvalidConfigurationException e) {  
            e.printStackTrace();  
        }  
        try {  
            myBatisGenerator.generate(null);  
        } catch (SQLException e) {  
            e.printStackTrace();  
        } catch (IOException e) {  
            e.printStackTrace();  
        } catch (InterruptedException e) {  
            e.printStackTrace();  
        }  
    }

 

你可能感兴趣的:(mybatis,mybatis源码分析)