g530140303 2011-03-03 12:55
浏览 390
已采纳

动态的jsp页面如何生成shtml静态页面???

我想把动态的jsp页面生成为静态的shtml页面,这样用代码如何做到?最好有简单的例子或者代码提供就最好了。。。。。

  • 写回答

2条回答 默认 最新

  • iteye_8614 2011-03-04 09:32
    关注

    我写了一个,调试好久,出现中文乱码,不好解决,生成有太多缺点
    [code="java"]
    package cn.com;

    import java.io.BufferedReader;
    import java.io.File;
    import java.io.IOException;
    import java.io.InputStream;
    import java.io.InputStreamReader;
    import java.io.RandomAccessFile;
    import java.net.HttpURLConnection;
    import java.net.URL;

    public class Test {

    public static void main(String[] args) throws Exception {
        URL url= new URL("//http://127.0.0.1:8080/test/index.jsp");  //你必须启动自己的服务器,如tomcat 
        HttpURLConnection connection =   
            (HttpURLConnection) url.openConnection();   
        connection.setRequestProperty("Accept-Language" , "zh-cn");   
        connection.setRequestProperty("Accept-Charset" , "iso-8859-1,*,utf-8");   
        String filename = url.getFile();
        if(!filename.equals("")){
        filename = filename.replace("/", "").substring(0,filename.replace("/", "").indexOf("."));
        }else{
        filename="index";   
        }
    
        File file = new File("/html/"+filename+".html"); //存放在工作间本地磁盘根目录如:F://html/index.html
        if(file.exists()){    
            file.delete();    
        }else{   
            try {   
                file.createNewFile();   
          } catch (IOException e) {   
              e.printStackTrace(); 
          }   
        }   
    
        InputStream is = connection.getInputStream();   
        BufferedReader br = new BufferedReader(new InputStreamReader(is)); 
        RandomAccessFile ra = new RandomAccessFile(file, "rw"); 
    
        System.setProperty("sun.jnu.encoding", "utf-8");   //设置属性文件     
        System.setProperty("file encoding", "utf-8");      
    
        String strLine = null;   
        while((strLine = br.readLine()) != null){   
           ra.writeUTF(new String(strLine.getBytes("utf-8"),"gbk")+"\t\n");
        }  
        ra.close();
        br.close();   
        connection.disconnect();   
        System.out.println("静态页面生成成功!");
    }
    

    }
    [/code]

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥30 这是哪个作者做的宝宝起名网站
  • ¥60 版本过低apk如何修改可以兼容新的安卓系统
  • ¥25 由IPR导致的DRIVER_POWER_STATE_FAILURE蓝屏
  • ¥50 有数据,怎么建立模型求影响全要素生产率的因素
  • ¥50 有数据,怎么用matlab求全要素生产率
  • ¥15 TI的insta-spin例程
  • ¥15 完成下列问题完成下列问题
  • ¥15 C#算法问题, 不知道怎么处理这个数据的转换
  • ¥15 YoloV5 第三方库的版本对照问题
  • ¥15 请完成下列相关问题!