您的位置:

一段将网页静态化的java代码(java页面静态化技术)

本文目录一览:

java静态初始化器 代码一: public class Test { public static int _i; static{ _i = 10;

不一样,代码二的复制是在非静态代码块里面,所以必须要在Test类被实例化(一般是new)的时候才会执行,这个要测试也不难,自己写个main方法直接打印Test._i的值就可以看出不同了

如何实现网页静态化

方法一:使用现成的插件,比如:ISAPI_Rewrite、IIS Rewrite、Apache

HTTP服务器的mod_rewrite等,它们都是基于正则表达式解析器开发的重写引擎。它们的使用方法查看它们自带的帮助即可。

方法二:自己写的代码实现动态网页静态化,方法也有好几种:

1、创建FSO对象,利用此对象将所需的内容动态创建到文件中生成HTML页面;

2、利用模板技术,将模板中特殊代码的值替换为从表单或是数据库字段中接受过来的值 生成HTML文件;

3、使用Server.Transfer转换技术,

方法三:使用HttpWebRequest请求客户端的方式,获取返回资源,生成静态页面。一般这样只需要获取网页内容即可,其它资源可放置在服务器上,自动加载。(注:此方法缺点明显,需要大量更改匹配URL,建议慎用)

方法四:在asp中有IhttpModule接口。Ihttpmodule可以简单理解为一个可以在执行像.aspx,或者mvc中control/action前,添加我们自定义的操作的东西。

我们只需要编写这么一个HttpModule就可以了,当用户第一次请求asp处理时,我们可以在ihttpmodule中拦截到这个请求,然后获取到这次请求应该返回的html代码,然后我们返回这些html给用户,并保存刚才我们获取到的html到文件内,当用户下次请求时,我们只需要直接返回我们已经保存的html文件即可

新闻发布时候的静态页面生成 java

给你思路:

1、使用java+freeMarker实现。

2、使用java的IO写HTML文档。

3、使用URLRewriter将*.jsp伪装成*.html来访问。

4、将html的内容存入数据库中,在运行时读取出来在服务端输出成html。最后把请求转至html

第一种最简单,不知道你用过没有。简单的说,就是你想生成一个动态的html,你只需要html页面的静态部分写死,作为模板,动态的数据部分,用java的Map封装起来,然后交给freeMarker,它会帮你写入html文档中。最后给你生成你想要的html文档。这个html文档具有你的静态结构,加上动态数据。我给你个示例。

import java.io.ByteArrayOutputStream;import java.io.OutputStreamWriter;import java.io.Writer;import java.util.Locale;import java.util.Map;

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

/** * 使用freeMarker模板生成报表的动态数据代码 * @author wzj * 2013-09-18 */public class ReportFreeMarker { private static Configuration cfg = new Configuration(); private static final String FTL_FILE = "chart_templet_"; static { try { cfg.setDefaultEncoding("utf-8"); cfg.setClassForTemplateLoading(ReportFreeMarker.class, ""); cfg.setObjectWrapper(new DefaultObjectWrapper()); } catch (Exception e) { e.printStackTrace(); } } // public static void main(String[] args) throws Exception {// new ReportFreeMarker().execute("chart_templet.ftl");//}

/** * 根据type来决定使用哪个模板文件,生成对应的柱图,饼图(1-柱图,2-饼图) * @param parameterMap 参数集 * @param type 图表类别 * @return * @throws Exception */ public String buildChartCode(Map parameterMap, int type) throws Exception { Template t = cfg.getTemplate(FTL_FILE + type + ".ftl"); t.setEncoding("utf-8"); String result = null; Writer out = null; ByteArrayOutputStream bos = new ByteArrayOutputStream(); try { out = new OutputStreamWriter(bos); t.process(parameterMap, out); out.flush(); result = new String(bos.toByteArray()); } catch (Exception e) { e.printStackTrace(); throw e; } finally { if (out != null) { out.close(); } if ( bos != null ) bos.close(); bos = null; } return result;

// File tmp = new File("./tmp.xml"); //写成tmp.xml测试// if ( tmp.exists() ) tmp.delete();// Writer out = null;// try {// out = new OutputStreamWriter(new FileOutputStream(tmp), "utf-8");// t.process(root, out);// out.flush();// } catch (Exception e) {// e.printStackTrace();// throw e;// } finally {// if (out != null) {// out.close();// }// } }}

//下面是调用

ReportFreeMarker marker = new ReportFreeMarker(); Map root = new HashMap();

root.put(CHART_XLIST, xlist); root.put(CHART_YLIST, ylist); String content = null; try { content = marker.buildChartCode(root, chartType);//根据模板生成图表xml代码 } catch (Exception e) { e.printStackTrace(); throw new ReportException(ERROR_FREEMARKER_FAILED + "(" + e.getMessage() + ")"); }

这样,你最后可以得到一个包含动态数据的静态html页面的代码,保存成一个文件。

////在html中(模板)可以这样写

html body

#list ylist as item !--这就是动态的,要封装成map传入-- table/table

/#list

/body

/html

在java中,怎么把动态页面转为静态页面?

方法:import java.io.*; import java.net.URL; / * Title:动态页面静态化 * Description: longing.chen@hotmail.com * Copyright: Copyright (c) 2006 * Company: * @author bobo * @version 1.0 */ public class StaticHTMLFile { /** * * @param page 存放静态页面的本地文件路径 * @param url_addr 所要生成的静态页的URL地址 * @return */ public static boolean PrintPage(String page, String url_addr) { URL url; String rLine = null; PrintWriter fileOut = null; InputStream ins = null; try { url = new URL(url_addr); ins = url.openStream(); BufferedReader bReader = new BufferedReader(new InputStreamReader(ins, "gb2312"));//获取编码为gb2312的文件 FileOutputStream out = new FileOutputStream(page); OutputStreamWriter writer = new OutputStreamWriter(out, "gb2312"); fileOut = new PrintWriter(writer); //循环取取数据,并写入目标文件中 while ( (rLine = bReader.readLine()) != null) { String tmp_rLine = rLine; int str_len = tmp_rLine.length(); if (str_len 0) { fileOut.println(tmp_rLine); fileOut.flush(); } tmp_rLine = null; } url = null; return true; } catch (IOException e) { System.out.println("error: " + e.getMessage()); e.printStackTrace(); return false; } catch (Exception es) { System.out.println(es.getMessage()); return false; } finally {//关闭资源 fileOut.close(); try { ins.close(); } catch (IOException ex) { //关闭输入流出错 } } } public static void main(String[] args) { PrintPage("c:/sina.html", " "); } }

一段将网页静态化的java代码(java页面静态化技术)

2022-11-16
java静态类,java静态类和静态方法

2023-01-05
java静态类,java静态类存储在哪里

2023-01-08
php网站生成静态网页,php生成静态html

2022-12-02
ee的动态网页技术jsp,动态网页技术有

本文目录一览: 1、JSP就是JAVAscript吗? 2、jsp和javaEE有什么区别 3、jsp是什么 4、jsp是什么? 5、java EE的三大组建技术都是什么? JSP就是JAVAscri

2023-12-08
php生成全静态页面的方法,php生成静态html

2023-01-07
php静态网址,php apache页面静态

2022-12-01
java页面,java页面跳转的代码

2022-11-27
jsp动态网页制作技术,JSP动态网页技术

本文目录一览: 1、在jsp中如何制作动态网页 2、servlet可以实现动态网页的开发,为什么还需要jsp技术? 3、JSP课程的心得总结 4、制作一个简易JSP动态网页 在jsp中如何制作动态网页

2023-12-08
java动态创建网页,java 动态创建类

2022-11-23
jsp动态网页开发技术是什么(jsp动态网页开发技术是什么意

本文目录一览: 1、解释JSP的作用,并列举JSP的特点 2、JSP是什么 3、什么叫JSP技术 4、什么是jsp动态网页 5、jsp是什么 解释JSP的作用,并列举JSP的特点 JSP是一种建立在S

2023-12-08
静态网页制作的全面指南

2023-05-20
php生成静态页面,thinkphp生成静态页面

2022-11-29
java静态块,java静态块静态变量加载顺序

2022-11-29
java静态块,JAVA静态块

2022-11-29
php伪静态页面函数附使用方法(php页面静态化实现)

2022-11-12
jsp动态页面课程设计设计报告(静态网页课程设计报告)

本文目录一览: 1、jsp的课程设计有哪些 2、你有JSP课程设计报告?可以复制份给我吗,我们有这个作业 3、JSP课程设计 4、JSP页面列表动态表的实现 5、给一个JSP 课程设计吧~ 谢谢急用,

2023-12-08
java访问静态文件,java静态链接

2022-11-21
java页面,java页面置换算法

2022-11-27
php的ob函数实现页面静态化(php ob函数)

2022-11-13