import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
import java.util.zip.*;public class GzipUtilities
{
public static boolean isGzipsupported(HttpServletRequest request) {
String encodings = request.getHeader("Accept-Encoding");
return((encodings != null) && (encodings.indexOf("gzip") != -1));
}
public static boolean isGzipDisabled (HttpServletRequest request) {
String flag = request.getParameter("disableGzip");
return((flag != null) && (!flag.equalsIgnoreCase("false")));
} public static PrintWriter getGzipWriter
(HttpServletResponse response) throws IOException {
return(new PrintWriter(new GZIPOutputStream(response.getOutputStream())));
    }
}这个GzipUtilities.java文件可以编译
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;public class LongServlet extends HttpServlet
{
public void doGet(HttpServletRequest request,HttpServletResponse response)
throws ServletException,IOException {
response.setContentType("text/html");
PrintWriter out;
if (GzipUtilities.isGzipsupported(request) && (!GzipUtilities.isGzipDisabled(request))) 
{
out = GzipUtilities.getGzipWriter(response);
response.setHeader("Content-Encoding","gzip");
    } else {
out = response.getWriter();
}
out.println
 ("<HTML>\n" +
  "<HEAD><TITLE>" + "asadzd" + "</TITLE></HEAD>\n" +
  "<BODY BGCOLOR=\"#FDF5E6\">\n" +
  "<H1 ALIGN=\"CENTER\">" + "GZIP Data" + "</H1>\n");
String line = "Blah,blah,blah,blah,blah," +
"Yadda,Yadda,yadda,yadda.";
for(int i = 0 ;i<10000;i++) {
out.println(line);
}
 out.println("</BODY></HTML>");
 out.close();
}
}
这个LongServlet.java文件无法编译了.无法使用GzipUtilities.java的方法,我问我同学,说是要导包,导包后就可以识别GzipUtilities.java的方法,不知道如何导包,我只知道我脑袋急的满头是包.
兄弟请帮帮忙,帮我讲解一下如何正常的编译LongServlet.Java文件,顺便说下导包
我用的是EditPlus

解决方案 »

  1.   

    建议有个IDE来编辑和编译JAVA代码,这些问题点点MOUSE就可解决。eclipse是个不错的选择
      

  2.   

    我主要是想搞清楚这个问题,别人能用EditPlus来编译这两个文件,我就应该搞清楚,为什么上面的那两个文件不能编译的原因。
      

  3.   

    有网友(yxxiao0929 ) 说:
    我是用IDEA编译的,我把你的两个文件都放在了同一个package下。编译的过程中,一点问题都没有!
    IDEA是什么呀?
    如何放在一个package下呀?
    我是菜鸟,请大家耐心讲解一下。小弟不胜感激
      

  4.   

    如果要用文本编辑器开发,就用ant或者maven管里项目
      

  5.   

    从sun的网站下一个javax.servlet.jar 的包
    放到你的 jdk的lib目录下,设环境变量让它指向你的这个包
    然后直接编译你的LongServlet.java 就可以了
      

  6.   

    另外你这个已经把包导好了,不用导了,
    只是你的环境变量找不到你的java.servlet.jar这个文件,
    所以会报了好多找不到包的错误,
    下到这个文件 设好环境变量就好了
      

  7.   

    你这是coreservlets第5章的题目。
    如果你在C:\Java\coreservlets\ch05\WEB-INF\classes\coreservlets 里面放的这两个文件,只要在两个文件最上方写上
    package coreservlets;
    就可以了。
    如果仍然不能compile, 肯定你的 CLASSPATH 没有设置正确。
    在你的CLASSPATH里面一定要加上 C:\Java\coreservlets 路径,也就是你的开发路径。
    关于你的设置检查,请查看第2章。
    呵呵,我上个星期刚刚看完这一题。
      

  8.   

    我看的是美河的JSP视频,谢谢大家,我回家试试
      

  9.   

    有网友说在J2EE的包里有,Tomcat的里好像也有一个servlet.jar的。
    我怎么找不到呀 
      

  10.   

    javac -classpath "C:\Program Files\Apache Software Foundation\Tomcat 5.5\common\lib\servlet-api.jar"把 servlet-api.jar 放到你系统的 classpath 中就可以.
      

  11.   

    全位大哥,小弟已经解决了此问题了.我用网友okguilin作法,将那个文件放在一个文件中,然后在环境变量中设置classpath=X:\..\web-inf\classes,然后再一编译就OK了,两个文件全能编译