页面静态化

在网站应用中,为了提高页面的访问速度,经常需要将动态页面静态化以提高页面的访问速度,因为动态页面一般要从数据库检索信息,频繁访问动态页面会大大提高数据库的负载,并且访问速度也比静态页面慢.本文通过在程序里建立一个http请求,将返回的输出流存储为html文件的方式来生成静态页面.CMS类的应用中,信息发布完可直接调用这段代码,给定一个动态连接地址如http://localhost:8080/cms/info.jsp?infoid=001,生成一个静态页面。

 

/**
     * 将信息转化为静态html
     *
     * @param sSourceUrl
     *            动态信息访问URL
     * @param sDestDir
     *            存储为静态文件的目录
     * @param sHtmlFile
     *            生成的静态文件名,可以按信息的唯一ID+.html命名
     * @throws IOException
     */
    public static void convert2Html(String sSourceUrl, String sDestDir,
           String sHtmlFile) throws IOException {
       int HttpResult;
       URL url = new URL(sSourceUrl);
       URLConnection urlconn = url.openConnection();
       urlconn.connect();
       HttpURLConnection httpconn = (HttpURLConnection) urlconn;
       HttpResult = httpconn.getResponseCode();
       if (HttpResult != HttpURLConnection.HTTP_OK) {
 
       } else {
 
           InputStreamReader isr = new InputStreamReader(httpconn
                  .getInputStream());
           BufferedReader in = new BufferedReader(isr);
 
           String inputLine;
           if (!sDestDir.endsWith("/"))
              sDestDir += "/";
           FileOutputStream fout = new FileOutputStream(sDestDir + sHtmlFile);
           while ((inputLine = in.readLine()) != null) {
              fout.write(inputLine.getBytes());
 
           }
           in.close();
           fout.close();
 
       }
 
    }
 

你可能感兴趣的:(html,cms,jsp)