Java相关课程系列笔记之九Servlet学习笔记

合集下载

java servlet知识点总结

java servlet知识点总结

java servlet知识点总结一、Servlet 的生命周期1. Servlet 的生命周期包括初始化、服务和销毁三个阶段。

2. 初始化阶段:当Servlet 第一次被请求时,容器会调用其 init() 方法来进行初始化操作。

开发者可以在init() 方法中进行一些必要的初始化操作。

3. 服务阶段:当Servlet 接收到客户端请求时,容器会调用其 service() 方法来处理请求。

在service() 方法中,开发者可以根据请求进行相应的处理,并生成响应返回给客户端。

4. 销毁阶段:当Servlet 不再被需要时,容器会调用其 destroy() 方法来进行销毁操作。

在destroy() 方法中,开发者可以进行一些清理工作,释放资源等操作。

二、Servlet 的请求和响应1. 请求对象 HttpServletRequest:HttpServletRequest 对象封装了客户端的请求信息,包括请求方法、请求参数、请求头信息等。

开发者可以通过HttpServletRequest 对象获取客户端的请求信息,并进行相应的处理。

2. 响应对象 HttpServletResponse:HttpServletResponse 对象封装了生成响应的方法,包括设置响应状态码、设置响应头信息、向客户端输出数据等。

开发者可以通过HttpServletResponse 对象来生成相应的响应返回给客户端。

三、会话管理1. 会话管理指的是在客户端与服务器端之间建立会话,并保持会话状态。

在Servlet 中,可以通过会话管理来实现用户登录状态的保持、购物车的管理等功能。

2. 会话对象 HttpSession:HttpSession 对象代表着服务器端的会话,开发者可以通过HttpSession 对象来存储会话所需的数据,如用户信息、购物车内容等。

同时,开发者还可以通过HttpSession 对象来管理会话的生命周期、设置会话超时时间等。

Java相关课程系列笔记之九Servlet学习笔记

Java相关课程系列笔记之九Servlet学习笔记

Servlet学习笔记…Java相关课程系列笔记之九笔记内容说明Servlet(程祖红老师主讲,占笔记内容100%);目录一、 Servlet概述 (1)B/S架构(了解) (1)什么是Servlet (1)什么是Tomcat (2)如何写一个Servlet(不使用开发工具) (3)使用MyEclipse开发Servlet (4)Servlet是如何运行的 (5)常见错误及解决方式 (6)案例:根据请求次数显示结果和显示当前时间 (6)二、 HTTP协议 (6)什么是HTTP协议 (6)通讯的过程 (6)数据格式 (6)TCP/IP Monitor的使用 (7)get请求与post请求 (7)如何读取请求参数 (7)访问数据库(MySql) (7)案例:添加员工(访问MySql数据库) (7)异常:IllegalStateException (7)三、编码问题 (7)Java语言在内存当中默认使用的字符集 (7)编码 (7)解码 (7)Servlet如何输出中文 (7)如果表单有中文参数值,也需要注意编码问题 (7)案例:根据请求正确显示中文 (7)将中文数据插入到数据库 (7)四、重定向 (7)什么是重定向 (7)如何重定向 (7)注意两个问题 (7)两个特点 (7)重定向原理图:以案例为例 (7)五、 DAO (7)什么是DAO (7)如何写一个DAO (7)工厂类 (7)六、工厂设计模式 (7)什么是工厂 (7)使用工厂设计模式的好处 (7)如何使用工厂模式 (7)案例:为案例添加新功能,并使用DAO和工厂模式 (7)七、 Servlet容器处理细节 (8)Servlet容器如何处理请求资源路径以及匹配 (8)一个Servlet如何处理多种请求 (8)八、 Servlet的生命周期 (9)Servlet的生命周期的含义 (9)Servlet生命周期的四个阶段 (9)实例化 (9)初始化 (9)就绪 (9)销毁 (10)Servlet生命周期图 (10)Servlet生命周期相关的几个接口与类 (10)九、 JSP(简要介绍,详细内容见JSP笔记) (11)什么是JSP (11)为什么要使用JSP (11)JSP与Servlet的关系 (11)如何写一个JSP文件 (11)JSP是如何运行的 (11)指令 (12)案例:创建页面,将表示逻辑交给JSP处理 (12)十、请求转发 (13)什么是转发 (13)如何转发 (13)编程需要注意的两个问题 (13)转发原理图 (13)转发的特点 (13)转发和重定向的区别 (13)何时用重定向 (13)何时用转发 (13)案例:修改案例中step7中的 (13)十一、异常的处理 (15)用输出流out (15)用转发的方式 (15)让容器处理系统异常 (15)案例:将案例中的step3中的所有catch块修改 (15)十二、路径问题 (15)什么是相对路径 (15)什么是绝对路径 (15)如何写绝对路径 (15)如何防止硬编码 (15)案例:相对、绝对路径对比 (15)四种情况下,正确的绝对路径写法 (16)十三、状态管理 (17)什么是状态管理 (17)cookie (17)如何创建一个cookie (17)查询cookie (17)编码问题 (17)cookie的生存时间 (17)cookie的路径问题 (17)cookie的限制 (18)案例:写一个CookieUtil (18)session(会话) (18)如何创建一个session对象 (18)HttpSession接口中提供的常用方法 (18)session的超时 (18)用户禁止cookie以后,如何继续使用session (18)url重写 (18)session的优点 (18)session的缺点 (18)案例:session验证和访问次数 (18)案例:验证码 (18)案例:购物车 (19)十四、过滤器 (22)什么是过滤器 (22)如何写一个过滤器 (22)案例:敏感字过滤器 (22)过滤器的优先级 (23)初始化参数 (23)优点 (23)十五、监听器 (23)什么是监听器 (23)容器会产生两大类事件 (23)如何写一个监听器 (23)ServletContext(Servlet上下文) (23)如何获得Servlet上下文 (23)Servlet上下文的作用 (23)案例:统计在线人数 (23)十六、上传文件 (25)如何上传文件 (25)案例:上传文件 (25)十七、 Servlet线程安全问题 (27)为何Servlet会有线程安全问题 (27)如何处理线程安全问题 (27)十八、 Servlet小结 (28)Servlet基础 (28)Servlet核心 (28)数据库访问 (28)过滤器和监听器 (28)典型案例和扩展 (28)十九、其他注意事项 (29)连接数据库的工具 (29)知名网站 (29)C/S架构:Client/Server (29)B/S架构:Browser/Server (30)一、Servlet概述B/S架构(了解)1)什么是B/S架构客户端使用浏览器,服务端使用web浏览器,客户端跟服务器之间使用HTTP协议进行通讯。

Servlet学习笔记(一)

Servlet学习笔记(一)

Servlet学习笔记(一)1.一个Servlet程序就是一个实现了特殊接口的Java类,它由支持servlet(具有servlet引擎)的web服务器调用和启动运行。

一个Servlet程序负责处理它所对应的一个或一组url地址的访问请求,并接收客户端发出的访问请求信息和产生响应内容。

2.所有的servlet(自定义的)都必须实现servlet接口(javax.servlet.Servlet)。

由于Servlet接口中有很多方法不需要实现,因此可以继承GenericServlet类。

GenericServlet实现了servlet接口的基本特征和功能。

javax.servlet.http.HTTPServlet类继承了GenericServlet类,并在其基础上进行了一些对HTTP 协议的扩充。

3.客户端每次访问一个支持HTTP的Servlet程序时,Servlet引擎都将调用Servlet的service 方法来进行处理。

HTTPServletRequest用于封装HTTP请求,HTTPServletResponse用于封装HTTP响应。

HTTPServletResponse对象的getWrite()方法可以获得一个文本输出流对象。

其内容可以作为响应消息的内容。

4.Servlet的注册与运行:(1).Servlet程序必须通过Servlet引擎来启动运行,并且存储目录有特殊要求,通常需要存储在<Web应用程序>/WEB-INF/classes/目录中。

(2).Servlet程序必须在Web应用程序的web.xml文件中进行注册和映射其访问路径,才可以被servlet引擎加载和被外界访问。

(3).<servlet>元素用于注册一个servlet。

<servlet-name>用于设置注册名,<servlet-class>用于设置servlet的完整路径。

servlet方面的笔记

servlet方面的笔记

一、Servlet基础1、什么是servlet?2、servlet的优点?3、什么是servlet容器?4、怎么写一个servlet?二、Servlet核心1、核心的接口与类ServletGenericServletHttpServletServletRequest,ServletResponseHttpServletRequest,HttpServletResponseServletConfigServletContext2、HttpServletRequest,HttpServletResponse的常用方法request.getParameter();request.getParameterValues();request.getSession(); request.getSession(boolean);request.getRequestURI();request.setAttribute(), getAttribute(),removeAttribute(); request.getRequestDispatcher();request.setCharacterEncoding();request.getCookies();response.getWriter();response.setContentType();response.sendRedirect();response.encodeURL(), encodeRedirectURL();response.addCookie();3、表单处理(1)如何获得表单中数据(2)表单中,有中文,如何处理(3)表单的提交方式4、比较get,post提交方式链接、表单默认提交方式、地址栏直接输入:get方式对于method="post" 是post方式。

此外,还要知道两者之间的不同,查笔记。

5、重定向与转发(1)什么是重定向、重定向的特点(2)编程(3)什么是转发,转发的特点(4)转发的编程(5)比较二者之间的不同。

servlet知识点

servlet知识点

servlet知识点Servlet是Java中的一种技术,用于开发Web应用程序。

它是JavaEE规范中的一部分,提供了一种处理HTTP请求和响应的标准方式。

以下是一些Servlet的常见知识点:1. Servlet的生命周期:Servlet实例化、初始化、服务请求和销毁。

2. Servlet API:javax.servlet包中提供了一组类和接口,用于编写Servlet应用程序。

3. Servlet容器:包括Tomcat、WebLogic、WebSphere等,负责加载和管理Servlet实例以及处理HTTP请求和响应。

4. HttpServletRequest和HttpServletResponse:这两个类分别代表HTTP请求和响应。

HttpServletRequest提供了访问请求参数、头信息和请求体等的方法,HttpServletResponse则提供了向客户端发送响应的方法。

5. Servlet映射:Servlet容器通过Servlet映射来确定哪个Servlet处理哪个HTTP请求。

Servlet映射可以通过web.xml文件或注解来配置。

6. Servlet过滤器:过滤器用于在Servlet处理请求之前或响应之后执行一些操作,比如验证用户身份、日志记录等。

7. 会话管理:Servlet提供了会话管理的功能,可以用于跟踪用户的状态和数据。

常用的会话管理方式包括Cookie和Session。

8. 异步Servlet:异步Servlet允许Servlet容器在处理请求时不阻塞线程,从而提高服务器的并发性能。

9. Servlet安全性:Servlet应用程序需要考虑安全性,包括防止跨站点脚本攻击、SQL注入等攻击。

以上是一些常见的Servlet知识点,掌握这些知识可以帮助开发人员更好地理解和应用Servlet技术。

最新Servlet笔记资料

最新Servlet笔记资料

1 课程回顾Servlet编程1)Servlet生命周期(重点)构造方法:创建servlet对象。

默认情况下,第一次访问servlet对象时。

只调用1次。

init方法(有参):创建完servlet对象后调用。

只调用1次。

注意:会调用无参的init方法。

(开发者使用有参参的init方法)service方法:servlet提供服务的方法。

每次发出请求调用。

注意:request对象,response对象destroy方法:tomcat服务器停止或web应用重新部署,servlet对象销毁,destroy方法被调用。

2)ServletConfig对象获取servlet的初始化参数:getInitParameter("name ");键值getInitParameterNames();键名3)ServletContext对象得到web应用路径:context.getContextPath();request.getContextPath(); 等价于上面的代码得到web应用参数:context.getInitParameter("name");(值)context.getInitParameterNames();(名)域对象:context.setAttribute("name",Object): 保存数据(set保存数据设置)context.getAttribute("name") 得到数据(得到数据)context.removeAttribue("name") 清除数据(清楚数据)转发context.getRequestDispatcher("路径").forward(request,response);request.getRequestDispacher("路径").forward(request,response); 等价于上面的代码注意:转发与重定向的区别得到web应用中的资源文件context.getRealPath("路径")context.getResourceAsStream("路径");(该部分很重要,容易出错,风险很大)/**. 代表java命令运行目录。

servlet笔记

servlet笔记

MyEclipse 和 Eclipse中Servlet的区别: Eclipse中 doget() dopost() 默认的构造器 4.Servlet中实用的几个对象:五大神器与jsp的九大内置对象没有区别 httpservletRequest :是由Tomcat给实例化的(ps:页面上的request 也是由Tomcat实例化的) HttpservletRequest和jsp页面上的request是 一样的 httpserveltResponse:HttpservletResponse和jsp页面上的 response是一样的 httpsession : httpsession = session ,不同在于 session是内置 对象,可以直接使用 而 httpsession 的获得方式为:HttpSession session=request.getsession(); 因为pagecontext的生命周期只存在于jsp页面中,所以 pagecontext对象是jsp独有的 servletContext: servletContext = application 只是在servlet中 叫法不一样 Cookie:就是我们本地的一个文件,用来记录我们浏览器的一些信息 将我们的信息写入到cookie中去 request.setCharacterEncoding("UTF-8"); response.setCharacterEncoding("UTF-8"); String login=request.getParameter("login"); System.out.println(login); String username=request.getParameter("username"); String password=request.getParameter("password"); System.out.println(username); System.out.println(password); if(login.equals("login")){ Cookie cookie=new Cookie("username",username); Cookie cookie2=new Cookie("password",password); System.out.println(cookie.getValue()); System.out.println(cookie2.getValue()); cookie.setMaxAge(60*60*24*14); cookie2.setMaxAge(60*60*24*14); response.addCookie(cookie); response.addCookie(cookie2);

Servlet笔记

Servlet笔记

Servlet笔记相关知识点:补充⽹络协议:这些内容⾃Servlet中是可以被操作的;当然在HTML之中也是可以设置的(head)。

在搞验证码的时候,要刷新验证码的时候,需要访问服务器的Servlet,但是我们知道访问是根据HTTP协议的,⽽这种⽅式去请求服务器前,会检查本地有没有这个请求的响应,如果有就从缓存中读取上次的响应的内容,如果这样更新验证码的时候每次都从缓存中取值了,所以⼀般在刷新请求的时候后⾯添加⼀些随机参数,避免重复请求⽽导致从缓存中取到上次的值。

⼀、Servlet概述:1、http的报头很有⽤,servlet接受到被http协议修饰过的请求,请求和http相关的信息都可以被servlet拿到处理,当然也可以对相应中的内容和http处理。

2、servlet可以不要忘了,init⽅法执⾏前,也就是在服务器启动时候,浏览器未访问前预处理些东西。

3、对servlet来说,记住⼀句话:从客户端发出的请求(http+请求),可以被servlet接受和响应,同时请求信息通常是可以在⼀个共享容器(ServletContext)内存储和取出。

4、Servlet接⼝->GenericServlet⼦类->HttpServlet孙⼦类5、Servlet是⼀个在服务器端运⾏的JAVA类,其实是服务器通过反射得到的类,因为利⽤反射才能得到类,所以必须给出类名(在web.xml中配置,服务器在通过解析XML⽂件得到类名,在反射出类,调⽤其⽅法);客户端发出请求,是以http协议发出,因此服务器必须能够解析http和封装的信息,为了更好的⽅便信息的传递,服务器按照servlet协议实现⼀系列的“⼩功能”,ServletContext/包括JSP的内置对象;利⽤这些“⼩功能”,不同的功能处理不同内容,例如:response负责封装详响应内容(包括http相关),客户端传递过来的信息被request封装处理(包括http相关),全局容器ServletContext,代表当前WEB应⽤,所有Servlet共享和request对象都是域对象可以封装数据;它可以获取WEB全局初始化参数、数据共享、访问资源⽂件:因为我们的程序是放在服务器上的,通常我们不关⼼⽂件等资源的路径,但是我们要操作⽂件,没有路径怎么处理,ServletContext就提供两种⽅法:Properties pro= new Properties();//这⾥使⽤getResourceAsStream来读取⽂件pro.load(getServletContext().getResourceAsStream("/WEB-INF/classes/db.properties"));//这⾥使⽤的传统输⼊流读取⽂件,⾸先还需要⽤到ServletContext对象获取真实⽂件路径才⾏pro.load(new FileInputStream(getServletContext().getRealPath("/WEB-INF/classes/db.properties")));这些封装的过程都是服务器⾃动按照servlet协议⾃动完成,最后我们只需要拿着这些封装好的内置对象使⽤即可;public class PubServlet extends HttpServlet {@Overridepublic void init() throws ServletException {System.out.println("↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓<ABO初始化:预处理开始>↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓");String servletName=getServletConfig().getServletName();System.out.println("ABO:---->servletName:【"+servletName+"】");Enumeration <String > enums=getServletConfig().getInitParameterNames();while(enums.hasMoreElements()){String param=enums.nextElement();String passvalue=getInitParameter(param);System.out.println("ABO:---->ParameterValues:【"+passvalue +"】");}getServletContext().setAttribute("num", 0);System.out.println("↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑<ABO初始化:预处理结束>↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑");}public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {response.setContentType("text/html;charset=UTF-8");PrintWriter out = response.getWriter();System.out.println("↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓<ServletContext⽰例开始>↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓");System.out.println("ServletContext:1.获取WEB全局初始化参数。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Servlet学习笔记Java相关课程系列笔记之九笔记内容说明Servlet(程祖红老师主讲,占笔记内容100%);目录一、Servlet概述 (1)1.1 B/S架构(了解) (1)1.2什么是Servlet (1)1.3什么是Tomcat (2)1.4如何写一个Servlet(不使用开发工具) (3)1.5使用MyEclipse开发Servlet (4)1.6 Servlet是如何运行的 (6)1.7常见错误及解决方式 (6)1.8案例:根据请求次数显示结果和显示当前时间 (6)二、HTTP协议 (8)2.1什么是HTTP协议 (8)2.2通讯的过程 (8)2.3数据格式 (8)2.4 TCP/IP Monitor的使用 (9)2.5 get请求与post请求 (9)2.6如何读取请求参数 (9)2.7访问数据库(MySql) (9)2.8案例:添加员工(访问MySql数据库) (10)2.9异常:IllegalStateException (11)三、编码问题 (12)3.1 Java语言在内存当中默认使用的字符集 (12)3.2编码 (12)3.3解码 (12)3.4 Servlet如何输出中文 (12)3.5如果表单有中文参数值,也需要注意编码问题 (12)3.6案例:根据请求正确显示中文 (12)3.7将中文数据插入到数据库 (13)四、重定向 (14)4.1什么是重定向 (14)4.2如何重定向 (14)4.3注意两个问题 (14)4.4两个特点 (14)4.5重定向原理图:以2.8案例为例 (14)五、DAO (15)5.1什么是DAO (15)5.2如何写一个DAO (15)5.3工厂类 (15)六、工厂设计模式 (16)6.1什么是工厂 (16)6.2使用工厂设计模式的好处 (16)6.3如何使用工厂模式 (16)6.4案例:为2.8案例添加新功能,并使用DAO和工厂模式 (16)1七、Servlet容器处理细节 (19)7.1 Servlet容器如何处理请求资源路径以及匹配 (19)7.2一个Servlet如何处理多种请求 (19)八、Servlet的生命周期 (20)8.1 Servlet的生命周期的含义 (20)8.2 Servlet生命周期的四个阶段 (20)8.3实例化 (20)8.4初始化 (20)8.5就绪 (20)8.6销毁 (21)8.7 Servlet生命周期图 (21)8.8 Servlet生命周期相关的几个接口与类 (21)九、JSP(简要介绍,详细内容见JSP笔记) (23)9.1什么是JSP (23)9.2为什么要使用JSP (23)9.3 JSP与Servlet的关系 (23)9.4如何写一个JSP文件 (23)9.5 JSP是如何运行的 (23)9.6指令 (24)9.7案例:创建emplist.jsp页面,将表示逻辑交给JSP处理 (24)十、请求转发 (26)10.1什么是转发 (26)10.2如何转发 (26)10.3编程需要注意的两个问题 (26)10.4转发原理图 (26)10.5转发的特点 (27)10.6转发和重定向的区别 (27)10.7何时用重定向 (27)10.8何时用转发 (27)10.9案例:修改6.4案例中step7中的ListEmpServlet.java (28)十一、异常的处理 (30)11.1用输出流out (30)11.2用转发的方式 (30)11.3让容器处理系统异常 (30)11.4案例:将10.9案例中的step3中的所有catch块修改 (30)十二、路径问题 (31)12.1什么是相对路径 (31)12.2什么是绝对路径 (31)12.3如何写绝对路径 (31)12.4如何防止硬编码 (31)12.5案例:相对、绝对路径对比 (31)12.6四种情况下,正确的绝对路径写法 (32)十三、状态管理 (33)13.1什么是状态管理 (33)213.3 cookie (33)13.4如何创建一个cookie (33)13.5查询cookie (33)13.6编码问题 (34)13.7 cookie的生存时间 (34)13.8 cookie的路径问题 (34)13.9 cookie的限制 (35)13.10案例:写一个CookieUtil (35)13.11 session(会话) (36)13.12如何创建一个session对象 (36)13.13 HttpSession接口中提供的常用方法 (36)13.14 session的超时 (37)13.15用户禁止cookie以后,如何继续使用session (37)13.16 url重写 (37)13.17 session的优点 (37)13.18 session的缺点 (38)13.19案例:session验证和访问次数 (38)13.20案例:验证码 (39)13.21案例:购物车 (41)十四、过滤器 (45)14.1什么是过滤器 (45)14.2如何写一个过滤器 (45)14.3案例:敏感字过滤器 (45)14.4过滤器的优先级 (46)14.5初始化参数 (47)14.6优点 (47)十五、监听器 (48)15.1什么是监听器 (48)15.2容器会产生两大类事件 (48)15.3如何写一个监听器 (48)15.4 ServletContext(Servlet上下文) (48)15.5如何获得Servlet上下文 (48)15.6 Servlet上下文的作用 (48)15.7案例:统计在线人数 (49)十六、上传文件 (51)16.1如何上传文件 (51)16.2案例:上传文件 (51)十七、Servlet线程安全问题 (53)17.1为何Servlet会有线程安全问题 (53)17.2如何处理线程安全问题 (53)十八、Servlet小结 (54)18.1 Servlet基础 (54)18.2 Servlet核心 (54)318.4数据库访问 (54)18.5过滤器和监听器 (54)18.6典型案例和扩展 (54)十九、其他注意事项 (55)19.1连接数据库的工具 (55)19.2知名网站 (55)19.3 C/S架构:Client/Server (55)19.4 B/S架构:Browser/Server (56)4一、Servlet概述1.1 B/S架构(了解)1)什么是B/S架构客户端使用浏览器,服务端使用web浏览器,客户端跟服务器之间使用HTTP协议进行通讯。

2)优点①客户端不需要单独安装(因为使用浏览器);C/S架构比较麻烦的是需要单独安装每个客户端,并且一旦客户端版本发生改变,就需要再次安装。

②开发相对简单;C/S架构需要我们分别在,客户端和服务器端编写相应的通信处理模块和自定义协议,而B/S架构使用标准的HTTP协议(即不再需要自定义协议),而且浏览器与Web服务器已经包含了相应的通信模块了。

1.2什么是ServletSun公司制订的一种用来扩展Web服务器功能的组件规范。

1)扩展web服务器功能早期(2000年左右)的Web服务器:apache的web server、微软的iis。

只能够处理静态资源(即需要事先将html文件写好),不能够处理动态资源的请求(即需要依据请求参数然后进行计算,生成相应的页面)。

为了让这些web服务器能够处理动态资源的请求,需要扩展他们的功能。

早期使用的是CGI技术(Common Gateway Interface通用网关接口),可以使用很多语言编写,如perl,C/C++等来开发CGI程序。

但是CGI程序有几个问题,比如开发比较复杂(因为需要程序员自己去分析请求参数)、性能不佳(因为当Web服务器收到请求之后,会启动一个CGI进程来处理请求)、CGI程序依赖平台(可移植性不好)。

现在,可以使用Servlet来扩展。

当浏览器将请求发送给Web服务器(比如:apcahe的web server),Web服务器会向Servlet容器发送请求,Servlet容器负责解析请求数据包。

当然,也包括网络通讯相关的一些处理,然后将解析之后的数据交给Servlet来处理(Servlet只需要关注具体的业务处理,不用关心网络通讯相关的问题)。

12◆ 注意事项:可以不使用服务器,而直接向Servlet 容器发送请求,因为Servlet 容器里面也有个通信模块,所以也可直接把Servlet 容器当作简单的Web 服务器来使用。

接下来,可以打开浏览器,输入 http://localhost:8080,验证是否配置成功。

②Windows系统下安装和配置的步骤step1:解压到某个盘下3step2:执行编译操作:javac -d . HelloWorldServlet.java但是会报错,找不到某些类!其中-d . 代表把编译后的文件放在当前文件夹下。

把Tomcat安装目录中common中lib中的servlet-api.jar和刚编写类放一起(是编译时需要用的jar)。

再次编译:javac -cp servlet-api.jar -d . HelloWorldServlet.java,其中-cp servlet-api.jar表示告诉Java编译器去哪里找需要的class文件(到servlet-api.jar的jar包中找)。

的webapps目录下)。

注意事项:也可以将step3创建的文件夹使用jar命令进行压缩,生成.war为后缀的文件,然后拷贝。

1.5使用MyEclipse开发Servletstep1:配置MyEclipse,使得MyEclipse能够管理Tomcat。

41)点击工具栏上的“Run/Stop/Restart MyEclipse Servers”图标旁边的下拉箭头,选择“Configure Server”。

2)在弹出的对话框“Preferences”中展开“MyEclipse”--“Servers”--“Tomcat”--“Tomcat5.X”◆注意事项:选择你目前电脑上Tomcat的版本,此处以Tomcat5为例。

3)将Tomat server选项置为“Enable”(默认为“Disable”)。

4)点击“Tomcat home directory”之后的“Browse”按钮,选择Tomcat主目录,确定,然后“Tomcat base directory”和“Tomcat temp directory”自动生成,点击“OK”。

◆注意事项:两项可改可不改的:Tomcat下的JDK--“Tomcat JDK name”是自己已安装的JDK(Tomcat也是java 写的也得依赖JDK)。

相关文档
最新文档