站内搜索: 请输入搜索关键词

当前页面: 开发资料首页JSP 专题今天无事,做了一个Jsp或asp.Net的预编译工具...

今天无事,做了一个Jsp或asp.Net的预编译工具...

摘要: 今天无事,做了一个Jsp或asp.Net的预编译工具...




原理很简单.
虽然一些JSP的WebServer提供预编译的功能,不过也可以试着自己写一个.
里面主要用到了java的HttpURLConnection 和java.io.*;以下是Console的Code:

package sam.bobpig.com;
import java.io.*;
import java.net.*;
/**
*

Title: Asp.net 或 Jsp的Precompile程序


*

Description:


*

Copyright: Copyright (c) 2004


*

Company:重庆飞时数码公司


* @author 宋光义
* @version 1.0
*/

public class Precomplie {
public static FileFilter fileFilter=new PrecompileFileFilter();
public URL rootURL;

public Precomplie(URL aRootURL) {
rootURL = aRootURL;
}

//
public void precompileDirectory(File dir,String startDir)
{
File[] files=dir.listFiles(fileFilter);
for(int i=0;i {
if(files[i].isDirectory())
{
precompileDirectory(files[i],startDir+dir.getName());
}
else
{
precompileFile(files[i],startDir+dir.getName());
}
}
}

public void precompileFile(File file,String startDir)
{
try
{
URL precompileURL=new URL(rootURL,startDir+"/"+file.getName()+"?asp_pre=true");

//System.out.println(rootURL.toString());
System.out.println(precompileURL.toString());

HttpURLConnection conn=(HttpURLConnection) precompileURL.openConnection();
int responseCode=conn.getResponseCode();
System.out.println(rootURL+startDir+"/"+file.getName()+" has ok! ["+responseCode+"]");
}
catch(Exception exc)
{
System.out.println("Exception:"+exc.toString()+"for"+startDir+file.getName());

}
}


public static void main(String[] args) {
if(args.length<2)
{
System.out.print("Please supply a base URL and a base directory...");
System.exit(0);
}

try
{
String startURL=args[0];
File start=new File(args[1]);

Precomplie precomp=new Precomplie(new URL(startURL));

if(start.isDirectory())
{
precomp.precompileDirectory(start,"");
}
else
{
precomp.precompileFile(start,"");
}
}
catch(Exception exc)
{
exc.printStackTrace();
}

}
}

class PrecompileFileFilter implements FileFilter
{
public boolean accept(File f)
{
if(f.isDirectory()) return true;
if(f.getName().endsWith(".aspx")) return true;
return false;
}
}



↑返回目录
前一篇: 一个可以做测试用的免费JSP空间
后一篇: linux下安装jsp的web服务器 -- resin