软件体系结构
html
一、常见软件系统体系结构B/S C/S
1.1 C/S
C/S结构即客户端/服务器(Client/Server),例如QQ;
须要编写服务器端程序,以及客户端程序,例如咱们安装的就是QQ的客户端程序;
缺点:软件更新时须要同时更新客户端和服务器端两端,比较麻烦;
优势:安全性比较好。
1.2 B/S:
B/S结构即浏览器/服务器(Browser/Server);
优势:只须要编写服务器端程序;
缺点:安全性较差。
二、Web资源
2.1 Web资源介绍
html:静态资源;
JSP/Servlet:动态资源。
除了JavaWeb程序,还有其余Web程序,例如:ASP、PHP等
2.2 静态资源和静态资源区别[图解]

2.3 访问Web资源
打开浏览器,输入URL:
协议名://域名:端口/路径,例如:http://www.baidu.com:8080/index.html
三、Web服务器
Web服务器的做用是接收客户端的请求,给客户端做出响应。
对于JavaWeb程序而已,还须要有JSP/Servlet容器,JSP/Servlet容器的基本功能是把动态资源转换成静态资源,固然JSP/Servlet容器不仅这些功能。
咱们须要使用的是Web服务器和JSP/Servlet容器,一般这二者会集于一身。下面是对JavaWeb服务器:
Tomcat(Apache):当前应用最广的JavaWeb服务器;
JBoss(Redhat红帽):支持JavaEE,应用比较广;EJB容器
GlassFish(Orcale):Oracle开发JavaWeb服务器,应用不是很广;
Resin(Caucho):支持JavaEE,应用愈来愈广;
Weblogic(Orcale):要钱的!支持JavaEE,适合大型项目;
Websphere(IBM):要钱的!支持JavaEE,适合大型项目;
四、Tomcat[点击点跳转]
web
五、WEB应用
静态网站:
在webapps目录下建立一个目录(命名必须不包含中文和空格),这个目录称之为项目目录;
在项目目录下建立一个html文件;
动态网站:
在webpass目录下建立一个项目目录;
WEB-INF目录;
在WEB-INF目录下建立web.xml文件
建立静态或动态页面浏览器
六、MyEclipse建立JavaWeb应用[点击点跳转]
7.HTTP协议(重点)
协议:协议的甲乙双方,就是客户端(浏览器)和服务器!理解成双方通讯的格式!
做用:浏览器客户端和服务器交互规范和协议
1. HttpWatch
HttpWatch是专门为IE浏览器提供的,用来查看HTTP请求和响应内容的工具。而FireFox上须要安装FireBug软件。若是你使用的是Chrome,那么就不用自行安装什么工具了,由于它自身就有查看请求和响应内容的功能!HttpWatch和FireBug这些工具对浏览器而言不是必须的,但对咱们开发者是颇有帮助的,经过查看HTTP请求响应内容,可使咱们更好的学习HTTP协议。
2. HTTP概述
HTTP(hypertext transport protocol),即超文本传输协议。这个协议详细规定了浏览器和万维网服务器之间互相通讯的规则。
HTTP就是一个通讯规则,通讯规则规定了客户端发送给服务器的内容格式,也规定了服务器发送给客户端的内容格式。其实咱们要学习的就是这个两个格式!客户端发送给服务器的格式叫“请求协议”;服务器发送给客户端的格式叫“响应协议”。
Http:工做原理:
- 客户端与服务器端建立链接
- 客户端向服务器发送请求
- 服务器将数据响应给客户端
- 链接断开
http:版本和特色
http1.0 版本 ,不支持持续链接 (一次请求和响应 ,链接断开一次)
http1.1 版本 能够保持持续链接
http2.0版本
特色:http是无状态协议:http不会保存用户名等信息
http基本结构主要分两个部分:请求和响应部分
3. 请求协议格式:请求首行;请求头信息;空行;请求体。
浏览器发送给服务器的内容就这个格式的,若是不是这个格式服务器将没法解析!在HTTP协议中,请求有不少请求方法,其中最为经常使用的就是GET(默认)和POST。不一样的请求方法之间的区别。
4.响应协议格式:响应首行;响应头信息;空行;响应体。5.响应码 响应头对浏览器来讲很重要,它说明了响应的真正含义。例如200表示响应成功了,302表示重定向,这说明浏览器须要再发一个新的请求。200:请求成功,浏览器会把响应体内容(一般是html)显示在浏览器中;404:请求的资源没有找到,说明客户端错误的请求了不存在的资源;500:请求资源找到了,但服务器内部出现了错误;302:重定向,当响应码为302时,表示服务器要求浏览器从新再发一个请求,服务器会发送一个响应头Location,它指定了新请求的URL地址;304:当用户第一次请求index.html时,服务器会添加一个名为Last-Modified响应头,这个头说明了index.html的最后修改时间,浏览器会把index.html内容,以及最后响应时间缓存下来。当用户第二次请求index.html时,在请求中包含一个名为If-Modified-Since请求头,它的值就是第一次请求时服务器经过Last-Modified响应头发送给浏览器的值,即index.html最后的修改时间,If-Modified-Since请求头就是在告诉服务器,我这里浏览器缓存的index.html最后修改时间是这个,您看看如今的index.html最后修改时间是否是这个,若是仍是,那么您就不用再响应这个index.html内容了,我会把缓存的内容直接显示出来。而服务器端会获取If-Modified-Since值,与index.html的当前最后修改时间比对,若是相同,服务器会发响应码304,表示index.html与浏览器上次缓存的相同,无需再次发送,浏览器能够显示本身的缓存页面,若是比对不一样,那么说明index.html已经作了修改,服务器会响应200。get请求和post请求的区别参数:get是url后边;post 能够写在url后边 ,经过请求体发送数据安全性:get不安全;post相对安全传输的数据量:get传输的数据量有限;post请求理论上无限大