最新Web笔记资料.docx
- 文档编号:25603278
- 上传时间:2023-06-10
- 格式:DOCX
- 页数:15
- 大小:20.42KB
最新Web笔记资料.docx
《最新Web笔记资料.docx》由会员分享,可在线阅读,更多相关《最新Web笔记资料.docx(15页珍藏版)》请在冰豆网上搜索。
最新Web笔记资料
Web课堂笔记
1:
servlet入门开发
概念:
接受客户端向服务器发送的请求,对请求进行处理,最后对客户端进行相应,servlet程序必须运行在web容器里面,
由web容器进行调度以及对生命周期进行管理
javax.servlet.*
javax.http.*
开发servlet的步骤:
1、继承HttpServlet,重写doGet或者doPost方法
2:
servlet生命周期
创建:
只被创建一次,单实例,常驻内存
请求进行处理:
service(),根据客户端提交的请求方式自动调用doGet()或者doPost();
init():
对象被创建之后,立即调用该方法,在整个生命周期中被调用一次,可以做资源初始化操作
destroy();在servlet对象被销毁回收之前调用,可以在该方法中做资源释放操作。
2:
实现注册功能
获取客户端提交用户数据
HttpServletRequest
getParameter(Stringname)
String[]getParameterValues(Stringname)
服务器对客户端进行响应:
HttpServletResponse响应对象
1、通过输出流向客户端动态输出一段网页内容
IO流(输入输出流)
2、跳转到已经存在网页中
servlet之间协作
一个请求需要多个servlet来进行处理
1、请求重定向
sendRedirect();
请求(请求a)---->A---sendRedirect()请求a已经结束;重新发送了一个请求b--->B--->响应
2、请求派发
协作之间的servlet处理同一个请求,基于这个特点,可以通过请求对象在多个servlet
之间传递数据
请求对象
1、获取数据
2、乱码处理
gb2312/utf-8
响应对象
1、输出流
2、sendRedirect(Stringurl)
servlet之间协作
1、请求重定向
2、请求派发
reqeust.setAttribute()
request.getAttribute()
-----
会话跟踪技术
http通信协议是一种无状态协议
客户端跟服务器进行会话过程中产生的数据,默认的情况下服务器
不会保存数据
会话跟踪:
在某些特定场合,需要将客户端跟服务器之间的通信数据进行保存或者跟踪
例如:
自动登录,购物车,登录系统之后的操作,都跟当前登录的账号是有关系的
cookie
服务器向客户端保存数据的一种跟踪机制
Cookie(Stringk,Stringv)
cookie的生命周期
1:
默认是被保存在浏览器的缓存当中
2:
setMaxAge(intt)设置cookie的保存方式
-1:
默认的保存方式
0:
cookie不会被保存
>0:
被保存在客户机的磁盘中
cookie的弊端:
1、数据安全问题
2、数据量不宜过大
session
在服务器端保存数据,可以实现在同一网站中
多个不同的请求之间进行数据共享或者跟踪
session原理
1、客户端向服务器发送请求,根据需要创建session对象(服务器自动创建)
并且自动为session对象分配一个sessionId(唯一标识一个session对象)
后续的请求需要session对象,服务器会根据sessionId找到关联的
session对象返回。
如果没有sessionId,服务器会重新创建一个session对象
seesionId--服务器会通过cookie的方式保存在浏览器缓存中
session有效期
指客户端跟服务器进行两次会话的最大间隔时间
默认:
30分钟
关于session的失效
1、超过有效期,自动失效
2、强制失效
invalidate
检查session是否失效
HttpSessionsession=request.getSession(false)
如果session存在则返回,否则返回null。
ServletContext,过滤器,监听器
--------
jsp(javaserverpage)
方便开发动态网页。
静态网页与动态网页的区别:
指数据是否能实时更新或动态加载
jsp(在服务器端进行编译执行的,最终将执行结果显示在客户端)
jsp本质就是servlet
jsp:
html,javascript,css,jsp特有内容
jsp原理:
jsp第一次被请求的时候,web服务器将jsp进行解析(转换成一个servlet),
然后再对servlet进行编译,执行(过程与servlet本身一致)
后续相同的请求,不会将jsp进行编译.直接响应
jsp语法:
1:
插入一段java可执行代码
<%
java代码
%>
2:
声明方法或者声明全局变量
<%!
定义变量或方法
%>
在当前jsp页面有效
3:
输出表达式的值
<%=表达式%>
如果考虑网页元素的结合度,使用该方式比out要灵活
4:
jsp中的注释
---->
如果注释的内容有jsp的代码,仍然会被编译执行。
结果不可见
<%--内容--%>
注释内容不会被编译和执行
5:
jsp的指令
格式:
<%@指令名属性1=值1属性n=值n%>
5.1page指令
表示jsp页面相关的全局信息
import属性导入包
language表示在jsp中的编程语言,只能是java
pageEncoding当前jsp页面中的字符编码集
errorPage表示当前网页出现异常之后,指定跳转的目标网页
isErrorPage如果要在网页中使用exception,必须将该属性设置
为true
buffSize:
输出流的缓冲区大小
autoFlush:
缓冲区满的时候,是否自动刷新
isThreadSafe:
表示是否线程安全
session:
是否支持session会话
5.2include
<%@includefile=""%>
静态包含指定的网页(在包含处将指定网页拷贝过来)
避免java程序命名冲突问题
1、包含的文件,不能是url
2、不能在包含的文件后面传递参数
5.3taglib
内置对象
outrequestresponseexception
session--HttpSession
application--ServletContext
ServletContext--表示整个web应用程序全局上下文环境
request--具备派发关系
session--系统用户级别的共享
application--整个应用程序级别的共享
config--ServletConfig
ServletConfig--表示servlet程序在web.xml中的配置相关信息
config--获得jsp在web.xml中的配置信息
page
表示当前jsp(jsp转译之后的servlet程序)
pageContext
表示当前jsp的页面上下文环境
1、数据的存取
setAttribute()/getAttribute()
作用域是在当前jsp中有效
2、提供了另一种获取jsp内置对象的途径
包装类
int---Integer
Integera=newInteger(4);
自动装箱/拆箱
Integerb=12;
intc=a;
byte--Byte
pageContext,request,session,application
-------------------
EL表达式/标准动作/标签库
作用:
将表达式进行运算输出结果
语法:
${表达式}
${10-3}
el表达式的开关:
page指令中的属性isELIgnored="true|false"
默认false,true--忽略
1、获取存储在四大作用范围中的属性
${范围.属性}
pageContext--pageScope
request--requestScope
session--sessionScope
application-applicationScope
2、自动获取请求提交的参数
request.getParameter("")
${param.参数名}
.../el.jsp?
参数名=值&参数=值
${paramValues.参数名}参数值有多个的情况。
EL表达式
${表达式}
<%@pageisELIgnored="true|false"%>
1、el去获取作用域中的属性
pageContext,request,session,application
${范围.属性}
pageScope,requestScope,sessionScope,applicationScope
2、获取请求提交的参数的值
${param.参数名}
request.getParameter();
${paramValue.参数名}
String[]request.getParameterValues();
--------------
jsp标准动作标签
标准动作:
语法:
动作名属性=值/> 1、简化标准的javabean对象的创建以及对象属性的操作 (vo,dto)--提供私有属性,以及为属性提供标准的set/get方法 必须有一个无参数构造方法 useBean> 创建java对象,并且可以将对象存储到作用域当中 id: 对象的唯一标识 class: 完整类名 scope: 存储范围page,request,session,application 为对象的成员属性赋值 setPropertyname=""property=""value=""/> name: javabean的唯一标识,相当于useBean的id属性的值 property: 成员属性名 value: 属性值,可以是常量或者是el表达式 setPropertyname=""property=""param=""/> 获取参数的值为对象的属性赋值 setPropertyname=""property="*"/> 如果参数名和对象的属性名相同,系统会自动匹配封装 getPropertyname=""property=""/> 获取对象的属性的值 <%@includefile=""%> 静态包含: 将被包含页面的代码拷贝,和当前的jsp作为整体进行编译执行 includepage=""> include> 动态包含: 向服务器发送一个请求,将服务器请求处理的结果 包含到当前位置 可以向包含的页面传递参数 paramname=""value=""/> forwardpage="">实现跳转(请求派发) 也可以向跳转的页面传递参数 param> ------------- jsp中的标签: 在jsp使用内置标签的时候,系统会自动的调用后台的标签程序进行 简单的逻辑处理 1: 导入标签库 <%@tagliburi=""prefix=""%> set: 定义变量,以及将变量存储到某个作用域当中 out输出变量值 if条件判断forEach MVC开发模式开发案例 java操作数据库 oraclec/s架构 ------- 数据库服务器 ---创建多个数据库(数据库实例XE) ---多个用户(账号)system(dba) 启动: 数据库服务 监听器1521 plsqldev.exe/toad --------- jdk中的jdbc: 用于完成java操作数据库的一套api 1: 连接(登录)数据库 1.1获取数据库厂商提供的驱动程序 1.2连接数据库 1、假设vo对象的属性满足: 1.1属性名跟相应表的字段名相同 1.2属性的数据类型统一使用String 2: 查询结果集的字段数量以及字段名 3: 反射机制 Class--所有类的写照,jvm加载class文件的时候,对class文件 进行解析生成一个对象Class 可以通过Class获得类的内部结构: 可以实现对象的动态创建,方法动态调用 高内聚低耦合 jsp+javabean模式 MVC View--视图(客户端UI)html,jsp 只负责向服务器发请求,将响应结果展示 Control--控制器servlet(前台) 接受客户端的请求,并且将请求的具体业务处理 交给M,M返回结果给Control,Control将结果响应给客户端 Model--模型(1: 业务层: 处理具体的业务逻辑2: 数据处理层dao) mvc--开发模式 数据库--oracle 数据库服务器 ---多个数据库实例(XE) ---多个账号 “碧芝”的成功归于他的唯一,这独一无二的物品就吸引了各种女性的眼光。 --system(dba) jdbcapi: 提供了java程序操作数据库的一套api 1、java连接数据库 1.1获得数据库厂商提供的驱动程序 上海市劳动和社会保障局所辖的“促进就业基金”,还专门为大学生创业提供担保,贷款最高上限达到5万元。 C: \oraclexe\app\oracle\product\10.2.0\server\jdbc\lib 1.2连接数据库 jsp+javabean(页面的布局显示、处理业务逻辑) 我们大学生没有固定的经济来源,但我们也不乏缺少潮流时尚的理念,没有哪个女生是不喜欢琳琅满目的小饰品,珠光宝气、穿金戴银便是时尚的时代早已被推出轨道,简洁、个性化的饰品成为现代时尚女性的钟爱。 因此饰品这一行总是吸引很多投资者的目光。 然而我们女生更注重的是感性消费,我们的消费欲望往往建立在潮流、时尚和产品的新颖性上,所以要想在饰品行业有立足之地,又尚未具备雄厚的资金条件的话,就有必要与传统首饰区别开来,自制饰品就是近一两年来沿海城市最新流行的一种。 MVC 送人□有实用价值□装饰□View---视图层(html,jsp) 可是创业不是一朝一夕的事,在创业过程中会遇到很多令人难以想象的疑难杂症,对我们这些80年代出生的温室小花朵来说,更是难上加难。 1: 向服务器发送请求 合计50100%2: 获得响应结果进行显示 创新是时下非常流行的一个词,确实创新能力是相当重要的特别是对我们这种经营时尚饰品的小店,更应该勇于创新。 在这方面我们是很欠缺的,故我们在小店经营的时候会遇到些困难,不过我们会克服困难,努力创新,把我们的小店经营好。 Control---控制器(servlet) 加拿大beadworks公司就是根据年轻女性要充分展现自己个性的需求,将世界各地的珠类饰品汇集于“碧芝自制饰品店”内,由消费者自选、自组、自制,这样就能在每个消费者亲手制作、充分发挥她们的艺术想像力的基础上,创作出作品,达到展现个性的效果1: 接受客户端的请求 2: 请求的具体处理事项交给M 手工艺品,它运用不同的材料,通过不同的方式,经过自己亲手动手制作。 看着自己亲自完成的作品时,感觉很不同哦。 不论是01年的丝带编织风铃,02年的管织幸运星,03年的十字绣,04年的星座手链,还是今年风靡一时的针织围巾等这些手工艺品都是陪伴女生长大的象征。 为此,这些多样化的作品制作对我们这一创业项目的今后的操作具有很大的启发作用。 3: 将处理结果相应给View Model--模型(1: 处理业务逻辑2: 操作数据库) 标题: 大学生“负债消费“成潮流2004年3月18日
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 最新 Web 笔记 资料