学习目标:

  1.掌握B/S结构与C/S结构的区别

  2.掌握Http中GET和POST的差别

  3.掌握什么是静态网页、动态网页

  4.如何编写Servlet类、掌握部署Servlet、运行Servlet程序

  在开发过程中,我们常遇到的程序分为以下三种:a.单机程序(如:记事本)b.基于客户端Client和服务器端Server结构的程序(C/S结构:QQ聊天软件等) c.基于浏览器Browser和服务器Server结构的程序(B/S结构:淘宝网站等);

  B/S结构 pk C/S结构

  C/S结构的程序是客户端与服务器模型,一般用在局域网中实现局域网内资源共享;它的特点:使用时需要安装客户端软件,访问资源时速度比较快,但更新软件困难,更新时必须重新安装客户端,这种结构的程序使用起来比较安全(相对B/S结构程序)。

  B/S结构的程序是浏览器与服务器模型,一般用在Internat中实现Internat中资源共享;它的特点:使用时不需要安装客户端软件(浏览器,系统自带),访问资源时速度比较慢,但更新比较容易,更新时只需更新服务器端内容即可,这种结构的程序使用起来不太安全(相对C/S结构程序)。

  B/S结构的程序的执行过程:

    1.使用浏览器(IE、FireFox、Chrome等)在地址栏中输入URL(Uniform Resource Locator)即网址;

    2.通过HTTP(HyperText Transfer Protocol)协议向Web服务器发送GET请求,请求需要的资源文件;

    3.如果请求的资源文件存在则返回浏览器能够识别的HTML(HyperText Markup Language)内容。

  URL统一资源定位符(http://192.168.1.168:8080/learnit/index.html)组成:

    1.Http:// 超文本传输协议 或其它协议(FTP、SMTP等)

    2.主机地址和端口号 192.168.1.168:8080 我们常看到的域名如www.cnblogs.com会通过DNS转换成对应的主机地址和端口号

    3.资源文件learnit/index.html 即:主机上的文件

  HTTP协议是一个基于请求(Request)和响应(Response)的协议,同时它是无状态(Stateless)的协议。

  搭建编写Servlet程序环境:

    1.下载JDK7.0并安装

    2.下载Tomcat7.0并安装(这里我们使用Tomcat做为Web服务器),安装之前必须有JRE(Java Runtime Environment)Java运行环境

  Servlet简介

    Servlet就是一个Java类,它是通过Web容器(Container)载入、初始化,受到容器的管理才得以成为一个Servlet;容器就是用Java编写的一个应用程   序,负责与服务器沟通管理Servlet所需要的各种对象与资源、Servlet生命周期,如果没有了容器,Servlet就只是一个Java程序语言所编写的类。

  Servlet生命周期:

    a.实例化 (它是由Servlet容器创建的,而不是直接通过new关键字创建)

    b.初始化 调用init()方法 (此方法只被执行一次)

    c.服务 调用service()方法 (每次请求、响应都会执行service方法)

    d.销毁 调用destroy()方法 (由Servlet容器销毁)

  编写第一个Servlet程序:    

 package org.learningit.servlet;import java.io.IOException;import java.io.PrintWriter;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;public class HelloServlet extends HttpServlet{public void doGet(HttpServletRequest request,HttpServletResponse response) throws ServletException,IOException{//设置内容类型response.setContentType("text/html;charset=UTF-8");PrintWriter out = response.getWriter();out.println("<html>");out.println("<head><title>First Servlet</title></head>");out.println("<body>");out.println("<h3>First Servlet  ... doGet()</h3>");out.println("</body>");out.close();          }public void doPost(HttpServletRequest request,HttpServletResponse response) throws ServletException,IOException{doGet(request,response);}}

  注:编写Servlet类时,必须指定包。

  编译HelloServlet.java文件:    

javac -classpath Servlet-api.jar -d . HelloServlet.java

  注:编译此文件时,将Tomcat/lib目录下的Servlet-api.jar和HelloServlet.java文件放在同一个目录下。

  编译此文件之后,将在该目录下生成:org/learningit/servlet/HelloServlet.class文件。

  部署Servlet程序步骤:

    1.在Tomcat服务器webapps目录中创建一个hello目录。

    2.在hello目录中创建WEB-INF目录

    3.在WEB-INF目录中创建classes目录、web.xml文件

  目录结构如下:

      webapps

        |-hello

          |-WEB-INF

            |-classes

            |-web.xml

   将生成的文件:org/learningit/servlet/HelloServlet.class文件放入到webapps/hello/WEB-INF/classes目录中

   4.将web.xml文件中的内容设置为:

 1 <web-app xmlns="http://java.sun.com/xml/ns/javaee" 2   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 3   xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 4                       http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" 5   version="3.0">  6     <servlet> 7         <servlet-name>HelloServlet</servlet-name> 8         <servlet-class>org.learningit.servlet.HelloServlet</servlet-class> 9     </servlet>    10     <servlet-mapping>11         <servlet-name>HelloServlet</servlet-name>12         <url-pattern>/servlet/hello</url-pattern>13     </servlet-mapping>14 </web-app>

   5.启动Tomcat服务器

    6.打开浏览器,在地址栏中输入:http://localhost:8080/hello/servlet/hello

经过以上步骤第一个Servlet程序执行成功。

转载于:https://www.cnblogs.com/learnit/archive/2011/09/23/2186124.html

JavaEE平台学习之 01开发第一个Servlet程序相关推荐

  1. 关于Eclipse平台的使用和开发第一个SWT程序

    IBM把投入巨资开发的Eclipse作为一个开源项目捐献给了开源组织Eclipse.org Eclipse出色而有独创的平台特性,现在仍由IBM子公司OTI(主要从事Eclipse开发的人)继续领导着 ...

  2. JavaEE——Spring学习笔记01【Ioc开发的模式】

    JavaEE--Spring学习笔记01[Ioc开发的模式] JavaEE--Spring学习笔记02[Spring和Mybatis的整合] JavaEE--Spring学习笔记03[AOP开发] J ...

  3. 怎么编写java_程序员学编程第一步:手把手教你开发第一个Java程序

    想必大家已经对Java语言有了初步的认识,对Java的发展历程.运行原理和环境安装有了一定的了解.在本文中,我们继续来学习Java的详细语法与开发规范,教大家用Java编写出简单的程序. 2.1 开发 ...

  4. [Ruby on Rails系列]3、初试Rails:使用Rails开发第一个Web程序

    本系列前两部分已经介绍了如何配置Ruby on Rails开发环境,现在终于进入正题啦! Part1.开发前的准备 本次的主要任务是开发第一个Rails程序.需要特别指出的是,本次我选用了一个(Paa ...

  5. 《教我兄弟学Android逆向01 编写第一个Android程序》

    前言 之所以准备写这一系列逆向的教程是因为有一些同学私信我说自己想学习Android逆向但是不知道怎么去学习 包括自己身边的一些计算机专业的同学 在大学里面老师讲的那些东西要么是自己不感兴趣 要么是自 ...

  6. 【赵强老师】开发第一个Java程序

    先看视频. [赵强老师]开发第一个Java程序 Java 是一项用于开发应用程序的技术,可以让 Web 变得更有意思和更实用.Java 与 javascript 并不相同,后者是一种用于创建 Web ...

  7. 【JavaEE】 IntelliJ IDEA 2022.2最新版Tomcat导入依赖详细教程全解及创建第一个Servlet程序

    目录 一.软件资源 二.放置settings.xml文件 三.创建项目 四.引入依赖 ​五.创建目录 六.编写代码 写在前面:☞What is Servlet? Servlet其实是一种实现动态页面的 ...

  8. 基于百度AI的内容审核平台+Jsoup网络爬虫开发的一个自动审核小说程序(以纵横中文网为例)

    这个程序是我的毕业设计所设计的一个程序,由于时间原因,可能有些地方或者细节没有考虑清楚,请各位多多包涵 最后的源代码工程我已经上传,有需要的可以自取,希望可以帮助到大家 程序简介 此程序使用Java语 ...

  9. C++桌面应用开发(Qt学习)--Qt简介及第一个Qt程序

    Qt简介 历史: 1991 奇趣科技 优点:跨平台:接口简单,易上手:简化了内存管理操作 成功案例:Linux桌面环境:WPS:谷歌地图等 创建一个Qt程序 点击创建项目后,选择项目路径以及给项目起名 ...

  10. struts2 快速入门(01)第一个 struts2 程序

    第一个 struts2 程序 一.struts2 概述 Struts2 是 Apache 软件组织推出的一个基于 MVC 模式的轻量级 Web 框架,以理解为 WebWork 的更新产品 struts ...

最新文章

  1. ssm框架requestmapping找不到_框架学习,就是介么简单
  2. iOS中判断程序是不是第一次运行(新手引导界面用)
  3. Algorithm之MC:Monte Carlo method蒙特·卡罗方法的简介、实现、应用
  4. EditText 自动保留两位小数
  5. QT自定义控件(生成和使用)
  6. python日志模块_Python之日志处理(logging模块)
  7. 论计算机与智能科学类,计算机与智能科学大类培养方案
  8. react学习(25)---注意接口引入位置
  9. 2007基于循环链表的队列的基本操作(C++)
  10. JVM 晋升到老年代的动态年龄判断
  11. RFID 是什么意思
  12. 关于职业规划,如何自我实现?
  13. python在生物中的应用_关于举办“Python编程语言在生物科学研究中的应用”学术报告的通知...
  14. mybatis集成 c3p0数据源
  15. Tomcat发布自己的一个web网站
  16. 【NumPy基础】100道numpy练习——Apprentice篇
  17. 刷屏的北京雾霾,2018 年北上广深空气质量分析
  18. tomcat7 安装和环境变量配置
  19. 解决局域网访问共享工具
  20. 什么叫软件前端测试,前端页面测试需要测试哪些内容?前端自动化测试的实现小技巧...

热门文章

  1. 【转】windows下GSL的配置
  2. eclipse迅速新建main函数
  3. HDU4035 Maze 【树形DP】【期望DP】
  4. kafka和mqtt的区别和联系
  5. 裁剪并获取固定大小的图片
  6. ApiDemos示例学习(1)——ApiDemos示例的导入
  7. 好的项目需要有好的需求
  8. 关于STL allocator
  9. 认识与防御XSS攻击
  10. [Luogu] 树状数组