本文被 系统学习JavaWeb 收录点击订阅专栏
文章目录
1 正式步入JavaWeb
1.1 JavaWeb说明
JavaWeb是指所有通过Java语言编写的可以通过浏览器访问的程序的总称,JavaWeb是 基于请求和响应 来开发的。
- 请求: 请求Request是指客户端给服务器发送数据。
- 响应: 响应Response是指服务端给客户端回传数据。
请求和响应的关系:成对出现
1.2 Web资源与常见的Web服务器
web资源按照实现的技术和呈现的效果不同,分为静态资源和动态资源:
- 静态资源: html、css、js、txt、mp4视频、jpg图片等。
- 动态资源: jsp页面、Servlet程序等。
常见的Web服务器如下:
- Tomcat:由 Apache 组织提供的一种web 服务器,提供对 jsp 和 servlet 的支持。它是一种轻量级的javaweb服务器,也是当前应用最广的Javaweb 服务器(免费)。
- Jboss:是一个遵从JavaEE 规范的、开放源代码的、纯 Java 的EJB服务器,它支持所有的JavaEE规范(免费)。
- GlassFish:由Oracle 公司开发的一款Javaweb 服务器,是一款强健的商业服务器,达到产品級质量(应用很少〉。
- Resin:是CAUCHO 公司的产品,是一个非常流行的服务器,对servlet 和 JSP提供了良好的支持,性能也比较优良,resin 自身采用 JAVA 语言开发(收费,应用比较多)。
- weblogic:是 oracle 公司的产品,是目前应用最广泛的web 服务器,支持 JavaEE 规范,而且不断的完善以适应新的开发要求,适合大型项目(收费,用的不多,适合大公司)。
2 Tomcat安装与配置
2.1 Tomcat服务器简介与版本
Apache Tomcat 是由 Apache Software Foundation(ASF)开发的一个开源 Java WEB 应用服务器。由于 Tomcat 是由 Java 语言实现的,因此需要运行在 Java 虚拟机上,所以使用前要先安装 JDK,以提供运行环境。
Tomcat 实现的几个 Java EE 规范中,有一个很重要的规范 Servlet,通过它我们可以运行自己编写的 Servlet 应用程序处理动态请求,即实现动态页面。
而Tomcat 的 Connector 组件实现了 HTTP 请求的解析,可以把 Tomcat 看作是一个 HTTP 服务器,Tomcat 可以通过 Connector 组件接收 HTTP 请求并解析,然后把解析后的信息交给 Servlet 处理:
- 对于静态资源(html/css/js 等)请求:Tomcat 提供默认的 Servlet 来处理响应
- 对于动态请求:可以映射到自己编写的 Servlet 应用程序来处理
2.2 Tomcat服务器的安装
2.2.1 Windows下Tomcat的安装与启动
- 进入 Tomcat 官网:https://tomcat.apache.org/
- 选中Tomcat8(以Tomcat8为例)
- 选择 zip 压缩包,下载后解压即可
- 打开 Tomcat 文件夹,进入
bin
目录,双击startup.bat
就可以运行 Tomcat 服务器
2.2.2 Linux下Tomcat安装与启动
1️⃣首先切换到 opt 目录(opt 是给主机额外安装软件(安装包)所存放的目录)
cd /opt
2️⃣通过 wget 方式来下载 Tomcat 的安装包
wget https://mirrors.cnnic.cn/apache/tomcat/tomcat-8/v8.5.73/bin/apache-tomcat-8.5.73.tar.gz
3️⃣将下载的 Tomcat 压缩包进行解压
tar xzf apache-tomcat-8.5.73.tar.gz
4️⃣通过
startup.sh
运行 Tomcat 服务器
/opt/apache-tomcat-8.5.73/bin/startup.sh
2.3 Tomcat启动测试
打开浏览器,在浏览器地址栏中输入以下地址进行测试(任选):
1. http://localhost:8080
2. http://127.0.0.1:8080
3. http://真实ip:8080
Tomcat 的默认端口号为 8080(可以在 conf 目录中手动修改)
找到conf目录下的server.xml配置文件,修改connector标签的属性。修改完毕后,需要重启Tomcat才能生效。
当出现以下界面则代表启动成功:
如果你想要访问其他人的 Tomcat,要么他人 Tomcat 使用的是外网 IP,要么你和他的外网必须相同,即在同一局域网下。只有这两种情况你才能访问到他人的 Tomcat,否则就访问不了
当前我们使用的 IP 协议是 IPv4,这个协议下的 IP 地址是一个32位、4个字节的整数,由于该数字并不大,但是全世界联网的设备已经超过了这个数字,因此想要每台主机都有一个独立的 IP 地址是不够的。
因此就采用了 NAT 机制,即多台主机使用一个外网 IP,外网是不同重复的,并且每个相同的外网下的不同主机都有自己独自的内网 IP。如此一来,就很好的解决了 IP 地址不够的问题。
2.4 如何关闭Tomcat
有以下三种方式:
- 点击tomcat服务器窗口的退出按钮;
- 将tomcat服务器置为当前窗口,并按下快捷键:
ctrl+c
- 找到Tomcat的bin目录下的shutdown.bat并双击,即可停止Tomcat服务器。
2.5 Tomcat目录结构
- bin:专门用来存放Tomcat服务器的可执行程序
- conf:专门用来存放Tomcat服务器的配置文件
- lib:专门用来存放Tomcat服务器的jar包
- logs:专门用来存放Tomcat服务器运行时输出的日记信息
- temp:专门用来存放Tomcat运行时产生的临时数据
- webapps:专门用来存放部署的Web工程
- work:是Tomcat工作时的目录,用来存放Tomcat运行时jsp翻译为Servlet的源码和Servlet钝化的目录。
3 在Tomcat服务器上部署Web工程
3.1 两种部署Web工程的方式
方式1️⃣ 将Web工程的目录拷贝到Tomcat的webapps目录下即可
尝试将之前学习JQuery所完成的项目拷贝到了Tomcat的webapps目录下,项目名称为html,如果想要访问该项目下的某一文件,则只需要在原有访问Tomcat地址的基础上增加项目文件路径,如下图所示:
方式2️⃣ 找到 Tomcat 下的 conf目录 \Catalina\localhost 创建如下的配置文件:
<Contextpath="/xxx"docBase="C:\xxx"/>
- Context 表示一个工程上下文
- path 表示工程的访问路径
- docBase 表示工程目录的位置
此时如果想要访问web项目,则需要在Tomcat的地址后加上
/配置文件/要访问的文件
3.2 手托html与浏览器地址访问html的区别
何为手托?
所谓手托,就是找到html文件直接拖入浏览器的打开方式。
手托html的方式:
手托页面到浏览器,此时浏览器中的地址如图所示:
此时使用的协议是
file://协议
file协议表示告诉浏览器直接读取 file 后面的路径,直接解析展示在浏览器即可。
浏览器地址访问的方式
如果是在浏览器的地址栏中输入访问地址:
http://ip:port/工程名/资源名
此时使用到的就是http协议,也就是说 客户端将地址以请求的形式发送给服务器(Tomcat),而服务器通过解析,明确了需要哪个文件,读取需要访问的资源文件,然后回传给客户端内容。客户端得到需要的内容,才解析显示在浏览器上。 图示如下:(图片出处:尚硅谷JavaWeb全套教程)
4 IDEA整合Tomcat服务器
- Setting下添加Tomcat服务器
- 将Tomcat服务器的路径添加,并应用
- 创建新Moudle的时候,可以选择Tomcat服务器整合
5 动态的Web工程
5.1 静态和动态的区别
静态和动态的最大区别:静态页面就是内容始终固定的页面,即使用户不同、时间不同、输入的参数不同,页面内容也不会发生变化。除非网站的开发人员修改源代码,否则页面的内容始终不变。
5.2 IDEA创建动态的web工程
- 新建模块
- 如下图所示配置Module:
- 动态Web工程创建完毕
5.3 动态Web工程目录介绍
一般情况下,会在WEB-INF目录下新建一个目录lib,Web工程的目录如下如所示:
- webapp: 专门用来存放web工程的资源文件,如:html页面、css文件、js文件等。
- WEB-INF目录是一个受服务器保护的目录,浏览器无法直接访问到此目录的内容。
- web.xml: 是整个动态web工程的配置部署描述文件,可以在这里配置很多web工程的组件,比如:Servlet程序、Filter过滤器、Listener监听器、Session超时等。
- lib: 一般用来存放第三方的jar包,需要自己配置导入。
5.4 如何在IDEA中部署工程到Tomcat运行
- 建议修改 web 工程对应的 Tomcat 运行实例名称,即web工程对应的Tomcat运行实例
- 确认Module在Tomcat服务中
- 可以选择修改 Tomcat实例 启动后的默认访问地址
- 启动 Tomcat 实例
版权归原作者 兴趣使然黄小黄 所有, 如有侵权,请联系我们删除。