JavaWeb--基本概念、Web服务器与Tomcat
前言
- Java Web 其实就是一个技术的总和,把Web看成一个容器而已主要使用JavaEE技术来实现.在加上各种中间件。
- 整个javaWeb阶段的内容通过实际的案例贯穿学习, 所涉及到的技术知识点会在案例中根据不同的需求引入。
- 首先了解javaWEB的整个技术体系,掌握常用的技术知识点。
我会将JavaWeb分为8篇左右的文章来记录自己的学习过程,也方便大家逐级递增难度的学习,如有错误或遗漏欢迎大家指出。
下面我们进入正题!
1、基本概念
1.1、前言
web开发:
- web,网页的意思
- 静态web
- html,css
- 提供给所有人看的数据始终不会变化
- 动态web
- 淘宝,几乎所有的网站
- 提供给所有人看的数据始终会变化,每个人在不同时间不同地点看到的信息各不相同
- 技术栈:Servlet/JSP,ASP,PHP
在Java中,动态web资源开发的技术统称为JavaWeb
1.2、web应用程序
web应用程序:可以提供浏览器访问的程序
a.html b.html......多个web资源,这些web资源可以被外界访问,对外界提供服务
我们能访问到的任何一个页面或者资源,都存在于这个世界上的某一个角落的计算机上
URL
这些统一的web资源会被放在同一个文件夹下,web应用程序---->Tomcat:服务器
一个web应用由多部分组成(静态web 动态web)
- html,css,js
- jsp,servlet
- java程序
- jar包
- 配置文件
web应用程序编写完毕后,若想提供给外界访问,需要一个服务器来统一管理
1.3、静态web
- *.html, *.html,这些都是网页的后缀,如果服务器上一直存在这些东西,我们就可以直接进行读取
- 静态web存在的缺点
- web页面无法动态更新,所有用户看到的都是同一个页面
- 轮播图,点击特效:伪动态
- JavaScript(实际开发中使用最多)
- VBScript
- 它无法和数据库交互(数据无法持久化,用户无法交互)
- web页面无法动态更新,所有用户看到的都是同一个页面
1.4、动态web
页面会动态展示:web的页面展示的效果因人而异(不同的人打开的页面是不一样的)
缺点
- 加入服务器的动态web资源出现了错误,我们需要重新编写我们的后台程序,重新发布(停机维护)
优点
- web页面可以动态更新,所有用户看到的都不是同一个页面
- 它可以和数据库交互(数据持久化:注册,用户信息)
2、web服务器
2.1、技术讲解
ASP:
- 微软:国内最早流行的就是ASP
- 在html中嵌入了VB的脚本,ASP+DOM
- 在ASP开发中,基本一个页面都有几千行的业务代码,页面极其混乱
- 维护成本高
- C#
PHP:
- 开发速度很快,功能很强大,跨平台,代码简单
- 无法承载大访问量的情况(局限性)
JSP/Servlet:
- sun公司主推的B/S架构
- 基于Java语言
- 可以承载高并发,高可用,高性能带来的影响
- 语法像ASP
2.2、web服务器
服务器是一种被动的操作,用来处理用户的一些请求和给用户一些响应信息
IIS:
- 微软
- ASP
- Windows中自带的
Tomcat
Tomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,最新的Servlet 和JSP 规范总是能在Tomcat 中得到体现,Tomcat 5支持最新的Servlet 2.4 和JSP 2.0 规范。因为Tomcat 技术先进、性能稳定,而且免费,因而深受Java 爱好者的喜爱并得到了部分软件开发商的认可,成为比较流行的Web 应用服务器。
Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。对于一个初学者来说,他是最佳选择
Tomcat 实际上运行JSP 页面和Servlet。另外,Tomcat和IIS等Web服务器一样,具有处理HTML页面的功能。
下载Tomcat:
- 安装/解压
- 了解配置文件及目录结构
- 作用
3、Tomcat
3.1、安装Tomcat
在安装之前给大家提一个建议,我在学习新知识的过程中经常会到软件版本不匹配报错的问题,而且经常卸载安装好几次也不成功,
所以建议大家在安装之前先去查看以下版本匹配的问题(不是最新的版本就是最好的),我在这里使用是Tomcat9
具体的下载流程大家可以参考以下博客,tomcat安装及配置教程(保姆级)_爱你的阿白~的博客-CSDN博客_tomcat安装及配置教程
3.2、Tomcat启动和配置
文件夹作用:
启动,关闭Tomcat:
可能遇到的问题:
- Java环境变量没有配置
- 闪退问题:需要配置兼容性
- 乱码问题:配置文件中设置
3.3、配置
可以配置启动的端口号
- Tomcat默认端口号为8080
- Mysql:3306
- http:80
- https:443
可以配置主机的名称
- 默认的主机名为:localhost->127.0.0.1
- 默认网站应用存放的位置为:webapps
思考问题
网站是如何进行访问的:
- 输入一个域名:回车
- 检查本机的hosts配置文件下有没有这个域名映射
- 有--->直接返对应的IP地址,这个地址中有我们需要访问的web程序,可以直接访问
- 没有--->去DNS服务器寻找(找到就返回,找不到就返回找不到)
3.4、发布一个web网站
- 将自己写的网站放到服务器(Tomcat)指定的webapp的文件夹下,就可以访问了
网站应该有的结构:
--webapps : Tomcat服务器的web目录
--ROOT
--Qstudy : 网站的目录名
--index.html : 默认的首页
--static
--css
--js
--img
--...
--WEB-INF
--classes : java程序
--lib : web应用所依赖的jar包
--web.xml : 网站的配置文件
好啦,JavaWeb的第一篇文章就结束啦ヾ(´▽‘)ノ,大家觉得还可以的话可以点击推荐支持一下博主啊
JavaWeb--基本概念、Web服务器与Tomcat的更多相关文章
- web服务器与tomcat
web服务器与tomcat 服务器分类: 硬件服务器和软件服务器 web服务器: 提供资源供别人访问 web: 网页的意思,资源. web资源分类: 动态的web资源:内容有可能发生改变的 静态的we ...
- WEB服务器,TOMCAT和servlet之间的关系
WEB服务器,TOMCAT和servlet之间的关系 什么是WEB服务器Web服务器是指能够为发出请求的浏览器提供文档的程序.服务器是 一种被动程序,只有浏览器发出请求的时候才会响应.应用层使用 的是 ...
- WEB服务器(Tomcat)
在小型的应用系统或有特殊需要的系统中,也可以使用一个免费的Web服务器: Tomcat,该服务器支持全部的JSP以及Servlet 规范, 下载 Tom 查看计算机上被占用端口号的情况: 使用Fpor ...
- web服务器、tomcat、servlet是什么?它们之间的关系又是什么?
今天偶然看到常见web服务器的介绍有Apache HTTP server.Nginx.Microsoft IIS.GWS,心中不禁产生了疑问,这些都是什么呢?一直认为tomcat就是web服务器,以下 ...
- Web服务器和Tomcat
Web服务器常用: WebLogic:是BEA公司的推出的产品,现在已经被oracle收购,是目前应用最广泛的Web服务器,支持JavaEE规范,商用收费,开发者可以免费使用. WebSphere:I ...
- 重温web服务器--细说Tomcat服务器
从大学开始接触java web的开发时就开始使用tomcat部署web项目,对它的理解仅仅停留在"这是个开源免费的servlet容器"的阶段,后来也接触了一些tomcat的体系,原 ...
- Web服务器讲解与JavaWeb应用部署(本机,以Tomcat为例)
转载请注明原文地址:http://www.cnblogs.com/ygj0930/p/6042290.html 在讨论Web系统发布之前,我们先来辨析两个概念:服务器.Web服务器. 通常,我们说的服 ...
- (转)Linux整合apache和tomcat构建Web服务器
原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://wenzhongxiang.blog.51cto.com/6370734/1285 ...
- Web服务器父与子 Apache和Tomcat区别
http://developer.51cto.com/art/201007/210894.htm 熟悉三国的朋友都知道曹操,曹操有二十五个儿子,其中最得曹操宠爱的是曹丕.曹植.曹彰三个,曹丕性格阴冷, ...
随机推荐
- [java并发编程]基于信号量semaphore实现限流器
目录 一.什么是信号量 二.信号量类Semaphore 三.实现限流器 欢迎关注我的博客,更多精品知识合集 一.什么是信号量 "信号量"在编程术语中使用单词semaphore,那什 ...
- MySQL 的 EXPLAIN 语句及用法
在MySQL中 DESCRIBE 和 EXPLAIN 语句是相同的意思.DESCRIBE 语句多用于获取表结构,而 EXPLAIN 语句用于获取查询执行计划(用于解释MySQL如何执行查询语句). 通 ...
- Git中的三种对象
1.Git中有三种对象 commit 每执行一次git commit,git都会对当前工作目录的所有文件生成一次镜像,工作区下的目录对应的对象是tree,工作区下的文件对应的对象是blob,tree下 ...
- boost::bind 不能处理函数重载 (error: no matching function for call to 'bind')
前言 最近任务多.工期紧,没有时间更新博客,就水一期吧.虽然是水,也不能太失水准,刚好最近工作中遇到一个 boost::bind 的问题,花费了半天时间来定位解决,就说说它吧. 问题背景 项目中使用了 ...
- Java到底是解释型还是编译型语言
Java到底是解释型还是编译型语言? 定义 回答这个问题,我们首先来看下概念: 开发人员编写代码,语言是人类可理解的方式,是具有语义的,然而计算机无法理解和执行,因此需要做一层转换. 解释型语言: 运 ...
- 【原创】项目三Raven-2
实战流程 1,C段扫描,并发现目标ip是192.168.186.141 nmap -sP 192.168.186.0/24 扫描目标主机全端口 nmap -p- 192.168.186.141 访问8 ...
- python求最大公约数和最小公倍数
1 def gcd(x,y): 2 while(y): 3 t=x%y 4 x=y 5 y=t 6 #print("最小公倍数是:",x*y/x)#最小公倍数是两数之积除以最大公约 ...
- python:selenium测试登录在chrome中闪退
问题描述:使用selenium.webdriver时测试网页,进行自动登录测试总是在登录成功时闪退.使用指定驱动器位置的方式chrome也会闪退 1.正常使用chrome驱动打开一个网页,正常访问 f ...
- golang的defer踩坑汇总
原文链接:http://www.zhoubotong.site/post/50.html defer语句用于延迟函数调用,每次会把一个函数压入栈中,函数返回前再把延迟的函数取出并执行.延迟函数可以有参 ...
- cookie 案例 记住上一次的访问时间
需求:记住上一次的访问时间 第一次访问Servlet 提示 欢迎首次访问 之后的访问 都提示 您上次的访问时间为:"""""""& ...