相比jsp,servlet一般都需要在web.xml中配置才可以正常在web容器中运行。
jsp,以page为主,插入java语言进行运算。
servlet以运算为主,可以输出page内容。

解决方案 »

  1.   

    jsp是为了简化servlet输出html麻烦而设计的,差不多就是这样,在最后jsp还是要被翻译成servlet的,servlet有很多用处,不过大部分情况是处理用户请求然后转发请求,做控制用的!就像struts的设计就用servlet来做控制的!
      

  2.   

    给你打个MVC比方吧^_^jsp页面就是上访人(View层),servlet就像信访局(Control层),后台操作类就是市委各个局,Model层就是用于以上各方传递信息的文件。信访局会根据上访人请求的类型,将上访人的文件送到分管局,然后分管局处理完毕后把结果形成一份文件先交给信访局,信访局最后把文件返回给上访人。不知道楼主明白没有。
      

  3.   

    servlet就是一个java类,由于继承了HttpServlet,所以一些与容器交互的低层工作已经由父类完成
    我们要做的就是覆写一些重要的方法,比如init,destroy,doGet等等,以完成我们期望的工作,可以是页面输出,可以是与javaBean的交互
    然后要做的就是在web.xml进行一些配置,让Web容器可以获取到这个servlet,并且加载它,以后有客户请求此servlet就由它来处理请求
    JSP就是由servlet演变来的,容器会把JSP进行转换,成为.java的文件,然后编译,然后作为servlet的一种来加载并提供服务,所以JSP页初次的请求回应比servlet慢,servlet一般在web应用启动时就加载,更别提无需转换和编译过程
    所以,我的理解是,JSP的使用就是Servlet的应用,和楼主刚好相反^_^
      

  4.   

    谢谢楼上各位,我还没有完全明白!有点愚,不要笑我!
    我这里有个程序带有调用了许多对象都用到了service(request, response),这样的程序是Servlet程序吗?和Servlet是什么关系?
    public abstract class HTMLBasicComponent {
    ................省略了一些代码................
      protected void service(HttpServletRequest request,HttpServletResponse response) throws Exception {
        ..................................
        ...................................
        
        component.service(request, response);
        .......................
        model.service(request, response);
        
      }}
      

  5.   

    如果是servlet,那么它要实现Servlet,或者HttpServlet,或者GenericServlet等接口!
    这个类没有这些规定所以它不是servlet,但定义了request,response以及service这个方法,只能说明它也能处理请求,并不能说明它也是个servlet
      

  6.   

    自己可以定义request,response以及service这个方法?谢谢楼上,能否说的再详细些?
      

  7.   

    当然可以,你可以在另外一个类中定义service方法,也可以重载service方法,request,response这些参数可以作为你定义方法的引数!想想重载是怎么用的,servlet没有什么特殊的,和一般的类差不多!
      

  8.   

    request,response这些参数在实际的请求和响应过程中是以什么样的形式存在的?能否举个例子?
      

  9.   

    request,response就从JSP传过来.在JSP中相当于是隐含变量,可以直接引用..
      

  10.   

    1。当发送给客户的内容绝大部分是固定模板数据,仅有一小部分内容使用java代码动态产生时,最好用jsp,反之,用servlet
    2。jsp是servlet技术的扩展,jsp运行时要先翻译成servlet。
    3。用于servlet编程的类多数继承HttpServlet类;每个servlet的关键方法为service方法,并且在web的请求-应答机制中,通常要写doGet()或doPost()方法。
    4。用于jsp编程的类和接口位于javax.servlet.jsp和javax.servlet.jsp.tagext,从命名空间可以再次看出servlet和jsp之间的关系。