freemark 模板解析

上篇文章(freemark基础知识)讲了一些freemark的一些基础语法,其实就是freemark自定义标签。本篇文章将讲解一下freemark是如何解析freemark模板的。

1 带有freemark标签的文件,内容如下:

          package ${basepackage};
          public class ${className}{
    
          }

         目的,通过freemark解析引擎,把${basepackage}、${className}替换成相应的字符串。

2 代码如下:

        //获得配置信息
        Configuration conf = new Configuration();
        /*
         * 搞一个map集合,两个key分别对应模板文件中的freemark的两个标签的名字。
         * value是标签将被替换成的字符串
         */
        Map data = new HashMap();
        data.put("basepackage", "com.index.datacount");
        data.put("className", "IndexDatacount");
        
        try {
            //获得Template
            Template template =
                conf.getTemplate("template\\main\\${basepackage_dir}\\model\\${className}.java");
            //模板解析,并将解析结果输出到控制台
            template.process(data, new OutputStreamWriter(System.out));
        } catch (IOException e) {
            e.printStackTrace();
        }catch (TemplateException e) {
            e.printStackTrace();
        }

以上是freemark解析的一个小例子,也是代码生成的核心逻辑。只是在这个核心上面封装了一些别的东东。从这个基础出发,代码生成不再神秘。C#、C、C++、Shell、Python、JAVA、小学生作文,无所谓,不过一个字符串。代码生成,不过是一个字符串替换。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值