生成静态页面的技术是如何实现的

 我来答
安徽新华电脑专修学院
2018-05-26 · 百度知道合伙人官方认证企业
安徽新华电脑专修学院
安徽新华电脑专修学院始建于1988年,隶属于新华教育集团,是国家信息化教育示范基地、中国 IT 教育影响力品牌院校.
向TA提问
展开全部

不一定是生成html,也可能是地址栏重写,urlrewrite,可以看下http://wenku.baidu.com/view/f0f89972f242336c1eb95ed7.html 
不过一般生成静态页面有两种方式,一种就是采用模板,例如freemaker或Velocity, 
另一种是Mapping方式生成静态页面, 
给你点代码看看 
freemaker生成静态页面 

Java代码  

  • /** 

  • * 生成静态页面主方法 

  • * @param contextServletContext 

  • * @param data一个Map的数据结果集 

  • * @param templatePathftl模版路径 

  • * @param targetHtmlPath生成静态页面的路径 

  • */  

  • static final String templatePath = "/WEB-INF/freemaker/";   //模板存放的路径  

  • //指定ServletContext生成静态页面  

  • public static void crateHTML(ServletContext context,Map data,String htmlPath,String filename,String ftlname,String bianma){  

  • Configuration freemarkerCfg = new Configuration();  

  • // 加载模版  

  • freemarkerCfg.setServletContextForTemplateLoading(context, "/");  

  • freemarkerCfg.setEncoding(Locale.getDefault(), "UTf-8");  

  • try {  

  • // 指定模版路径  

  • ftlname = templatePath+ftlname;  

  • Template template = freemarkerCfg.getTemplate(ftlname,"UTf-8");  

  • template.setEncoding("UTf-8");  

  • // 静态页面路径  

  • htmlPath = context.getRealPath(htmlPath)+"/"+filename;;  

  • File htmlFile = new File(htmlPath);  

  • Writer out = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(htmlFile), bianma));  

  • // 处理模版  

  • template.process(data, out);  

  • out.flush();  

  • out.close();  

  • } catch (Exception e) {  

  • e.printStackTrace();  

  • }  

  • }  

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式