JavaWEB
1.Internet是一个由位于世界不同地方的众多计算机网络和网络设备互联而成,这些网络一般都遵循一组开放的通信协议(TCP/IP协议),形成逻辑上单一巨大的国际网络。这种将计算机网络互相连接在一起的方法可称作“网络互联”,在这基础上发展出覆盖全世界的全球性互联网络就称为Internet。
Web是分布在全世界的、基于HTTP通信协议的、存储在Web服务器中的所有互相链接的超文本集。
HTTP: 超文本传输协议,是专门为web设计的一种网络通信协议Intranet内联网,或称企业内部网
Web的特点:
1.Web是一种分布式超媒体系统
2.Web是多媒体化的和易于导航的
3.Web与平台无关
4.Web是动态的
5.Web是交互的
TCP/IP协议是Internet最基本的协议,由网络层的IP协议和传输层的TCP协议组成。
4层体系结构:
网络接口层:负责将IP分组封装成适合在具体的物理网上传输的帧。
网络层(IP层):解决网络互联中的IP分组的寻址问题
传输层(TCP层):负责维护信息段的完整性,提供端到端的通信应用层:提供了网上计算机之间的各种应用服务,如FTP, TELNET, DNS, SMTP, POP3, HTTP协议。
FTP是文件传输协议,一般提供上传下载FTP服务
Telnet是用户远程登录服务,使用明码传送,保密性差,简单方便
DNS是域名解析服务,提供域名到IP地址之间的转换
SMTP是简单邮件传输协议,用来控制信件的发送、中转
POP3是邮局协议第3版本,用于接受邮件ICMP是网络层的补充,可以回送报文,用来检测网络是否通畅
ARP是正向地址解析协议,通过已知的IP,寻找对应主机的MAC地址
RARP是反向地址解析协议,通过MAC地址确定IP地址
UDP是面向无连接的通信协议
HTTP处理一次事务的4个步骤
1.客户端浏览器与Web服务器建立连接
2.客户端浏览器向Web服务器提出请求,在请求中指明所要求的特定文件
3.Web服务器响应客户端浏览器的请求
4.客户端浏览器与Web服务器断开连接CSS(级联样式表)样式是HTML的扩展,可把页面显示样式与显示内容分开。把网页展示的样式从网页中独立出来集中管理
Css常用选择器及格式
Html选择器 标记{}
Class选择器 *.类名{} 标记.类名{}
Id选择器 #标识{} 标记#类名{}
Css布局理念:先将页面用div分块,然后设计各块位置,用css定位,最后往各个板块中添加相应的内容。
JavaScript是一种嵌入在HTML文档中,具有跨平台性、安全性,基于对象和时间驱动的解释型编程脚本语言。
Js特点:1.是一种脚本语言2.基于对象3.是一种安全性语言4.跨平台性5.动态(开发的页面是动态的)
JQuery是一个JavaScript函数库,极大地简化了JavaScript编程。
JSP是一种运行在服务器端的脚本
Jsp运行过程
1.客户端向服务器发出请求
2.jsp服务器将jsp翻译成servlet源代码(.java代码
3.将产生的java代码进行编译,使之成为.class文件,将.class文件加载到内存中执行
4.把执行后的结构(html文本)作为响应发至客户端由浏览器解释显示JSP指令:page指令、include指令、taglib指令JSP动作:jsp:include动作、jsp:forward动作、jsp:plugin动作、jsp:useBean动作、jsp:setProperty动作、jsp:getProperty动作、jsp:param动作;
JSP内置对象:request、response、session、out、application、page、pageContext、config、exception
B/S:Web浏览器/Web服务器工作模式
C/S:客户端/服务器模式
JDBC是一种访问数据库的技术标准,它是一种能通过Java语言访问数据库的应用程序接口(JDBC API),由一组用Java语言编写的类和接口组成。
连接数据库的基本过程1.建立数据源2.导入用到的包3.加载驱动程序4.创建与数据库的连接5.创建语句对象6.编写SQL语句7.执行SQL语句8.处理得到的结果集9.关闭相关对象10.处理异常
Servlet是用Java语言编写的服务器端程序,它担当客户请求与服务器响应的中间层,属于JavaEE中间层技术,是由服务器端调用和执行的,可以处理客户端传来的HTTP请求,并返回一个响应。servlet是按照servlet自身规范编写的java类,独立于平台,必须运行在支持java技术的web服务器中。
生命周期:加载,初始化,调用,销毁1.servlet容器加载servlet类并实例化一个servlet实例对象
2.servlet容器调用该实例对象的init()方法进行初始化
3.如果servlet容器收到对该servelt的请求,则调用此实例对象的service()处理请求并返回响应结果
4.servlet容器卸载该servlet前调用它的destory()方法
Filter(Servlet过滤器)是在服务器上运行的,且位于请求与响应中间起过滤功能的程序。是一个java组件,能改变HTTP请求、响应及头信息中内容的可重用代码。JavaBean:是javaweb程序的重要组成部分,是一个可以重复使用的软件组件,是一个遵循特定写法的java类,它封装了数据和业务逻辑,供jsp或servlet调用,完成数据封装和数据处理功能。
〈jsp:useBean〉声明并创建JavaBean对象实例
〈jsp:setProperty〉对JavaBean对象的指定属性设置值
〈jsp:getProperty〉获取JavaBean对象指定属性的值并显示在网页上MVC是软件工程中的一种软件架构模式。
MvC模式将整个应用系统分为三个基本部分:模型、视图和控制器
模型:体现应用程序的功能,用于封装应用程序业务逻辑视图:主要用于描述模型。
视图能够实现模型有目的的显示,允许一个模型对应多个视图控制器:用于控制应用程序的流程。
控制器处理事件并做出响应,事件包括用户的行为和数据模型的改变。用户与视图交互时,可以通过控制器来更新模型状态,通知视图刷新显示
优点:1.系统业务逻辑由模型来实现,视图负责数据的呈现,实现了业务逻辑和表示的分离,多个视图共享一个模型,大大提高了代码的可重用性
2.模型自包含的,与控制器和视图保持相对独立,方便更改应用程序的数据层和业务逻辑
3.控制器提高了应用程序的灵活性和可配置性缺点:增加了应用的复杂性,不适合中小型规模应用程序Model2系统是指基于MVC架构来构建java web应用的开发模式。
3个层次
1.视图层 主要充当用户的操作接口,负责数据的输入及结果的输出
2.控制层 控制整个应用的流程。将视图层提交的数据,交付给业务逻辑层处理,并将结果返回至视图层
3.业务逻辑层 应用的核心部分,主要功能包括数据处理,数据的维护及业务逻辑的实现
Model2系统的行为时序
1.Servlet充当控制器的角色,负责接受客户端请求并处理请求
2.根据请求类型,Servlet可以直接存取数据库中的数据,也可创建JavaBean并将请求的结果作为初始化参数传入JavaBean中
3.Servlet将请求传送给适当的JSP,用于显示结果
4.JSP从JavaBean中读取数据,由JavaBean与数据库进行交互
5.JSP返回客户端
Jsp内置对象
1.request对象主要用于接受客户端通过http协议连接传输到web服务器端的数据,用来封装一次请求,客户端的请求参数都被封装在该对象里。当客户端通过http协议请求一个jsp页面时,jsp容器会自动创建request对象并将请求信息包装到request对象中,当jsp容器处理完成后,request对象就会销毁。
2.response对象用于响应客户请求,由服务器向客户端发送数据,当服务器向客户端传送数据时,jsp容器会自动创建response对象并将信息封装,当jsp容器处理完请求后response对象会被销毁。〈jsp:forward〉动作只能在本网站内转向,response对象的sendredirect方法可以跳转到任何界面。两个都可以使页面重新定向。
3.session对象用于保存客户访问网站期间,在多个页面之间跳转浏览的信息,从客户打开浏览器并连接到服务器开始,到客户关闭浏览器离开服务器为止,成为一个会话。当用户与服务器连接时,服务器为每个用户创建一个session对象,并设定其中内容。创建的session对象之间相互独立,服务器可以借此来辨别用户信息,进而提供个别服务。session常常用于跟踪用户的会话信息,其属性可在多个页面之间共享。
4.application对象是服务器运行期间所有客户共享的对象。它用于客户之间的数据共享,类似于服务器运行期间的全局变量。服务器启动后,新建一个application对象,在多个客户访问时共享同一个对象,服务器关闭后,释放该application对象。
不同:1每个客户拥有自己的session对象,保存客户自有信息,所有客户共享同一个application对象
2session对象生命期从客户打开浏览器与服务器建立连接开始,到客户关闭浏览器为止,在客户的多个情求期间持续有效。application对象生命期从服务器启动开始,到服务器关闭为止。
3使用session对象存储某个客户在一个会话期间的数据。使用application对象存储服务器运行期间所有客户共享的变量。
5.out对象是向客户端输出流进行写操作的对象,用于各种数据的输出。与response对象不同,通过out对象发送的内容将是浏览器需要显示的内容,是文本一级的。它的生存期是当前页面。每个jsp页面都有一个out对象,out对象发送的内容具有文本性质。
6. Exception对象用来发现,捕获和处理异常。getMessage()方法:获取异常信息toString()方法:获取该对象的简短描述。