zoukankan      html  css  js  c++  java
  • freemarker

    一、下载freemarker的jar包,到maven仓库下载

    二、引入jar包,参考freemarker的手册写代码

    1、Test.ftlh

    <!DOCTYPE html>
    <html>
        <head>
             <title>Welcome!</title>
        </head>
        <body>
             <p>My name is ${username}, I'm ${age} years old, my birthday is ${date?string("yyyy-MM-dd")}</p>
        </body>
    </html>

    2、com.freeMark.bean.User

    package com.freeMark.bean;
    
    import java.util.Date;
    
    public class User {
        
        private String username;
        
        private int age;
        
        private Date date;
        
        public User(String username, int age, Date date) {
            
            this.username  = username;
            this.age = age;
            this.date = date;
            
        }
    
        public String getUsername() {
            return username;
        }
    
        public void setUsername(String username) {
            this.username = username;
        }
    
        public int getAge() {
            return age;
        }
    
        public void setAge(int age) {
            this.age = age;
        }
    
        public Date getDate() {
            return date;
        }
    
        public void setDate(Date date) {
            this.date = date;
        }
        
        
        
    
    }

    3、com.freeMark.FreemarkTest

    package com.freeMark;
    
    import java.io.File;
    import java.io.OutputStreamWriter;
    import java.io.Writer;
    import java.util.Calendar;
    import java.util.GregorianCalendar;
    
    import com.freeMark.bean.User;
    
    import freemarker.template.Configuration;
    import freemarker.template.Template;
    import freemarker.template.TemplateExceptionHandler;
    
    public class FreemarkTest {
        
        public static void main(String[] args) {
            
            Calendar calendar = new GregorianCalendar(1994, 1, 18);
            
            User user = new User("youth", 22, calendar.getTime());
            
            Configuration cfg = new Configuration(Configuration.VERSION_2_3_25);
    
            try {
                //设置模板的地址
                cfg.setDirectoryForTemplateLoading(new File("src/ftl"));
            
    
                cfg.setDefaultEncoding("UTF-8");
                //设置报错处理方式
                cfg.setTemplateExceptionHandler(TemplateExceptionHandler.RETHROW_HANDLER);
        
                cfg.setLogTemplateExceptions(false);
                //取得模板
                Template temp = cfg.getTemplate("Test.ftlh");
                
                Writer out = new OutputStreamWriter(System.out);
                //设置模型数据
                temp.process(user, out);
    
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
    
    }

    三、输出结果

    <!DOCTYPE html>
    <html>
        <head>
             <title>Welcome!</title>
        </head>
        <body>
             <p>My name is youth, I'm 22 years old, my birthday is 1994-02-18</p>
        </body>
    </html>
  • 相关阅读:
    Html5响应式设计与实现广场
    hdu 4911 Inversion
    LAN远程重启server安全方法
    华丽的网上突出代码组件CodeMirror
    Edit Distance -- LeetCode
    FPGA合成编码
    SenchaTouch2.3.1 正在使用listpaging以及pullrefresh插入 分页演示样品做
    【白云观导引头】一首诗
    初步boost之pool图书馆学习笔记
    分段的作用
  • 原文地址:https://www.cnblogs.com/honger/p/6123232.html
Copyright © 2011-2022 走看看