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

J2EE总结(二)——与servlet从相识到相知

时间:2015-06-09 09:51:11      阅读:95      评论:0      收藏:0      [点我收藏+]

标签:

话说这J2EE视频看的本身每天活蹦乱跳的我是天天都像得了重病似的,怎么也犯不过劲儿来。里面接触了大量关于Java的专业词汇,如JNDI,ANT,servlet,Java Bean等等。让人一时难以消化。

但在这里,还是强烈建议大家,无论如何要本着不抛弃,不放弃的精神坚持下去。看到后面也许因为你的不甘心,或者老天同情你的遭遇,忽然你就开窍儿了呢。其实慢慢的听的多了,也就跟原来的知识逐渐的联系上了,这样也就没有原来那样费劲儿了。

一、与servlet相识

1、一个类

首先不能被它陌生的名字吓到,它其实就是一个Java类。如果只说它是一个Java类,那么跟平时学到的如C#中的类就一样了,没什么区别,所以它就不陌生了。

2、功能

接收客户的请求

响应客户端

3、联想

根据servlet的功能,我们能联想到些什么呢?

     其实我们很早就开始接触servlet了,之前我们学习牛腩的时候,用到过handler,一般处理程序,它的功能和它类似,当时是为了解决ajax异步操作。

     其次,在学习ajax时,利用Java语言编写服务端时,就已经用到了servlet这个类,在这个类里,我们对从客户端发来的请求进行处理或者说将请求传递给服务器,同时,将服务器给出的处理回应给客户端。


这样想来,其实它并不陌生啊。


二、与servlet相知

认识了servlet后,我们需要再了解在servlet类中是通过哪些方法来处理客户端请求并进行回应的。

1、类

继承自HttpServlet,存在于服务端

2、生命周期

在了解servlet生命周期前,我们必须清楚的知道,servlet类存在于服务器端。而一切关于servlet的创建,使用和销毁其实幕后操作的黑手都是server。

server创建一个servlet对象——利用init方法进行初始化——客户端发出请求——server创建一个请求(request)和响应(response)对象——激活servlet中的service方法——service方法进行处理获取资源后回应客户端

以上是关于servlet在执行时一个大致流程。

3、方法

1、service()在客户请求时,server会通过service方法来进行处理和响应,在调用service方法时,会传入两个参数,一个是HttpServletRequest来接收客户的请求,另一个是HttpServletResponse来将服务器对客户的响应信息传递给客户端。

2、在客户端请求时,有两种方式get和post请求,为了区分这两种请求,把service方法分为处理两种不同请求的doGet()和doPost(),同时两个参数都不可少!

service方法示例:

Import javax.servlet.*;
Import javax.servlet.http.*;
Import java.io.*;

Public class MyServlet extends HttpServlet{
	Public void service(HttpServletRequest req,HttpServletResponse res) throws ServletException,IOException{
		//process request,generate response
	}
}

4、servletContext

对此,与servletConfig相结合理解的并不是特别清楚,只是了解到servletContext用来在servlet之间进行通信,它存储着公共变量和静态变量。任何servlet和JSP都可以访问到它。

通过getServletContext来获取,同时可以通过setAttribute()来设置公共变量,同时还可以通过removeAttribute来移除变量。

ServletContext,是一个全局的储存信息的空间,所以,为了节省空间,提高效率,ServletContext中,要放必须的、重要的、所有用户需要共享的线程又是安全的一些信息。

三、小结

本文主要从servlet的功能和其中的方法来进行介绍,但是servlet中包含的知识远不止于此,如:servlet过滤器,之前总结过在MVC中的过滤器,servlet中的过滤器与其原理也应该万变不离其宗。剩下的就靠我们自己在实践中去慢慢探索了!




J2EE总结(二)——与servlet从相识到相知

标签:

原文地址:http://blog.csdn.net/wangyy130/article/details/46417003

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