您的位置:首页 > 其它

页面静态化

2016-06-29 19:25 357 查看
一.对页面静态化的了解

1.动态页面静态化

静态页面是网页的代码都在页面中,不需要执行asp,php,jsp,.net等程序生成客户端网页代码的网页静态页面网址中一般不含“?”、“=”、“&”等特殊符号。静态页面不能自主管理发布更新的页面如果想更新网页内容,要通过FTP软件把文件DOWN下来用网页制作软件修改(通过fso等技术例外) 常见的静态页面举例.html扩展名的、.htm扩展名的。 注意:静态页面并非网站上没有动画的就是静态页面。

2.静态页面的好处

a、静态网页的内容稳定,页面加载速度快。

b、静态网页的没有数据库支持,在网站制作和维护方面的工作量较大。

c、静态网页的交互性差,有很大的局限性。

3.简单的列举一个小例子(FreeMarker生成html)

1.User.java

package com.hlj.bean;

public class User {

private String userName;
private String userPassword;
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
public String getUserPassword() {
return userPassword;
}
public void setUserPassword(String userPassword) {
this.userPassword = userPassword;
}

}


2.新建类FreeMarkutil

package com.hlj.controller;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStreamWriter;
import java.io.Writer;
import java.util.Map;

import freemarker.template.Configuration;
import freemarker.template.DefaultObjectWrapper;
import freemarker.template.Template;
import freemarker.template.TemplateException;

public class FreeMarkerutil {

//templatePath模板文件存放路径
//templateName 模板文件名称
//filename 生成的文件名称
public static void analysisTemplate(String templatePath,String templateName,String fileName,Map<?,?>root){
try {
Configuration config=new Configuration();
//设置要解析的模板所在的目录,并加载模板文件
config.setDirectoryForTemplateLoading(new File(templatePath));
//设置包装器,并将对象包装为数据模型
config.setObjectWrapper(new DefaultObjectWrapper());

//获取模板,并设置编码方式,这个编码必须要与页面中的编码格式一致
//否则会出现乱码
Template template=config.getTemplate(templateName,"UTF-8");
//合并数据模型与模板
FileOutputStream fos = new FileOutputStream(fileName);
Writer out = new OutputStreamWriter(fos,"UTF-8");
template.process(root, out);
out.flush();
out.close();
} catch (IOException e) {
e.printStackTrace();
}catch (TemplateException e) {
e.printStackTrace();
}
}

}


3.新建测试类

package com.hlj.test;
import java.util.HashMap;
import java.util.Map;

import com.hlj.bean.User;
import com.hlj.controller.FreeMarkerutil;

public class Clienttest {

public static void main(String[] args){
User user=new User();
user.setUserName("张三");
user.setUserPassword("123");

Map<String,Object> root=new HashMap<String, Object>();
root.put("user", user);
String templatesPath="D:/templates";
String templateFile="/user.ftl";
String htmlFile=templatesPath+"/user.html";
FreeMarkerutil.analysisTemplate(templatesPath,templateFile,htmlFile,root);
}

}


4.创建user.ftl

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv=Content-Type content="text/html; charset=utf-8">
<title>user.ftl</title>
</head>
<body>
${user.userName}
${user.userPassword}
</body>
</html>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: