一、JavaWeb简介

1、Java Web是用Java技术来解决相关web互联网领域的技术总和

2、Web包括web服务器和web客户端两部分

Java在客户端的应用有java applet(使用的很少)

java在服务器端的应用有比如Servlet,JSP和第三方框架等等

二、应用最多的两种网络应用程序开发体系

1、C/S体系结构(Client客户端/Server服务器)

在这种结构中,服务器通常采用高性能的pc机或工作站,并采用大型数据库系统

客户端则需要安装专用的客户端软件

优点:一对一,请求响应快

缺点:耗费资源

2、B/S体系结构(Browser浏览器/Server服务器)

在这种结构中,客户端不需要开发任何用户界面,而同一采用如IE、Firefox、Chrome等浏览器,

通过web浏览器向web服务器发送请求,由web服务器进行处理,并将处理结果逐级传回客户端。

优点:一对多,节省资源,维护升级简单

缺点:传输数据量大,服务器运行负载较重

三、Web应用程序工作原理

1、静态网站

静态网站使用HTML语言编写,放在Web服务器上,用户使用浏览器通过HTTP协议请求服务器上的Web页面,

服务器上的Web服务器将接收到的用户请求处理后发送给客户端,显示给用户。

2、动态网站

动态网站通常使用HTML语言和动态脚本语言(如JSP、ASP、PHP等)编写,并将编写后的程序部署到Web服务器上,

由Web服务器对动态脚本代码进行处理,并转化为浏览器可以解析的HTML代码,返回给客户端浏览器,显示给客户。

四、Web应用技术

1、客户端应用的技术

HTML语言、CSS、Flash和客户端脚本技术(JavaScript)

2、服务器端应用的技术

CGI(公共网关接口)

ASP(微软研发的技术)

PHP(开源的Web服务器脚本语言)

JSP(Java Server Page)

Servlet(Server和Applet的缩写)

五、HTTP协议(Hypertext Transfer Protocol,超文本传输协议)

1、HTTP协议的主要特点

·支持客户/服务器模式

·简单快速、灵活

·HTTP1.1支持长连接

当一个网页打开完成后,客户端和服务器之间用于传输HTTP数据的TCP连接不会关闭,客户端再次传输数据时会沿用这条连接

·无状态

HTTP协议对事物没有记忆,服务器不知道客户端的状态

2、HTTP之URL

HTTP URL格式:http://host[":"port][abs_path]

http:表示通过http协议来定位网络资源

host:表示合法的Interent主机域名或Ip地址

port:指定端口号,为空则使用缺省端口80

abs_path:请求资源的URI

3、HTTP请求

http请求由三部分组成:请求行、请求头、请求体

请求行由请求方式、URL、协议版本组成

请求头由报头域(名字+“:”+空格+值)组成

Referer:该请求头指明请求从哪里来,通常用来统计工作或防盗链

get方式没有请求体,请求参数直接写在请求行后面

4、HTTP响应

http响应由三部分组成:状态行、消息报头、响应体

状态行由协议版本、状态码、状态描述组成

Refresh:自动跳转,可以在页面通过meta标签实现,也可以在后台实现

六、Servlet的实现

1、创建动态web项目

2、新建类

3、实现Servlet规范(三种方式)

1、继承HttpServlet

2、继承GenericServlet

3、实现Servlet接口

4、重写service方法

5、配置web.xml

向服务器说明,特定请求对应特定资源

七、Servlet执行过程

客户端发出请求,根据web.xml文件的配置找到对应的读取中的值,找到对应的class并加载执行class,返回结果由web服务器响应给客户端

八、Servlet的生命周期

·实例和初始化时机

·就绪/调度/服务时期

·销毁时机

九、Servlet的配置

Servlet出了配置基本的访问信息,还可配置初始化参数、自启动等,并且一个Servlet可以配置多个访问路径,还可以使用通配符*

url-pattern可以配置多个,但多个Servlet不可以配置同一个url-pattern

"*"只能放最前面或最后面不能放中间且不能单独存在,以/分隔不能和单词组成整体,越精确越优先。