FreeMarker小例子一枚

來源:互聯網
上載者:User

1.首先從官方下載freemarker的包,:http://freemarker.sourceforge.net/freemarkerdownload.html

 

2.把包lib/freemarker.jar拷貝到項目中

 

3.建立模板檔案WEB-INF/templates/test.ftl,內容如下:

Hello,${name}!

 

4.建立一個操作類Class1.java,內容如下:

package com.abc.web;

import java.io.Writer;
import java.util.HashMap;
import java.util.Map;

import javax.servlet.jsp.PageContext;

import freemarker.template.Configuration;
import freemarker.template.Template;

publicclass Class1 {
publicvoid execute(PageContext pageContext) throws Exception
{
Configuration cfg =new Configuration();
cfg.setServletContextForTemplateLoading(pageContext.getServletContext(), "WEB-INF/templates");

Map root =new HashMap();
root.put("name", "Tom");

Template t = cfg.getTemplate("test.ftl");

Writer out = pageContext.getResponse().getWriter();

t.process(root, out);
}
}

複製代碼

 

5.建立一個jsp頁面test1.jsp,內容如下:

<%@ page language="java" contentType="text/html; charset=GB2312"
pageEncoding="GB2312"%>
<%@ page import="com.abc.web.Class1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN""http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=GB2312">
<title>Insert title here</title>
</head>
<body>
<%
Class1 c1 =new Class1();
c1.execute(pageContext);
%>
</body>
</html>

複製代碼

 

頁面的顯示效果為:

Hello,Tom!

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.