码迷,mamicode.com
首页 > 其他好文 > 详细

servlet小知识点(1)

时间:2015-04-18 08:47:08      阅读:101      评论:0      收藏:0      [点我收藏+]

标签:servlet

为什么要学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();

技术分享


2.web.xml配置:

(1) <servlet>

<servlet-name></servlet-name>

<servlet-class></servlet-class>

</servlet>

(2)  <servlet-mapping>

<servlet-mapping>

技术分享


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

技术分享



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

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

技术分享



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

技术分享



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

技术分享


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

 

 

销毁:关闭容器-destroy

技术分享

servlet小知识点(1)

标签:servlet

原文地址:http://blog.csdn.net/u012944224/article/details/45104369

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!