全部章节   >>>>


本章目录

1.1 Web 应用程序

1.1.1 Web 应用程序概述

1.1.2 Web 应用程序的工作原理

1.1.3 实践练习

1.2 HTTP协议

1.2.1 URL简介

1.2.2 HTTP 协议概述

1.2.3 HTTP 处理流程

1.2.4 HTTP请求方式

1.2.5 实践练习

1.3 Tomcat 简介

1.3.1 Web 容器概述

1.3.2 Tomcat 概述

1.3.3 Tomcat 下载

1.3.4 Tomcat 安装

1.3.5 Tomcat 目录

1.3.6 修改 Tomcat 端口

1.3.7 启动tomcat

1.3.7 实践练习

1.4 使用 Eclipse 开发 JavaWeb 应用程序

1.4.1 创建项目

1.4.2 创建页面文件

1.4.3 配置 Web 服务器

1.4.4 发布项目到 Tomcat 并运行

1.4.4 访问Tomcat中项目资源

1.4.5 实践练习

总结:


1.1 Web 应用程序

1.1.1 Web 应用程序概述

随着Internet和网络应用程序的发展,其开发体系结构主要分为两种

基于客户端 / 服务器端的 C/S 体系结构

基于浏览器 / 服务器的 B/S 体系结构

B/S结构优势:

B/S 体系结构相对于 C/S 体系结构而言具有更多的优势,目前大量的应用程序开始转移到应用 B/S 体系结构,其主要优势在于以下几点

  • 安装维护升级方便,仅部署服务器
  • 对客户机配置要求不高,满足服务器配置即可
  • 访问范围更广

1.1.2 Web 应用程序的工作原理

Web 应用程序大致可以分为两种,即静态网站动态网站

  • 静态网站采用Html语言编写,放置于 Web 服务器上,用户通过浏览器直接请求解析显示
  • 缺点:内容固定不变,改变显示必须修改html代码

随着网络技术的发展,基于 Internet 的 Web 应用程序也变得越来越复杂,更多的内容需根据用户的请求动态生成页面信息,即动态网站

动态网站指在Html静态页面中嵌入Java、C#、Php等脚本代码,将编写后的页面放入Web服务器,由服务器编译转换为最终Html返回给客户端

1.1.3 实践练习

1.2 HTTP协议

1.2.1 URL简介

URL 是 UniformResource Locator 的缩写,表示统一资源定位器,它是专为标识网络上的资源位置而设定的一种编码地址方式,即俗称:网址

URL组成:应用层协议、主机 IP 地址或域名、协议端口号、资源路径 / 文件名 应用层协议 :// 主机 IP 地址或域名、协议端口号 / 资源所在路径 / 文件名 http://www.oracle.com:80/hk/index.htm

浏览网页时输入的域名最终会转换为IP地址

由于 80 端口是 HTTP 协议默认的端口号,所以在访问网络地址时可以省略该端口号

1.2.2 HTTP 协议概述

HTTP:超级文本传输协议(Hypertext Transfer Protocol)是关于如何在网络上传输超级文本及HTML 文档的协议(规范)

  • Web 浏览器按照 HTTP 协议的规定向 Web 服务器发送请求信息,Web 服务器接收到浏览器的请求后,再按照 HTTP 协议的要求将结果发送给 Web 浏览器解析显示

1.2.3 HTTP 处理流程

一次完整的请求响应过程分为以下几个步骤:

  • 客户端发送 HTTP 请求和 Web 服务器建立连接
  • 服务器端接受客户端的请求,生成 HTTP 响应并发送给客户端
  • 服务器端关闭连接。客户端浏览器接收服务器端的响应,浏览器显示页面

服务器端关闭连接后,不再存储连接信息,所以 HTTP 协议被称为无状态协议。

网络抓包的形式,查看发送请求时的网络:

1、打开浏览器(Chrome),右键--》检查

2、调试台调整到网络NetWork观察请求信息

1.2.4 HTTP请求方式

HTTP 请求可以使用多种请求方式,常用方式包括以下两种:

  • GET 请求方式(超链接、表单默认都是get请求)
  • POST 请求方式

GET和POST请求区别如下:

  • GET只能传递文本,POST可以传递任意数据(包括音频、视频等,上传文件必须POST)
  • GET 请求方式提交的数据会暴露在地址栏,不安全,POST更加安全
  • GET 请求方式提交的数据不能超过 2KB,POST 请求方式无此限制
  • GET请求效率高于POST

1.2.5 实践练习

1.3 Tomcat 简介

1.3.1 Web 容器概述

 不同的动态网页需要不同的Web服务器支持才能正常工作,其职责如下:

  • Web服务器负责接收用户的请求
  • 将动态网页进行编译,转换为可执行文件
  • 将生成的静态html响应给客户端

1.3.2 Tomcat 概述

  • JavaWeb应用有多种Web服务器选择,其中Tomcat是众多主流服务器之一
  • Tomcat 是 Apache 软件基金会(Apache Software Foundation)的 Jakarta 项目中的一个核心项目。Tomcat 技术先进、性能稳定,而且免费,已经成为目前学习开发 Java Web 应用的首选

1.3.3 Tomcat 下载

使用Tomcat首先需要下载安装:

打开浏览器,输入http://tomcat.apache.org进入官网

在左侧Download找到对应版本下载

安装Tomcat之前,需要先安装JDK且配置环境变量,否则无法安装Tomcat

1.3.4 Tomcat 安装

确保 JDK 安装配置成功后,启动 Tomcat 的安装程序进行安装:

  • 选择 JRE 的安装路径(未安装JDK该步骤不能通过)
  • 安装过程中需要配置服务器的端口号和密码
  • 设置 Tomcat 端口号

Tomcat默认使用8080端口号

1.3.5 Tomcat 目录

Tomcat安装成功后,需要对其目录有一定了解,如下

Tomcat各目录说明如下:

目录名

作用

bin

所有的可执行命令,启动和关闭服务器的命令就在此文件夹中

conf

服务器的配置文件夹,其中保存了多个配置信息

lib

Tomcat 服务器所需要的各个库文件

logs

保存服务器的系统日志

webapps

Web 应用程序存放的目录,Web 项目保存到

此目录中即可发布

work

存放由各种 JSP 生成的 servlet 文件

temp

保存临时文件

1.3.6 修改 Tomcat 端口

Tomcat 默认的服务端口为 8080,但该端口不是固定端口,可以在安装过程中或者安装后进行配置修改

  • 打开 Tomcat 安装目录下的 conf 文件下的 server.xml 文件
  • 在 server.xml 文件中找到<Connector port=“8080” ……>
  • 将port=“8080”修改为 port=“9090”,即可将 Tomcat 的默认端口设置为 9090
  • 双击 bin 目录内的“startup.bat”文件,重新启动 Tomcat 服务器

为避免错误,一般都采用默认8080 尽量避免使用主流软件端口号,如3306、1433等

1.3.7 启动tomcat

Tomcat需要启动后才能正常访问项目,其启动方式如下

  1. 打开bin目录,找到startup.exe启动
  2. 命令行输入service.msc,在服务列表中启动tomcat服务

不能多次启动,启动之前确认tomcat是否是停止状态

1.3.7 实践练习

1.4 使用 Eclipse 开发 JavaWeb 应用程序

1.4.1 创建项目

使用Eclipse创建Web项目:

  • 启动 Eclipse,并选择一个工作空间,进入到 Eclipse 的开发界面
  • 单击菜单栏“File”菜单项,菜单中选择“New”,在弹出的菜单中选择“DynamicWeb Project(动态 Web 项目)”命令

输入项目名称“FirstProject”,在 Dynamic webmodule version 下拉列表框中选择“3.1”

单击“Next(下一步)”按钮,打开配置 Java 应用程序的对话框,采用默认设置

单击“Next(下一步)”按钮,打开“Web Module(配置 web 模块设定)”对话框选中“Generateweb.xml deployment descriptor(生成部署描述文件 web.xml)”,其他采用系统默认

1.4.2 创建页面文件

在创建的Web项目中,在WebContent目录下可以创建html、jsp等文件,如下:

  • 右键项目中WebContent节点,新建,Html文件
  • 输入文件名称 打开文件,编辑代码

1.4.3 配置 Web 服务器

在发布和运行项目前,需要先配置 Web 服务器,如果已经配置好 Web 服务器,就不需要再重新配置。配置Web 服务器的具体步骤如下:

  • 打开eclipse下方工作台中的servers配置服务器
  • 选择对应的Tomcat服务器版本,设置安装路径
  • 点击完成即可

1.4.4 发布项目到 Tomcat 并运行

Java Web 项目创建完成后,即可将项目发布到 Tomcat 并运行该项目

  • 项目资源管理器中右键项目
  • Run As运行于选择Run On Server
  • 控制台查看Tomcat服务启动情况

1.4.4 访问Tomcat中项目资源

项目部署至Tomcat后,启动Tomcat服务器,可以通过浏览器访问:

  • http://localhost:8080/FirstProject/firstPage.html
  • 访问Web应用的URL地址为:http://host:port/project/page

host代表主机名或IP地址,localhost代表本机,或127.0.0.1

port为软件端口号,如未修改则为8080

project是部署的项目名称

page是访问的资源页面名称

1.4.5 实践练习

总结:

  • 网络应用程序主要分为B/S结构和C/S结构,其中B/S结构的应用直接通过浏览器访问,后期维护、升级更为方便
  • Http是互联网上网页传输的基本协议,它是一种无状态的协议
  • Http的请求方式主要有Get和Post,其中Get方式安全性、数据传输格式、传输大小都不如Post
  • Tomcat是JavaWeb应用开发中最为常见的Web服务器之一,其默认端口是8080

Java Web程序设计笔记 • 【第1章 Web应用程序】的更多相关文章

  1. Java Web程序设计笔记 • 【目录】

    章节 内容 实践练习 Java Web程序设计作业目录(作业笔记) 第1章 Java Web程序设计笔记 • [第1章 Web应用程序] 第2章 Java Web程序设计笔记 • [第2章 JSP基础 ...

  2. Java高级程序设计笔记 • 【目录】

    持续更新中- 我的大学笔记>>> 章节 内容 实践练习 Java高级程序设计作业目录(作业笔记) 第1章 Java高级程序设计笔记 • [第1章 IO流] 第2章 Java高级程序设 ...

  3. java JDK8 学习笔记——第16章 整合数据库

    第十六章 整合数据库 16.1 JDBC入门 16.1.1 JDBC简介 1.JDBC是java联机数据库的标准规范.它定义了一组标准类与接口,标准API中的接口会有数据库厂商操作,称为JDBC驱动程 ...

  4. Java Web程序设计笔记 • 【第7章 会话跟踪技术】

    全部章节   >>>> 本章目录 7.1 会话跟踪技术概述 7.1.1 为什么需要会话跟踪 7.1.2 会话的状态和跟踪 7.1.3 会话跟踪技术 7.1.4 会话跟踪工作流程 ...

  5. Head First Servlets & JSP 学习笔记 第十一章 —— Web应用部署

    jar:java archive(java归档) war:web archive(web归档) war文件只是Web应用结构的一个快照,采用了一种更可移植的压缩形式(它实际上就是一个jar文件).建立 ...

  6. Java开发工程师(Web方向) - 01.Java Web开发入门 - 第1章.Web应用开发概述

    第1章--Web应用开发概述 Web应用开发概述 浏览器-服务器架构(BS-architecture) browser/ App    ---- request ---->    server ...

  7. Java语言程序设计(基础篇)第一章

    第一章 计算机.程序和Java概述 1.1 引言 什么是程序设计呢? 程序设计就是创建(或者开发)软件,软件也称为程序. 1.2 什么是计算机 计算机是存储和处理数据的电子设备,计算机包括硬件(har ...

  8. Java面向对象程序设计笔记 • 【目录】

    持续更新中- 我的大学笔记>>> 章节 内容 实践练习 Java面向对象作业目录(作业笔记) 第1章 Java面向对象笔记 • [第1章 面向对象] 第2章 Java面向对象笔记 • ...

  9. Java Web程序设计笔记 • 【第9章 EL表达式】

    全部章节   >>>> 本章目录 9.1 EL 表达式基础 9.1.1 EL 表达式简介 9.1.2 EL 表达式的定义 9.1.3 使用 EL 访问变量 9.1.4 使用 E ...

随机推荐

  1. 从面试官的角度,聊聊java面试流程

    在这篇回答里,就讲以我常规的面试流程为例,说下java方面大致会问什么问题,以及如何确认候选人达到招聘要求. 先说面试前准备,可能有些面试官是拿到简历直接问,而且是在候选人自我介绍时再草草浏览简历,但 ...

  2. Git配置文件与git config命令

    在Git配置文件中配置变量,可以控制Git的外观和操作的各个方面.通过git config命令可以获得和设置配置变量. 一.Git配置文件的位置 这些变量可以被存储在三个不同的位置: 1./etc/g ...

  3. Android 高级UI组件(一)GridView与ListView

    1.GridView 1.GridView学习 GridView和ListView都是比较常用的多控件布局,而GridView更是实现九宫图的首选 main.xml: <?xml version ...

  4. Handler与多线程

    1.Handler介绍 在Android开发中,我们常会使用单独的线程来完成某些操作,比如用一个线程来完成从网络上下的图片,然后显示在一个ImageView上,在多线程操作时,Android中必须保证 ...

  5. 【Linux】【Services】【DNS】使用Bind搭建DNS服务

    1. 简介 1.1. 实现的功能:DNS解析以及智能转发 1.2. 官方文档: 1.3. 基础概念:http://www.cnblogs.com/demonzk/p/6494968.html 2. 环 ...

  6. 关于requests.exceptions.ConnectionError: HTTPSConnectionPool的问题

    错误如下: raise ConnectionError(e, request=request)requests.exceptions.ConnectionError: HTTPSConnectionP ...

  7. C++内存管理:new / delete 和 cookie

    new 和 delete C++的内存申请和释放是通过 new 和 delete 实现的, 而new 和 delete 其实就是通过 malloc 和 free 实现的. new 申请内存分为三个步骤 ...

  8. CPU中的上下文

    目录 一.简介 二.进程切换 三.线程切换 四.中断切换 五.中断检测和查看 六.模拟 一.简介 Linux是多任务操作系统,cpu划分固定时间片,分给每个进程,当前进程时间片执行完毕,将挂起,运行下 ...

  9. 魅族CMDB运维自动化实践

    一.简介 原创:梁鹏 本文是根据魅族系统架构师梁鹏10月20日在msup携手魅族.Flyme.百度云主办的第十三期魅族技术开放日< 魅族CMDB运维自动化实践>演讲中的分享内容整理而成. ...

  10. KubeCon 2021|使用 eBPF 代替 iptables 优化服务网格数据面性能

    作者 刘旭,腾讯云高级工程师,专注容器云原生领域,有多年大规模 Kubernetes 集群管理及微服务治理经验,现负责腾讯云服务网格 TCM 数据面产品架构设计和研发工作. 引言 目前以 Istio[ ...