天天看点

servlet小知识点(1)

为什么要学servlet呢?

用jsp完全可以开发一些网站,但是仅仅只是小型的网站,因为jsp页面的太过冗杂,几乎不好好维护,因此,才要学servlet,将显示和逻辑分开,因此我们需要另一种技术servlet。

有web1.0(页面内还有一个java代码,用来控制输出)和web2,0(完全分开,借助js来实现控制)。

Servlet是一个java程序,是在服务器上的以处理客户端请求并作出响应的程序。

Sun公司仿照jdbc(访问数据库的接口)的一样做了一套j2ee的标准,对于服务器商,必须符合这些标准,对于开发程序员,也要针对这个标准开发。因此这样就可以相互合作。

因此servlet也要遵守这套标准才能跑在j2ee上。

Servlet接口

GenericServlet:通用的Servlet

Httpservlet:支持http协议

Commonservlet

Servlet是单实例的,即是多个访问也只有一个Servlet(因此要避免写全局变量)

Strus则是多线程的,一个请求new一个action,因此效率更高一些。

Servlet生命周期:初始化->调用->销毁

Servlet配置

(Servlet必须放在包里,不能放在默认路径下)

1.继承httpservlet,必须重写一个方法,例如doGet()或者doPost();

servlet小知识点(1)

2.web.xml配置:

(1) <servlet>

<servlet-name></servlet-name>

<servlet-class></servlet-class>

</servlet>

(2)  <servlet-mapping>

<servlet-mapping>

servlet小知识点(1)

(注意在配置的时候,Servlet-name的名字要一致。Servle-class必须要有包名)。

servlet小知识点(1)

一个常规的Servlet生命周期:(同样以小程序的方式来证明)

第一次:先构造-》init()-》service-》doGet()/doPost()

servlet小知识点(1)

配置web.xml 在网页说如访问,后台打印出调用顺序(第一次)

servlet小知识点(1)

第二次: service-》doGet()/doPost()()

servlet小知识点(1)

因此得出Servlet是单线程的,线程不安全的,避免使用全局变量。

销毁:关闭容器-》destroy

servlet小知识点(1)

继续阅读