Web开发及服务器

article/2025/10/22 10:32:55

转载自https://www.cnblogs.com/xdp-gacl/p/3729033.html。

一、基本概念

1.1、WEB开发的相关知识

WEB,在英语中web即表示网页的意思,它用于表示Internet主机上供外界访问的资源。

Internet上供外界访问的Web资源分为:

  • 静态web资源(如html 页面):指web页面中供人们浏览的数据始终是不变
  • 动态web资源:指web页面中供人们浏览的数据是由程序产生的,不同时间点访问web页面看到的内容各不相同
      静态web资源开发技术:Html
      常用动态web资源开发技术:JSP/Servlet、ASP、PHP等
      在Java中,动态web资源开发技术统称为Javaweb。

1.2、WEB应用程序

WEB应用程序指供浏览器访问的程序,通常也简称为web应用。例如有a.html 、b.html……多个web资源,这多个web资源用于对外提供服务,此时应把这多个web资源放在一个目录中,以组成一个web应用(或web应用程序)。

一个web应用由多个静态web资源和动态web资源组成,如:html、css、js文件,Jsp文件、java程序、支持jar包、配置文件等等。
Web应用开发好后,若想供外界访问,需要把web应用所在目录交给web服务器管理,这个过程称之为虚似目录的映射

1.3、WEB发展史

WEB发展的两个阶段:静态、动态

1.4、静态WEB

*htm、*html,这些是网页的后缀,如果现在在一个服务器上直接读取这些内容,那么意味着是把这些网页的内容通过网络服务器展现给用户。整个静态WEB操作的过程图如下:
在这里插入图片描述
在静态WEB程序中,客户端使用WEB浏览器(IE、FireFox等)经过网络(Network)连接到服务器上,使用HTTP协议发起一个请求(Request),告诉服务器我现在需要得到哪个页面,所有的请求交给WEB服务器,之后WEB服务器根据用户的需要,从文件系统(存放了所有静态页面的磁盘)取出内容。之后通过WEB服务器返回给客户端,客户端接收到内容之后经过浏览器渲染解析,得到显示的效果。

静态WEB中存在以下几个缺点:

1、Web页面中的内容无法动态更新,所有的用户每时每刻看见的内容和最终效果都是一样的

为了可以让静态的WEB的显示更加好看,可以加入了JavaScript以完成一些页面上的显示特效,但是这些特效都是在客户端上借助于浏览器展现给用户的,所以在服务器上本身并没有任何的变化。

实现静态WEB客户端动态效果的手段:
JavaScript
VBScript

在实际的开发中JavaScript使用得最多。

2、静态WEB无法连接数据库,无法实现和用户的交互

使用数据库保存数据是现在大多数系统的选择,因为数据库中可以方便地管理数据,增删改查操作可以使用标准的SQL语句完成。

1.5、动态WEB

所谓的动态不是指页面会动,主要的特性的是:“WEB的页面展示效果因时因人而变”,而且动态WEB具有交互性,WEB的页面的内容可以动态更新。整个动态WEB操作的过程图如下:
在这里插入图片描述

动态WEB中,程序依然使用客户端和服务端,客户端依然使用浏览器(IE、FireFox等),通过网络(Network)连接到服务器上,使用HTTP协议发起请求(Request),现在的所有请求都先经过一个WEB Server Plugin(服务器插件)来处理,此插件用于区分是请求的是静态资源(.htm或者是.htm)还是动态资源。

如果WEB Server Plugin发现客户端请求的是静态资源(.htm或者是.htm),则将请求直接转交给WEB服务器,之后WEB服务器从文件系统中取出内容,发送回客户端浏览器进行解析执行。

如果WEB Server Plugin发现客户端请求的是动态资源(.jsp、.asp/.aspx、.php),则先将请求转交给WEB Container(WEB容器),在WEB Container中连接数据库,从数据库中取出数据等一系列操作后动态拼凑页面的展示内容,拼凑页面的展示内容后,把所有的展示内容交给WEB服务器,之后通过WEB服务器将内容发送回客户端浏览器进行解析执行。

1.6、动态WEB应用的实现手段

动态WEB现在的实现手段非常多,较为常见的有以下几种:
Microsoft ASP、ASP.NET
PHP
JAVA Servlet/JSP
1、Microsoft ASP、ASP.NET
微软公司动态WEB开发是比较早的,而且最早在国内最流行的是ASP。ASP就是在HTML语言之中增加了VB脚本,但是标准的开发应用应该是使用ASP+COM,但是实际情况来看,在开发ASP的时候基本上都在一个页面中写上成百上千的代码,页面代码极其混乱。

ASP本身有开发平台的限制:Windows+IIS+SQL Server/Access,ASP只能运行在Windows操作系统上,ASP现在基本上已经淘汰,现在基本上都是使用ASP.NET进行开发,ASP.NET在性能有了很大的改善,而且开发迅速,但是依然受限于平台。ASP.NET中主要是使用C#语言。

2.PHP
PHP开发速度很快,功能强大,跨平台(平台指的就是运行的操作系统),而且代码也简单。

3.Servlet/JSP
  这是SUN公司(SUN现在已经被Oracle公司收购)主推的B/S架构的实现语言,是基于JAVA语言发展起来的,因为JAVA语言足够简单,而且很干净。

Servlet/JSP技术的性能也是非常高的,不受平台的限制,各个平台基本上都可以使用。而且在运行中是使用多线程的处理方式,所以性能非常高。

SUN公司最早推出的WEB技术推出的是Servlet程序,Servlet程序本身使用的时候有一些问题,所有的程序是采用JAVA代码+HTML的方式编写的,即,要使用JAVA输出语句,一行一行地输出所有的HTML代码,之后,SUN公司受到了ASP的启发,发展出了JSP(Java Server Page),JSP某些代码的编写效果与ASP是非常相似的。这样可以很方便地使一些ASP程序员转向JSP的学习,加大市场的竞争力度。

二、WEB服务器

2.1、WEB服务器简介

1、Web服务器是指驻留于因特网上某种类型计算机的程序,是可以向发出请求的浏览器提供文档的程序。当Web浏览器(客户端)连到服务器上并请求文件时,服务器将处理该请求并将文件反馈到该浏览器上,附带的信息会告诉浏览器如何查看该文件(即文件类型)。
  在这里插入图片描述
  2、服务器是一种被动程序:只有当Internet上运行在其他计算机中的浏览器发出请求时,服务器才会响应
  在这里插入图片描述
  学习web开发,需要先安装一台web服务器,然后再在web服务器中开发相应的web资源,供用户使用浏览器访问。
敬请批评指正!


http://chatgpt.dhexx.cn/article/WFmtTTBp.shtml

相关文章

EI数据库免费检索入口

转载自:http://www.ei-istp.com/New_691.html 具体查询方式,详看链接。

数据库搜索与索引

索引是对数据库表中一列或多列的值进行排序的一种结构,使用索引可快速访问数据库表中的特定信息。如果想按特定职员的姓来查找他或她,则与在表中搜索所有的行相比,索引有助于更快地获取信息。 索引的一个主要目的就是加快检索表中数据&#x…

数据库 索引

多数数据库,使用 B 树(Balance Tree)的结构来保存索引。 B 树, 最上层节点:根节点 最下层节点:叶子节点 两者之间的节点:中间节点 B 树,显著特征:从根节点,到…

mysql全库搜索关键字_数据库 全文检索

一、概述 MySQL全文检索是利用查询关键字和查询列内容之间的相关度进行检索,可以利用全文索引来提高匹配的速度。 二、语法 MATCH (col1,col2,...) AGAINST (expr [search_modifier]) search_modifier: { IN BOOLEAN MODE | WITH QUERY EXPANSION } 例如:SELECT * FROM tab_n…

人文社科类文献去哪些数据库检索下载

查找下载人文社科类文献的数据库大盘点: 1、文献党下载器(wxdown.org) 大型文献馆,几乎整合汇集了所有中外文献数据库资源,可附带权限进入文献数据库查找下载文献,覆盖全科包括查找下载人文社科类文献的众…

数据库索引的实现原理

强烈建议参阅链接:http://www.linezing.com/blog/?p=798#nav-1 说白了,索引问题就是一个查找问题。。。 数据库索引,是数据库管理系统中一个排序的数据结构,以协助快速查询、更新数据库表中数据。索引的实现通常使用B树及其变种B+树。 在数据之外,数据库系统还维护着满足…

WoS数据库使用及检索示例

目录 快速了解一个领域的情况 1. 核心合集检索和所有数据库检索的区别 2. 检索结果分析 2.1 排序方式(日期,被引频次) 2.2 分析检索结果 2.3 精炼检索结果(二次检索) 2.4 创建引文报告 2.5 具体某一篇文献 快…

【MySQL】检索数据

每日鸡汤 : —— 若你困于无风之地,我将奏响高空之歌 要和我一起花 10 min 学一会 SQL 嘛? - 当然愿意,我美丽的小姐 (封寝期间练就的自言自语能力越来越炉火纯青了~~~) 前言: 本实验中所用数据…

数据库的检索(select)

今天我们学习一下数据库检索语句,由于经常用到,有需求的小伙伴欢迎来查看哦! 一、简单的查询 --获取所以列 select * from T_table --获取部分列 select id, title from T_table 效果展示: 在...之间:Between.. a…

《MySQL必知必会》学习笔记之“数据库的检索”

文章目录 第一章 SQL与MySQL1 数据库基础2 什么是SQL3 客户机—服务器软件4 MySQL工具mysql命令行实用程序(使用最多的实用程序之一)MySQL AdministratorMySQL Query Browser 第二章 使用MySQL1 连接2选择数据库3了解数据库和表4 注释 第三章 检索数据1 …

最全最易理解的数据库查询教程

数据库查询 检索数据表中一个字段的内容检索数据表中多个字段的内容检索数据表中所有字段的内容带限制条件的查询表达式查询使用 WHERE 语句和逻辑表达式使用WHERE语句检索单范围数据使用WHERE语句检索双范围数据使用WHERE语句检索不匹配某条件的语句使用通配符[]模糊匹配数据内…

数据库基础知识——SELECT 语句(检索数据)

SQL使用 SQL(发音为字母S-Q-L或sequel)是结构化查询语言(Structured Query Language)的缩写。SQL是一种专门用来与数据库通信的语言。 SQL 语言特点: SQL 语言不区分大小写;在命令行窗口的 SQL 语句要以…

Python爬虫获取数据保存到数据库中(超级详细,保证一看就会)

1.简介介绍 -网络爬虫(又称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者),是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本。另外一些不常使用的名字还有蚂蚁、自动…

python数据爬取---简单页面的爬取

1、准备Requests和User Agent python中能实现爬虫功能的库有若干个,而最简单最容易上手的,要数Requests库,它是一个常用的http请求库,首先用pip install requests 进行安装才能使用。 User Agent一般翻译为用户代理,…

Python小姿势 - # 如何使用Python爬取网页数据

如何使用Python爬取网页数据 今天我们来学习一下如何使用Python来爬取网页数据。 首先,我们需要准备一个空白的文件,在文件中输入以下代码: import requests url http://www.baidu.com r requests.get(url) print(r.text) 上面的代码中&…

Python爬取数据

爬虫基本思路<通用> Response 服务器返回响应数据 Preview 预览 Payload 请求参数 Headers 头部信息&#xff1a;请求url地址、请求方式、响应头、请求头 一、数据来源分析 -抓包分析我们想要的数据内容&#xff0c;请求的那个网页 url地址得到。 -选中xhr 找到想要的内容…

手把手教会你用Python爬虫爬取网页数据!!

其实在当今社会&#xff0c;网络上充斥着大量有用的数据&#xff0c;我们只需要耐心的观察&#xff0c;再加上一些技术手段&#xff0c;就可以获取到大量的有价值数据。这里的“技术手段”就是网络爬虫。今天就给大家分享一篇爬虫基础知识和入门教程&#xff1a; 什么是爬虫&a…

python-爬取网站数据

一、安装jar 找到python解释解释器的安装根目录&#xff0c;执行以下命令&#xff0c; pip install requests #如果这个BeautifulSoup这个安装不上&#xff0c;可以换成pip install BeautifulSoup4试试 pip install BeautifulSoup二、肯定就是敲代码了 import urllib.reques…

Python爬虫入门教程!手把手教会你爬取网页数据

其实在当今社会&#xff0c;网络上充斥着大量有用的数据&#xff0c;我们只需要耐心的观察&#xff0c;再加上一些技术手段&#xff0c;就可以获取到大量的有价值数据。这里的“技术手段”就是网络爬虫。今天就给大家分享一篇爬虫基础知识和入门教程&#xff1a; 什么是爬虫?…

Python爬取整个网页的数据

本案例是基于PyCharm开发的&#xff0c;也可以使用idea。 在项目内新建一个python文件Test.py Test.py # 导入urllib下的request模块 import urllib.request # 导入正则匹配包 import re# -*- encoding:utf-8 -*- """ 作者&#xff1a;小思 文件名&#xff1a;…