记得刚毕业的时候,上一家公司面试,一个问题很深刻。 servlet 能不能人为的new 一个对象?

解决方案 »

  1.   

    当时回答不可以!面试官说你回去试试,回来试了试果然可以。  
    现在想了想,servlet是由servlet容器管理,人为的new 是不是和客户端请求达到同一目的。那forword()(服务器端跳转)达到的目的。我也可以通过实例话一个对象,调用它的doGet(),doPost() ;
      

  2.   

    Servlet 的实现是一个 java 类,是可以 new 的,但是这样 new 出来的 servlet 没有任何意义和功能!
      

  3.   

    确实没什么意思,不过。
    那forword()(服务器端跳转)达到的目的。我也可以通过实例话一个对象,调用它的doGet(),doPost() 
      

  4.   

    是的,可以new。但是new出来也是没用的。它需要容器的支持。
      

  5.   

    应该和客户端请求,容器实例化的一样吧。其实web.xml 中通过url-pattern 找到 servlet-class 也是new.
      

  6.   

    他这个问题有点怪o..如果是我,我的回答可能 和你一样了。因为没有考虑是否能够创建对象而是认为servlet 的生命周期都是容器管理的。
    这样理解是完全ok的。。如果是因为这一点让你回去。我倒认为他的水平也不过如此。
      

  7.   

    可以的  但是这样完全 没有意义了Servlet的生命周期是交给WEB SERVER管理的
    它问的问题只是比较偏激罢了
    自己实例化同样可以达到一些特殊的效果
      

  8.   


    忘记打个广告:
    新群创立,群名为:Java 技術交流,群号为: 36115166
    本群交流JAVA各方面技术.为职业人提供一个交流的平台,同样为新手提供一个解决疑问平台.
    希望大家能够维护好群内的学习氛围