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

Servlet

时间:2016-07-14 15:03:11      阅读:99      评论:0      收藏:0      [点我收藏+]

标签:

Servlet(Server Applet),全称Java Servlet,未有中文译文。是用Java编写的服务器端程序。其主要功能在于交互式地浏览和修改数据,生成动态Web内容。狭义的Servlet是指Java语言实现的一个接口,广义的Servlet是指任何实现了这个Servlet接口的类,一般情况下,人们将Servlet理解为后者。

Servlet运行于支持Java的应用服务器中。从原理上讲,Servlet可以响应任何类型的请求,但绝大多数情况下Servlet只用来扩展基于HTTP协议的Web服务器。

Servlet:服务器端的脚本!

              模式一:

              now: jsp+javaBean+Dao(Data Access Object(维系数据库的CRUD))

                            UserinfoBean{

                                          private String uname;//set get//数据的载体

                            }

                            UserinfoDAO{

                                          public void save(Userinfo info){

                                                        //database crud

                                          }

                            }

jsp就是Servlet,而servlet不仅仅是jsp!

              Servlet<接口>

              GenericServlet<接口>:通讯的

              HttpServlet<类>:做web服务的!做b/s开发的!

 

jsp能做的,Servlet也能做,Servlet能做的,jsp不一定能做!

Serlvet书写网页过于繁琐,Servlet一般不参与到页面输出!

97B/S的概念!

              CGI:很多语法其实是C语言的语法!

              php:开发web项目!比较简单,夸平台!

               asp:VB <%=%>

              Jsp:Servlet(开发web页面非常麻烦) <%=%>

               :J2EE(JavaEE)

                            struts hibernate spring mybatis ...

               :.Net

                            NStruts NHibernate NSpring NMyBatis...

开发一个Servlet:也必须完全手写!

1:写java类成为HttpServlet的子类!

              public class FirstServlet extends HttpServlet {

              }

2:重写父类的相关方法!              

              public void doGet(HttpServletRequest request,HttpServletResponse response){

                            System.out.println("进入Servlet");

              }

3:在web.xml中对servlet进行描述!

  <servlet>

                <servlet-name>FirstServlet</servlet-name>

                <servlet-class>com.edu.servlet.FirstServlet</servlet-class>

  </servlet>

  <servlet-mapping>

                <servlet-name>FirstServlet</servlet-name>

                <url-pattern>/FirstServlet.do</url-pattern>

  </servlet-mapping>

Servlet生命周期(非常重要):

              Servlet只有一份实例,单实例,多线程的对象!

              1:构造函数:调用了一次!

              2:init:当前对象的初始化方法

                            只初始化一次!

              3:service:会调用n次,一个请求,调用一次!父类的service会根据你的请求方式来判断

                            到底调用那个(doGet,doPost,doPut,doDelete。。。)方法              

                            调用了n次次!每次请求都会调用

                            //只响应客户端的GET请求 不支持Post请求

                            public void doGet(HttpServletRequest request,HttpServletResponse response){

                                          System.out.println("进入Servlet");

                            }

                            调用了n次次!每次请求都会调用

                            //只响应客户端的Post请求 不支持Get请求

                            public void doPost(HttpServletRequest request,HttpServletResponse response){

                                          System.out.println("进入Servlet");

                            }

              4:destory:

                            也只执行一次,什么时候销毁!

                            由容器决定,什么时候销毁!

 

 技术分享技术分享

易度(深圳)传媒有限公司

看世界 新角度

微信:EDOYOJOY

微博:http://weibo.com/EDOYOJOY

 

Servlet

标签:

原文地址:http://www.cnblogs.com/EDOYOJOY/p/5670395.html

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