Beetl模版初試験

1567 ワード

Beetlの例を書いて、今は方法にパッケージされていないので、後で封印します.
beetl:テンプレートの例
select ${condition.columns} from ${condition.tableName}

     where ${condition.whereCondition}

Javaアプリケーションの例:
StringTemplateResourceLoader resourceLoader = new StringTemplateResourceLoader();

        Configuration cfg = null;
        try {
            cfg = Configuration.defaultConfiguration();
        } catch (IOException e) {
            e.printStackTrace();
        }
        GroupTemplate gt = new GroupTemplate(resourceLoader, cfg);

        Template t = null;
        try {
            t = gt.getTemplate(FileUtils.readFileToString(new File("./src/main/resources/template.btl"), "UTF8"));
        } catch (IOException e) {
            e.printStackTrace();
        }
        Condition condition = new Condition("menu", "id,menu_name", "a='1'");
        Map map  =Maps.newHashMap();
        map.put("condition",condition);
        t.binding(map);
        String render = t.render();
        System.out.println(render);

効果:
select id,menu_name from menu
     where a='1'

Condition構造:
@Data
@AllArgsConstructor
@NoArgsConstructor
public class Condition {

    String tableName;

    String columns;

    String whereCondition;

}

参照:

            com.ibeetl
            beetl
            2.9.6