文章目录
一.Tomcat安装
-
Tomcat是使用Java语言编写的一个服务器(程序),要运行Tomcat,必须得有jre.
-
安装启动:
32位的JDK —>32位的Eclipse—>32位Tomcat
64位的JDK —>64位的Eclipse—>64位Tomcat- 安装目录不能使中文的,并且安装路径不允许出现空格.
如:D:\openSource\apache-tomcat-7.0.76:我们把该路径称之为Tomcat的根路径 - 启动Tomcat服务器:Tomcat根/bin/startup.bat.
但是提示:必须先配置JAVA_HOME或者JRE_HOME的环境变量:
一般的我们只配置JAVA_HOME:配置为JDK的根路径
JAVA_HOME=D:\Java\jdk1.7.0_79
配置好之后,再点击Tomcat根/bin/startup.bat:知道控制台没有打印重大的错误,Exception,没有一闪而过,就表示启动成功.
Tomcat的默认端口是8080: - 安装目录不能使中文的,并且安装路径不允许出现空格.
-
访问:
打开浏览器:http://服务器所在主机的IP:服务器的端口号/资源名字
http://服务器所在主机的名字:服务器的端口号/资源名字
-
若服务在本机:
http://本机的IP:服务器的端口号/资源名字http://127.0.0.1:服务器的端口号/资源名字
http://localhost:服务器的端口号/资源名字
http://localhost:8080/index.jsp
二.Tomcat的常见配置
- Tomcat的默认端口是8080:
但是,HTTP协议的默认端口是80.
而我们在访问的时候,都是遵循于http协议的.
http://localhost:8080/index.jsp
- 如果是80端口:
http://localhost:80/index.jsp
http://localhost/index.jsp
Tomcat根/conf/server.xml文件中,默认第71行.
![image][80]
配置文件改变之后,需要重新启动Tomcat.
三.JavaWeb项目结构
![image][structure]
四.基于Eclipse搭建纯JavaWeb项目
步骤:
- 搭建一个Java项目:
- 在该项目下新建一个文件夹,表示根,名字为:webapp(名字随意)
- 在webapp下新建一个文件夹,名字为WEB-INF
- 在WEB-INF中新建一个文件夹,名字为classes
- 在WEB-INF中新建一个文件夹,名字为lib
- 去Tomcat根/webapps/ROOT/WEB-INF目录下拷贝一个web.xml文件到WEB-INF下(只保留头和根元素)
- 改变该项目的输出目录:也就是改变classpath的路径,从默认的bin目录该变为webapp/WEB-INF/classs中
四.Tomcat插件
给Eclipse安装Tomcat的插件:
- 在需要被装插件的Eclipse根/dropins目录
- 把插件的jar包拷贝到该目录下
- 重新启动Eclipse.看效果,若看到3只可爱的小猫咪,表示插件安装成功.
- 把插件跟Tomcat服务器做关联.
五.部署Web项目
- 方式1:直接把项目的web根路径,拷贝到Tomcat根/webapps目录中.
该方式,可行,而且是MyEclipse工具的部署方式.- 缺点:
- 不支持热部署.(代码变动之后,需要重新部署,重新部署的成本很大).
- 把所有的项目都部署在该路径,启动越来越慢,若其中有一个项目有问题,Tomcat是启动不了.
- 缺点:
- 方式2:告诉Tomcat服务器,从指定的路径去部署项目.(推荐)
- 找到Tomcat根/conf/server.xml文件.
- 在元素之间,编写元素,具体代码如下:
<Context docBase=“web项目的根路径” path=“上下文路径”/> - 访问当前项目的路径:http://ip:port/contextPath/资源名称.
注意:多个<Context>元素的path绝对不能相同.
- 方式3:从Tomcat5.5开始推荐使用另外的一种方式来部署项目:(其本质和方式二相同)
步骤:- 找到Tomcat根/conf/Catalina/localhost新建一个xml文件:比如abc.xml
内容是:<Context docBase=“D:\JavaPros\pureWeb\webapp”/> - 此时该文件的名字,就相当于是第一种方式的path值(上下文名字)
访问: http://localhost/abc/index.html
- 找到Tomcat根/conf/Catalina/localhost新建一个xml文件:比如abc.xml
六.虚拟主机配置
需求:有两个公司的Web应用都发布在同一个Tomcat服务器上,可以为每家公司创建一个虚拟主机.
www.google.com | www.baidu.com
google | baidu
修改Windows系统中的C:\WINDOWS\system32\drivers\etc\hosts.
配置二级域名,会使用到.
百度:baidu.com
百度的二级域名:music.baidu.com/map.baidu.com.
七.Get和Post请求
-
GET方式请求:
- 请求的数据全部在浏览器的地址栏(很不安全).
http://localhost/form.html?xx=xx&xx=xx - 观察请求信息:请求信息会全部存储到请求行中.
GET /form.html?xx=xx&xx=xx HTTP/1.1
- 请求的数据全部在浏览器的地址栏(很不安全).
-
POST方式请求:
- 请求的数据不会出现在浏览器的地址栏(比较安全).
- 观察请求信息:请求信息会全部存储到请求实体中
POST /form.html HTTP/1.1
-
GET和POST请求的区别:
- GET的请求数据在地址栏,而POST不会.
POST比GET更安全. - POST请求的参数存放于请求实体中,而GET存放于请求行中.
- GET方式请求的数据不能超过2K,而POST没有上限.
比如文件上传时,必须使用POST方式. - GET可以缓存,而POST没有缓存.
查询的时候使用使用GET.其他时候使用POST.
- GET的请求数据在地址栏,而POST不会.