02_tomcat与web程序结构与Http协议与HttpUrlConnection

来源:互联网 发布:php扩展 版本适配 编辑:程序博客网 时间:2024/04/29 11:40
一、Schema:
1.DTD的局限性:数据类型--->字符串.Schema有比DTD更严格的语义和语法约束,Schema语法也是xml,更易被解析器解析
2.Schema的根节点就是schema
3.Schema的快速入门:
1).创建一个Schema文档,schema.xsd
2).在schema文档中引w3c预定义的文档,通过名称空间引入xmlns
3).在schema文档中定义元素的个数
4).将元素分类:
简单元素(直接是文本内容):直接写类型 type
复杂元素(包含子元素):加上子标签<complexType>;子元素是否是有序的<sequence>(有序)
5).在schema文档中,将自定义的元素和属性绑定到一个名称空间上,名称可以是任意的,通常使用URL
6).在xml中引入w3c的实例文档
7).在xml中引入自定义的schema文档
8).在xml中告诉schema的存放位置
4.名称空间:
1).xml文档可以引入一个DTD,但是可以引入多个Schema,通过名称空间区分元素来自于哪个schema
2).xmlns:引入名称空间 如果存在多个,通过前缀进行区分来自于哪个schema
二、javaweb服务器:
1.软件的架构:
1).C/S:Client/Server:客户杜和服务端:QQ、迅雷、暴风影音
优点:可以在客户端写出很炫的效果
缺点:服务器更新,所有的客户端都需要更新
2).B/S:Broswer/Server:浏览器和服务器:WebQQ、支付宝,不需要安装,只需要浏览器
优点:服务器更新,不需要更新 
缺点:服务器的压力比较大
AJAX --- 客户端浏览器上
发展趋势:B/S方向发展
2.web网站资源:
1).静态web资源:html、css、js、图片、视频...
2).动态web资源:servlet、jsp、asp、php、ruby、python
3.常见的服务器:
1).WebLogic:BEA公司产品(Oracle收购),支持所有的javaee规范
2).Websphere:IBM公司产品,支持所有的Javaee规范
3).Tomcat:apache组织,支持servlet/Jsp规范
4.Tomcat:
1).安装配置:
安装在没有 中文 和 空格 的目录下
配置JAVA_HOME
2).启动常见问题:
1'.没有配置JAVA_HOME
2'.端口号冲突:tomcat默认端口号8080,修改端口号:tomcat的config/server.xml 修改后重启tomcat服务器
异常:java.net.BindException:Address already in use:Java_Bind 端口号被占用
查看端口号:dos命令:netstat -ano
3'.配置了CATALINA_HOME 配置错误,tomcat启动不了;
配置正确,启动机器上任何一个tomcat,都相当于启动CATALINA_HOME配置的tomcat
4).Tomcat服务器目录结构:
bin:启动和关闭服务器
conf:tomcat的配置
lib:tomcat支持的类库
logs:tomcat的日志
temp:存放临时文件
webapps:网站 放在该目录下 就可以被其他人访问
work:jsp编译成servlet后的文件,session序列化
5).web应用目录结构:
根目录下:html、css、js、图片
WEB-INF:web.xml--->针对当前项目的配置文件
classes--->java类编译后的class文件,存在在这个路径下
lib--->存放第三方的jar包
6).Tomcat配置虚拟目录:
1'.将项目copy到webapps下
2'.在conf下server.xml中 设置标签<Context>,在<Host>下配置
<Context path="/itheima" docBase="c:\bb"></Context>
3'.在conf下新建一个/Catalina/location/xxx.xml文件,在文件中配置<Context>
<Context docBase="c:\bb"></Context> path就是文件名xxx
7).war包:
1'.jar包:java项目制作而成
2'.war包:web项目制作而成
使用压缩软件,选择zip格式进行压缩
使用开发工具myeclipse发布项目的时候选择package...
8).访问网站过程:
在地址栏中输入地址,去本地hosts文件中查找,如果有,直接返回;
如果没有,则通过网络域名解析器进行解析,找到相应的ip,则返回


三、http协议:
1.http协议:超文本传输协议
2.基于TCP的协议
3.默认端口是80
4.基于请求响应模型
必须先有请求,后有响应
请求和响应必须成对出现
5.通过telnet体验http协议
1).cmd->telnet localhost 80 回车
2).解决telnet命令乱码 ctrl+] 回车
3).telnet命令,不能出错
GET /demo1/1.html HTTP/1.1
host:localhost 两次回车
6.http协议请求方式:
Get:提交的数据显示在地址栏中,提交的数据有大小限制,不能超过1kb,没有请求体
Post:提交的数据不会显示在地址栏中,显示在请求体中,提交数据没有大小限制,有请求体
7.响应:
响应行:
200:请求和响应都OK
302:需要重定向
304:查找本地缓存
404:请求资源不存在
500:服务器内部出错
响应头:
Location:结合302状态码,完成重定向
Last-Modified:和请求If-Modified-Since一起用于查找本地缓存
Refresh:页面自动刷新或跳转
Content—Disposition:下载时候使用的
禁用浏览器缓存:
Expires:-1
Cache-Control:no-cache
Pragma:no-cache
响应体:显示页面中Html的代码
原创粉丝点击