1.JavaWeb概念
1.1 什么是JavaWeb?
所有通过java语言编写的可以直接通过浏览器访问的程序的总称,叫做JavaWeb.
1.2 什么是请求?
请求是指客户端给服务端发送数据,称为
request
1.3 什么是响应?
响应是指服务端给客户端回传数据,称为
response
1.4 请求和响应的关系
请求和响应是成对存在的,有请求就有响应。
请求和响应是JavaWeb的核心!!!
2.Web资源的分类
web资源按照实现的技术和呈现的效果不同,可以分为:
- 静态资源
html、css、js、txt、mp4视频、jpg图片等。 - 动态资源
jsp页面、Servlet程序、php等。
3.常用的Web服务器
- Tomcat
由Apache组织提供的1一个Web服务器,提供对jsp和servlet的支持,是一种轻量级的javaWeb容器(服务器),它是免费的。 - Jboss
是一个遵从JavaEE规范的、开放源代码的、纯java的EJB服务器,支持所有的JavaEE规范(免费)。入门门槛高,不推荐!!! - GlassFish
由Oracle公司开发的一款JavaWeb服务器,是一款商业服务器(收费),达到产品级质量(应用很少) - Resin
是CAUCHO公司的产品,一个非常流行的服务器,对jsp和servlet提供了良好的支持,性能优良,它是采用java语言开发的(收费,应用比较多)
5.WebLogic
是Oracle公司产品,目前应用最广泛服务器,支持javaEE规范,并且不断完善以适应新的开发要求,适合大型项目(收费,用的不多,适合大公司)
4.Tomcat服务器和Servlet版本的对应关系
目前企业常用的版本为7.和8.
Servlet的分水岭:Servlet3.0
Servlet程序从2.5版本和之前是使用xml配置的,其中2.5版本使用最广泛。
Servlet3.0之后,就是注解版的servlet!
5.Tomcat的安装
5.1 安装
- 找到官网点击。
- 点击Tomcat8
- 下载对应版本,我是windows64位的。
- 下载完成后解压到一个最好没有中文路径的目录下
解压后的目录结构如下:
各个目录的作用说明:
bin: 用于存放Tomcat服务器的可执行程序。
conf:用于存放Tomcat服务器的配置文件。
lib: 用于存放Tomcat服务器的jar包(javaEE的规范类的字节码文件)
temp:用于存放Tomcat服务器运行时产生的临时数据文件。
webapps:用于存放部署在服务器上的Web工程(一个文件夹对应一个Web工程)
work:Tomcat工作时的目录,用于存放Tomcat运行时jsp翻译为Servlet的源码,以及Session序列化(钝化)的目录。
5.2 启动Tomcat服务器
方法一:找到Tomcat安装目录里面的bin目录下的startup.bat,双击它运行。此时会出现两种情况:
-
出现一个黑色的窗口,然后一段时间后,会出现如下信息,则代表启动成功!
这里的7115ms代表启动Tomcat服务器所花费的时间,不同的电脑配置启动的时间会有所差异! -
如果出现一个黑色的窗口一闪而过的话,那就证明启动失败,此时的原因就在于JAVA_HOME配置出现问题!
JAVA_HOME常见的配置问题:- JAVA_HOME必须全部大写。
- JAVA和HOME之间必须是下划线。
- 关于jdk路径的错误,只需要配置路径到jdk目录即可,后面不要加其他的目录,比如bin等。
如何检验是否真正成功?
在浏览器中输入以下地址之一,然后回车,查看是否出现下列网页,如果出现,则成功安装!
- http://localhost:8080/
- http://127.0.0.1:8080/
- http://本机的ip地址:8080/ 如何查看本机ip地址?windows+r组合键输入 ipconfig 查看本机的ip地址
方法二:使用windows+r 然后输入cmd,然后一步一步地切换到Tomcat安装目录的bin目录下,输入catalina run,此时也会启动Tomcat服务器,它的优势在于:当JAVA_HOME配置出现问题时,它可以报错,而不是直接一闪而过,更加人性化!!
查看JAVA_HOME的配置情况以及环境变量配置方法:
鼠标右击此电脑---->属性---->高级系统设置---->环境变量---->在系统变量中找到JAVA_HOME(如果没有这个可以新建一个JAVA_HOME变量名)
可以看到我的jdk安装目录为C:\Program Files\Java\jdk1.8.0_221下!
5.3停止Tomcat服务器
- 关闭命令行窗口。
- 快捷键ctrl+c
- 找到Tomcat安装目录的bin目录下的shutdown.bat,双击以停止! (最多使用)
5.4 修改Tomcat服务器的端口号
找到Tomcat安装目录的conf目录—>点击server.xml配置文件—>找到<Connector标签>,将里面的port端口号改为另一个数字。
注意: 端口号的范围为1-65535,尽量修改的大一点。修改过后,保存,然后重启Tomcat服务器!
常见服务端口号:
- http:80 默认,不写就是默认为80,它是http服务的默认端口号。
- mysql:3306
- Tomcat:8080
6.部署Web工程到Tomcat服务器上
6.1 方式一:
- 在Tomcat安装目录的webapps目录下新建一个文件夹,该文件夹就代表一个Web工程,我们可以将IDEA中写的一个模块的内容放到该新建的文件夹下,此时就相当于部署了一个Web工程到Tomcat服务器上!
说明:我们在浏览器中访问http://localhost:8080/ 实际上相当于我们此时进入了webapps这个目录的ROOT目录中了(具体下面有解释!)。因此我们如果想访问某个我们自己的资源,也就需要进入到webapps下的某个文件夹下,具体要访问哪个资源就在路径后面加上某个资源的名称即可!
6.2 方式二:
该方式不用受限于必须在webapps下进行部署Web工程。该方式的具体做法是:
- 找到Tomcat安装目录的conf目录下的\Catalina\localhost目录,初始该目录为空。
- 然后在里面新建一个xml文件,名字可以随便取,然后在里面写上如下内容:
<Context path="/abc" docBase="E:\\book(电脑磁盘的任意一个位置,不受限与webapps中!)">
参数解释:
path: 代表web项目的执行上下文路径,即浏览器中访问该项目的目录,即访问到E盘的book目录!
docBase: 代表该Web项目存放的磁盘的位置!
此时浏览器中的地址由localhost:8080/变为localhost:8080/abc/
前者是定位到webapps目录中,后者是定位到具体的Web工程文件夹中!
此时若book中存在一个1.jpg图片,则可以在浏览器中使用localhost:8080/abc/1.jpg
注意:建立的xml文件格式必须是utf-8!!!
7.手托资源到浏览器和通过浏览器访问服务器资源的区别
名词解释:手托资源
也就是我们在自己的电脑磁盘中找到一个资源,比如index.html,然后直接将其拖到浏览器中,此时在浏览器中会展示我们的资源内容。
它们二者之间的区别如下:
手托资源用的是file协议,而浏览器访问用的是http协议! 二者有本质的区别!
8.ROOT工程的访问,以及默认index.html页面的访问
当在浏览器中输入http://localhost:8080/,在没有工程名的时候,默认的工程就是webapps中的ROOT工程!
当在浏览器中输入:http://localhost:8080/工程名,在没有资源名时,默认访问的资源就是index.html
实验:将ROOT工程中的index.jsp改为index.html,此时通过http://localhost:8080/访问到的资源就是index.html而不是index.jsp了!
结果如下:
9.IDEA整合Tomcat服务器
主要步骤:
- 在idea中的一个项目下新建一个Module,该Module就是你的Web工程名。
- 选择Java Enterprise版本。
- 然后开始引入Tomcat服务器,引入的方式有两种:
方式一:
方式二:
以上两种方式均可以添加多个Tomcat服务器,下次在建立工程时,就可以选择不同的Tomcat版本!
9.IDEA配置Web动态工程步骤及各个目录的作用:
10.给Tomcat添加第三方jar包
方式一:前面已经在web目录下创建了一个lib文件夹,然后在里面添加要添加的jar包,然后右键选择Add as Library,此时才生效!
方式二:
方式二的前提是步骤和方式一完全相同,只是将方式一的右键的Add as Library 改为了下面的操作!
file—>Project Structure—>Library—>点击加号—>选择java—然后选择jar包—>choose modules(选择要作用的模块名)—>此时在Artifacts中会有一个fix选项(也可能出现在Problems中),然后点击fix即可导入包即可。