1. javaweb的两种结构
1.1 c/s结构
C/S结构即客户端/服务器(Client/Server),例如QQ就是C/S结构的。我们每个人电脑上都需要安装QQ的客户端,客户端软件向服务器端软件发送请求,服务器端给客户端返回响应。
缺点是当客户端版本更新后,需要手动进行更新,甚至于最早更新,需要删除掉本机的客户端,再去官网下载最新版。
1.2 b/s结构
B/S结构即浏览器/服务器(Browser/Server),例如网站都是B/S结构的。当然,网站也只是B/S结构体系软件中的一种而已。网上银行也都是B/S结构的。
他的优点在于用户只需要下载一个浏览器即可,开发人员只需要更新服务器端,而浏览器端每次打开都会显示最新的内容。
1.3 静态网页和动态网页
静态网页一般有html、htm等,动态网页有php、asp、aspxjsp、.do、.action等。早起Internet上都是静态页面,即html,静态页面的数据是不能变换的,而动态页面的数据是可以变换的,例如:“欢迎! ***”,每次不同人登录都会显示不同人的姓名,并且不需要修改页面,也就是说显示的用户名字是一个变量而非常量,这一点静态页面做不到。
但是动态页面只能在服务端使用,客户端只能识别静态页面。所以用户请求的若是动态页面,则需要服务端先把动态页面转换成静态页面并发给客户端浏览器。
1.4web服务器
Web服务器的作用是接收客户端的请求,给客户端作出响应。
知名Java Web服务器
- Tomcat(Apache):用来开发学习使用;免费,开源
- JBoss(Redhat红帽);
- Weblogic(Orcale):要钱的!使用Tomcat开发,项目写完了,放到Weblogic上运行;
- Websphere(IBM):要钱的!与Weblogic相似。
2. Tomcat的安装
2.1 Tomcat概述
Tomcat服务器由Apache提供,开源免费。开发学习使用最佳选择。安装Tomcat之前需要先安装JDK,其实无论哪一种JavaWeb服务器都需要先安装JDK。我们现在使用的Tomcat版本可以是Tomcat8.5或Tomcat9。
Tomcat6支持Servlet2.5;
Tomcat7,8,9支持Servlet3.0;
2.2 Tomcat的作用
当用户发送过来一个请求,Tomcat用来接收请求,然后给用户返回响应。通常用户用浏览器发送请求,然后Tomcat响应一个html页面。用户也可通过其他途径发送请求,并且Tomcat不一定就响应一个html页面,也可能是一个文件或一个图片等。

2.3 Tomcat的安装
Tomcat安装
解压版Tomcat 只需要解压就能使用,无需安装,这样一台电脑上可以安装多个Tomcat。
启动解压版的Tomcat有点不同,你需要先去配置环境变量:
JAVA_HOME:配置Javahome变量并把他加入到path系统变量中。
启动:在Tomcat安装目录中的bin目录中找到startup.bat文件,然后双击之。
停止:在Tomcat安装目录中的bin目录中找到shutdown.bat文件,然后双击之。
强烈建议使用解压版!!!
2.4 tomcat测试
在bin目录下点击startup.bat启动tomcat。在浏览器地址栏中输入localhost:8080,若是得到tomcat的页面则启动成功。
tomcat的端口号可在server.xml中更改,若是将其改为80端口,则输入地址时只需要输入主机地址即可,不用加:端口号。因为默认端口即为80端口。
3.Tomcat分析
3.1 Tomcat目录结构
bin:该目录下存放的是可执行文件,有startup.bat和shutdown.bat文件,startup.bat用来启动Tomcat,shutdown.bat用来停止Tomcat,但需要先配置JAVA_HOME;
conf:用来写tomcat的配置文件,其目录下有几个最为重要的文件,
其中有:
server.xml:配置整个服务器信息。例如修改端口号,下面会详细介绍这个文件;
web.xml:部署描述符文件,这个文件中注册了很多MIME类型,即文档类型。这些MIME类型是客户端与服务器之间说明文档类型的,如用户请求一个html网页,那么服务器还会告诉客户端浏览器响应的文档是text/html类型的,这就是一个MIME类型。客户端浏览器通过这个MIME类型就知道如何处理它了。当然是在浏览器中显示这个html文件了。但如果服务器响应的是一个exe文件,那么浏览器就不可能显示它,而是应该弹出下载窗口才对。MIME就是用来说明文档的内容是什么类型的!
lib:Tomcat的类库,里面是一大堆jar文件。如果需要添加Tomcat依赖的jar文件,可以把它放到这个目录中,当然也可以把项目依赖的jar文件放到这个目录中,这个目录中的jar所有项目都可以共享之;
logs:这个目录中都是日志文件,记录了Tomcat启动和关闭的信息,如果启动Tomcat时有错误,那么异常也会记录在日志文件中。
temp:存放Tomcat的临时文件,这个目录下的东西可以在停止Tomcat后删除!
webapps:存放web项目的目录,其中每个文件夹都是一个项目;如果这个目录下已经存在了目录,那么都是tomcat自带的。项目。其中ROOT是一个特殊的项目,在地址栏中没有给出项目目录时,对应的就是ROOT项目。
work:运行时生成的文件,最终运行的文件都在这里。通过webapps中的项目生成的!可以把这个目录下的内容删除,再次运行时会生再次生成work目录。当客户端用户访问一个JSP文件时,Tomcat会通过JSP生成Java文件,然后再编译Java文件生成class文件,生成的java和class文件都会存放到这个目录下。
LICENSE:许可证。
NOTICE:说明文件。
3.3 Tomcat结构重点
bin,conf,webapps,work。
bin目录下的文件多为可执行文件,其中bat为windows系统所用的可执行文件,而.sh为Linux系统所用的可执行文件,其中最为多用的是startup及shutdown,用于启动或关闭Tomcat。
conf中是tomcat的配置文件,最重要的是server.xml,可更改配置信息,web.xml说明响应文件类型和文件路径。
webapps用于存放项目,其下的一个文件夹即为一个项目,root文件夹是没有输入具体项目时所调用的项目。
work中会生成项目所用的.java或.class文件,可以删除其中的文件,因为下次运行时还会产生。
4.WEB项目
4.1WEB项目部署后目录结构
Hello(项目文件夹)
······存放web资源(html,jsp,xml,css,js,图片等)
······WEB-INF
············web.xml(配置文件,必须有)
············classes(Java类的编译路径,Servlet、自定义类 )
············lib(存放项目所用jar包)
4.2 Tomcat发布项目
4.3.1 在webapps文件夹下
直接将项目按照结构写在webapps文件夹下即可。
4.3.2 在任意文件夹下
需要在sever.xml文件中配置一条新的元素Context,在host元素内添加context元素,指定其两个属性,其中path指定项目的虚拟路径,而dosBase指定项目的绝对路径。

在访问该项目时,使用虚拟路径访问。
5.Tomcat在idea上的部署
略
6.HTTP协议
6.1 http协议概念
HTTP,即超文本传输协议。所有浏览器都可以发出http协议。
协议:就是规定的文本格式!例如写本书也要有格式,写总结也有格式。当然客户端发送请求也要有格式,这个格式是已经约定的格式,所以服务器端按请求格式来获取请求信息,然后服务器端再按照响应格式来响应,当然客户端还要按响应的格式来解析。
6.2 无状态协议
http是无状态协议
无状态协议就是在用户向服务端发起请求且服务端响应请求并做出应答后,连接断开,直到用户再次发出请求。
无状态协议的优点就是效率高,在做完一次应答后,服务器与用户断开连接,但是用户依然可以看到服务器返回的内容且不占用服务器的资源。
6.3HTTP1.0和HTTP1.1
HTTP1.0:响应结束后,马上断开。
HTTP1.1:必须在请求中包含Host(主机)头信息,并有一个超时时间,响应结束后,等待超时时间再断开,这期间用户有任何请求都可以直接完成, 无需再次连接,
目前浏览器用的都是HTTP1.1协议。
6.4 请求信息
略
本文深入探讨JavaWeb的C/S与B/S结构,详细解析静态网页与动态网页的区别,介绍Tomcat服务器的安装、配置及工作原理。涵盖Tomcat目录结构、项目部署流程与HTTP协议关键知识点。
317

被折叠的 条评论
为什么被折叠?



