转自:http://www.journaldev.com/1854/java-web-application-tutorial-for-beginners#web-server-client

Web Server and Client

HTML and HTTP

Understanding URL

Why we need Servlet and JSPs?

First Web Application with Servlet and JSP

Web Container

Web Application Directory Structure

Deployment Descriptor

Web Server and Client

Web服务器是一种可以处理客户端请求(request)并将响应(response)发送回客户端的软件。例如,Apache是​​最广泛使用的Web服务器之一。Web服务器在某些物理机器上运行,并在特定端口上侦听客户端请求。

Web客户端是一种有助于与服务器通信的软件。一些最广泛使用的Web客户端是Firefox,Google Chrome,Safari等。当我们从服务器(通过URL)请求某些东西时,Web客户端将负责创建请求并将其发送到服务器,然后解析服务器响应并显示给用户。

HTML and HTTP

Web服务器和Web客户端是两个独立的软件,所以应该有一些通用的通用语言。HTML是服务器和客户端之间的通用语言,即Hyper Text Markup Language(超文本标记语言)。

Web服务器和客户端都需要一个公共通信协议,超文本传输协议(HTTP,HyperText Transfer Protocol)是服务器和客户端之间的通信协议。HTTP运行在TCP/IP通信协议之上。

1、HTTP请求的一些重要部分是:

  • HTTP Method – 要执行的操作,通常是GET,POST,PUT等
  • URL – 要访问的页面
  • Form Parameters – 类似于函数的参数,例如用于登陆的户名、密码等详细信息

HTTP请求示例:

GET /FirstServletProject/jsps/hello.jsp HTTP/1.1
Host: localhost:8080
Cache-Control: no-cache

2、HTTP响应的一些重要部分是:

  • Status Code – 指示请求是否成功的整数。一些众所周知的状态码:“success”为200,“Not Found”为404,“Access Forbidden”为403
  • Content Type – 文本,HTML,图像,pdf等,也被称为MIME类型
  • Content – 由客户端呈现并向用户显示的实际数据

HTTP响应示例:

200 OK
Date: Wed, 07 Aug 2013 19:55:50 GMT
Server: Apache-Coyote/1.1
Content-Length: 309
Content-Type: text/html;charset=US-ASCII <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Hello</title>
</head>
<body>
<h2>Hi There!</h2>
<br>
<h3>Date=Wed Aug 07 12:57:55 PDT 2013
</h3>
</body>
</html>

MIME Type 或 Content Type:上面HTTP响应的头部,包含“Content-Type”标签。它也被叫做MIME类型,服务器将其发送给客户端,让他们知道它发送的数据种类。它帮助客户端呈现用户数据。一些主要使用的MIME类型是text/html,text/xml,application/xml等。

Understanding URL

URL是Universal Resource Locator(通用资源定位器)的缩写,它用于查找服务器和资源。网络上的每个资源都有自己独一无二的地址。我们通过一个例子来看一下URL的组成。

http://localhost:8080/FirstServletProject/jsps/hello.jsp

http:// - 这是URL的第一部分,提供了在服务器-客户端通信中所使用的通信协议。

localhost -

Why we need Servlet and JSPs?

First Web Application with Servlet and JSP

Web Container

Web Application Directory Structure

Deployment Descriptor

【Java Web】新手教程(转)的更多相关文章

  1. [置顶] Java Web开发教程来袭

    Java Web,是用Java技术来解决相关web互联网领域的技术总和.web包括:web服务器和web客户端两部分.Java在客户端的应用有java applet不过现在使用的很少,Java在服务器 ...

  2. 勤拂拭软件 java web 开发教程(1) - 开发环境搭建

    勤拂拭软件系列教程 之 Java Web开发之旅(1) Java Web开发环境搭建 1 前言 工作过程中,遇到不少朋友想要学习jsp开发,然而第一步都迈不出,连一个基本的环境都没有,试问,如何能够继 ...

  3. java web 开发教程(1) - 开发环境搭建

    勤拂拭软件系列教程 之 Java Web开发之旅(1) Java Web开发环境搭建 1 前言 工作过程中,遇到不少朋友想要学习jsp开发,然而第一步都迈不出,连一个基本的环境都没有,试问,如何能够继 ...

  4. NetBeans工具学习之道:NetBeans IDE Java 高速新手教程

    欢迎使用 NetBeans IDE! 本教程通过指导您创建一个简单的 "Hello World" Java 控制台应用程序,简要介绍 NetBeans IDE 工作流.学习完本教程 ...

  5. vscode 开发 Java web 急速教程

    1.确认在本机已安装 JAVA SDK 2.确认在本机已安装 maven 3.确认在本机已安装 tomcat 下面是我本机相关软件版本: java version "1.8.0_191&qu ...

  6. eclipse Tomcat和 MYSQL JAVA web新手开发示例--登录界面连接数据库

    登录界面login.jsp 1 <%@ page language="java" import="java.util.*" contentType=&qu ...

  7. 阿里云windows 2012服务器部署java web程序教程

    一:环境搭建 1.首先需要购买一个阿里云ECS服务器,购买时可以选择处理器核数以及内存大小(可以购买偏低配置,因为升级      方便) 2.购买后会自动创建一个实例,可以使用该实例中显示的公网地址在 ...

  8. 勤拂拭软件系列教程 - java web开发

    勤拂拭软件工作室持续推出Java Web开发系列教程与案例,供广大朋友分享交流技术经验,帮助喜欢java的朋友们学习进步: 1. 勤拂拭软件 java web 开发教程(1) - 开发环境搭建 勤拂拭 ...

  9. 系列教程 - java web开发

    代码之间工作室持续推出Java Web开发系列教程与案例,供广大朋友分享交流技术经验,帮助喜欢java的朋友们学习进步: java web 开发教程(1) - 开发环境搭建 技术交流QQ群: 商务合作 ...

  10. 【Java学习系列】第4课--Java Web相关

    本文地址 分享提纲: 1.概述 2. Jsp基础 2.1 1.概述 1.1)[来源和先导] 本文主要的java web的教程来源JSP是 菜鸟教程JSP 和 天码营Java Web.     主要的先 ...

随机推荐

  1. 【BZOJ】2060: [Usaco2010 Nov]Visiting Cows 拜访奶牛(树形dp)

    http://www.lydsy.com/JudgeOnline/problem.php?id=2060 裸的树形dp d[x][1]表示访问x的数量,d[x][0]表示不访问x的数量 d[x][1] ...

  2. OpenWrt 安装usb支持

    (一)下载软件 1)komd-usb-ohci kmod-usb2 kmod-usb-storage kmod-usb-core 这些是USB驱动包 2) kmod-nls-base kmod-nls ...

  3. Domino移动Web上传的附件到RichText域

    只是从网上拷贝下来,没有测试. 得到上传文件的路径http://searchdomino.techtarget.com/tip/Trap-an-attachment-path-via-the-Domi ...

  4. nginx已经启动 无法访问页面

    通过IP访问,可以看到  welcome nginx 的提示 下面我重启linux服务器,重启后通过ip访问,死活连接不上了?没办法了,只有在百度和google 最后发现问题不是出在nginx上,而是 ...

  5. AndroidManifest.xml文件详解(activity)(五)

    android:taskAffinity 这个属性用于跟Activity有亲缘关系的任务.带有相同亲缘关系的Activity,在概念上是属于相同任务的(从用户的角度看,它们是属于同一应用程序的).任务 ...

  6. boost::interprocess(1)

    发送端:#include <iostream> #include <windows.h> #include <string> using namespace std ...

  7. JavaScript进阶之路 初学者的开始

    一:写在前面的问题和话 一个javascript初学者的进阶之路! 背景:3年后端(ASP.NET)工作经验,javascript水平一般般,前端水平一般般.学习资料:犀牛书. 如有误导,或者错误的地 ...

  8. IE强制不使用兼容模式

    [caption id="attachment_471" align="alignnone" width="431"] 强制不使用兼容模式[ ...

  9. c# public private protected internal protected internal

    一个 访问修饰符 定义了一个类成员的范围和可见性.C# 支持的访问修饰符如下所示: public:所有对象都可以访问: private:对象本身在对象内部可以访问: protected:只有该类对象及 ...

  10. 第二课作业——redis常用命令

    第二课时作业 静哥 by 2016.2.23~2016.2.22   [作业描述] 1.key string list hash结构中,每个至少完成5个命令,包含插入 修改 删除 查询,list 和h ...