之前写了两篇关于MyBatis Generator的文章,这是同一系列的第三篇,主要介绍怎么通过编码实现代码自动生成功能。

  看过前两篇系列文章(MyBatis Generator(一)—— 配置文件说明MyBatis Generator(二)—— 自动生成配置文件)的同学已经了解了配置文件的基本配置和如何自动生成配置文件,那么本文即是这个系列的最终篇:如何编码自动生成代码。我还是直接贴代码吧!

public class Generator {

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

    List<String> warnings = new ArrayList<String>();
    boolean overwrite = true;

    File configFile = new File(Generator.class.getResource("/generatorConfig.xml").getFile());

    ConfigurationParser cp = new ConfigurationParser(warnings);
    Configuration config = cp.parseConfiguration(configFile);

    DefaultShellCallback callback = new DefaultShellCallback(overwrite);

    MyBatisGenerator myBatisGenerator = new MyBatisGenerator(config, callback, warnings);

    myBatisGenerator.generate(new ProgressCallback() {
        @Override
        public void introspectionStarted(int totalTasks) {
//                System.out.println("introspection started: " + totalTasks);
        }

        @Override
        public void generationStarted(int totalTasks) {
//                System.out.println("generate started: " + totalTasks);
        }

        @Override
        public void saveStarted(int totalTasks) {
//                System.out.println("save started: " + totalTasks);
        }

        @Override
        public void startTask(String taskName) {
            System.out.println("start task: " + taskName);
        }

        @Override
        public void done() {
            System.out.println("done!");
        }

        @Override
        public void checkCancel() throws InterruptedException {
            //To change body of implemented methods use File | Settings | File Templates.
        }
    });
}
}

  代码中配置文件generatorConfig.xml是系列文章第二篇自动生成的,定义了如何自动生成代码。

文章作者:admin
本文链接:http://javatech.wang/index.php/archives/47/
版本所有 ©转载时必须以链接形式注明作者和原始出处