页面静态化

一.对页面静态化的了解

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>  
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值