第一天 ----- 第十天 知识点复习
day1 XML 语法和两种约束技术
1、XML语法写法、规范: 根元素必须唯一、元素名称与属性名称不能以数字开始、元素标记必须结束、元素不能交叉嵌套、属性值必须加引号(双引号、单引号) ----- 考试:排错
2、CDATA块 与 特殊字符转义在 使用上区别 ?
<book> <p>标记的作用 </book> ----- 标记内容 <p> 是一个特殊内容
CDATA : <book> <![CDATA[ <p>标记的作用 ]]> </book> ---- 特殊内容<p> 不会被解析器解析
转义字符:<book> < p >标记的作用 </book>
* 在实际开发中CDATA 比转义更好
* 在转义是,一般只需要转义 < 就可以了,不需要转义 > ------ <book> < p>标记的作用 </book>
3、DTD 约束 ---- 三种DTD :内部 <!DOCTYPE 根元素[]> 、外部 <!DOCTYP 根元素 SYSTEM "dtd路径" >、
公共 <!DOCTYPE 根元素 PUBLIC "dtd名称" "dtd网络路径"
4、<!ELEMENT 元素 、 <!ATTLIST 属性 、 <!ENTITY 实体数据
5、Schema 开发流程
使用W3C 预定义元素和类型 ----- 定义自己Schema中元素 ----- 为自定义Schema元素绑定名称空间上 ----在XML文件中通过名称空间引用自定义Schema元素
6、Schema中名称空间作用? ------ 唯一标识元素来自哪个Schema文件
day2 XML解析
1、XML解析方式 : DOM 和 SAX ---- JDK6新增 STAX
2、JAXP DOM操作函数 ---- 完成XML文档增删改查
3、JAXP SAX编程思路,掌握推模式 基于事件xml解析方式
4、XML Pull解析器使用 ------- Xml2List List2Xml
* XmlPullParser XmlSerializer
day3 Java基础加强
JDK5.0 新特性 和 反射技术
1、泛型 掌握两点 : 使用泛型在编译时检查集合元素类型安全(遍历List、Set 、Map) 、使用泛型编写通用程序(数组元素交换位置,数组元素倒序)
2、枚举在什么情况使用 ? 固定取值,取值范围3个以上
* 一个值 常量、两个值 boolean ----- 例如:字段表示男还是女 boolean isMale ,当变量为true 男 ,当变量为false 女
3、根据星期数字 打印中文星期几 ?
4、枚举实例、下标、名称 直接转换 name() ordinal() values() valueOf()
5、for/in语句在什么情况下使用? 类本身实现 Iterable接口,在类中实现 iterator()方法
6、for/in 移除练习 并发修改异常解决:1) 使用iterator.remove方法、2) 当删除只有一个元素时,删除后调用break 3) CopyOnWriteArrayList
7、反射技术
获取一个类字节码文件 三种方式:类名.class、对象.getClass 、 Class.forName
通过Class对象,创建字节码文件对应类实例 无参数: c.newInstance 有参数 c.getConstructor获得构造器 ,通过构造器.newInstance进行对象创建
如何设置对象属性 : Field f = c.getDeclaredField("属性名称"); f.setAccessable(true) ; f.set或者f.get进行属性读写
调用方法 获得方法反射对象:Method m = c.getDeclaredMethod("方法名", 类型Class可变参数)
m.invoke(obj,参数); 通过反射执行 该方法
day4 Tomcat与HTTP协议
1、Tomcat安装配置 ---- 修改server.xml 改变tomcat默认端口
* 当tomcat启动时,如果端口被占用 cmd>netstat -ano 查看端口进程 编号
2、将web应用 发布tomcat 中 三种方式
1) 映射conf/server.xml
2) 在conf/Catalina/localhost/xxx.xml
3) 直接将web应用 复制tomcat/webapps ----- 将web应用制作war文件
3、Tomcat虚拟主机配置 ----- 修改hosts文件
*可以在tomcat中配置多台虚拟主机,只有一台虚拟主机可以通过ip去访问 ----- defaultHost 缺省的虚拟主机
4、MyEclipse中配置tomcat,发布web工程
5、HTTP请求方式 get和post区别
6、HTTP响应常见状态码 200 302 304 404 500
7、常用头信息 referer 防止盗链 refresh自动刷新 Location重定向 Content-Encoding: gzip 配置tomcat使用gzip压缩 , tomcat内部缓存策略 If-Modified-Since 与 Last-Modified * Etag与If-None-Match
day5 Servlet编程入门
1、编写第一个Servlet 继承HttpServlet 覆盖doGet与doPost方法
2、servlet运行需要外部jar ----- tomcat/lib/servlet-api.jar
3、URL-Pattern三种写法: 完全路径匹配 、目录匹配、扩展名匹配
4、路径问题:服务器端路径 / 开始代表当前web应用; 客户端路径 /day10/路径 ,/ 代表Web服务器根目录
* 打印乘法表
5、ServletConfig 和 ServletContext 都可以提供初始化参数,Config当前Servlet可用 Context 所有Servlet可用
6、Servlet生命周期 init service destroy
7、通过ServletContext 获得web工程中文件绝对磁盘路径 ---- getServletContext().getRealPath("/1.txt") ;
* 这里 / 代表WebRoot目录
8、缺省Servlet ------ 所有你访问静态web资源,都是通过缺省Servlet返回 客户端的
day6 Request和Response
1、通过Response向客户端输出数据 response.getWriter response.getOutputStream
* 如果 输出数据包含中文 response.setContentType("text/html;charset=utf-8");
2、response操作状态码和头信息 setStatus setHeader 案例:重定向、自动刷新、禁止缓存
3、request 获得客户请求提交数据 request.getParameter
* 如果客户提交中文
post ----- request.setCharacterEncoding(编码集)
get ----- 1) 修改tomcat默认解码集 <Connector 添加 URIEncoding="utf-8"
2) 手动重新编码 new String(原来内容.getBytes("ISO=8859-1"),"utf-8")
4、request获得请求行信息 getContextPath 工程名 getRequestURI 访问全路径
* 截取当前访问资源路径 getRequestURI().substring(getContextPath().length);
* 获得 IP getRemoteAddr()
5、request获得头信息 ------ 防盗链
* 通过URL URLConnection 模拟客户端,添加头信息referer、避开防盗链程序
day7 Session和Cookie
1、Session和Cookie区别?
Cookie保存客户端,Session保存服务器端
2、Cookie案例:上次访问时间、商品浏览记录
3、关闭浏览器,再次打开,session中数据还存在 ? 因为jsessionId在客户端持久化 ---- 持久Cookie保存
4、Session案例:购物车、使用一次性验证码用户登录
5、Cookie禁用 通过URL重写 追踪Session
6、Cookie生命周期和Session 生命周期
创建cookie ---- response.addCookie
销毁cookie 会话cookie和持久cookie ----- 会话cookie关闭浏览器销毁,持久cookie在cookie过期时销毁(cookie删除 maxAge为0 )
创建Session request.getSession()
销毁Session 三种:1) 服务器关闭 2) Session过期(可以在web.xml配置) 3) 调用invalidate销毁Session
* 当Session销毁后,当中所有数据都会销毁
7、Servlet三种数据范围: request、session、ServletContext 如何使用?
day8 JSP技术 + EL +JSTL
1、JSP 与 Servlet关系
2、JSP运行原理
3、JSP <%! 声明 <%= 表达式 <% 脚本片段
4、JSP三种注释
5、错误友好页面配置 JSP page属性 errorPage 和 isErrorPage ----- 常用配置web.xml
6、<%@include 与 <jsp:include 原理与区别 ?
7、JSP九个内置对象 page request session application response out config pageContext exception
8、在JSP存在四个数据范围 page、request、session、application
9、JSTL + EL ----- c:if c:forEach EL主要用来取值 ---- empty 判断
10、<jsp:forward> <c:redirect> 在JSP 页面完成转发和重定向
day9 JSP模式和案例
1、JSP Model1 和 JSP Model2
2、什么是 MVC
3、BeanUtils使用和原理 ---- 原理就是内省
4、计算器案例 --- 基于model1
5、用户登录注册案例 基于model2
基于MVC编程思路
1、编写页面 以表单或者链接方式 提交请求 <form action="" > <a href="" >
例如 注册:regist.jsp 登录login.jsp
2、当客户端提交请求,服务器创建控制器 接收请求 Servlet
例如: 注册 RegistServlet 登录 LoginServlet
3、在控制器Servlet中需要将请求数据 封装 JavaBean对象中
BeanUtils开发包 ---- 创建JavaBean : User
4、在控制器 将数据JavaBean 传递 处理数据JavaBean 进行数据处理
UserModel 将 User对象传递UserModel 进行注册、登录
5、UserModel 处理业务数据,将结果返回控制器Servlet ,Servlet根据返回结果,决定跳转哪个页面
* 跳转页面时,需要传递一些信息给页面 request.setAttribute 、request.getRequestDispatcher().forward() ----- 一般用来传递提示信息
* 在用户登陆之后,用户信息 保存到Session中
相关推荐
新英语五年级下册unitmy day复习PPT课件.pptx
2022届高考英语一轮复习题型组合训练Day10含解析
day13-节后复习1.zip
2022届高考英语一轮复习题型组合训练(Day+10)含解析.pdf
python01 day01-03复习python语法基础python靠缩进表达代码逻辑:缩进4个空格续行:\输入输出标识符:变量、模块、函数、类等首字符必须是
源代码 我自己的笔记 我平时看视频累计的一些经验
新英语五年级下册unitmy day复习PPT学习教案.pptx
2024.4.14 爬虫复习Day02
数组 的定义,创建,访问,长度属性,遍历,常用Arrays类 二维数组,方法递归调用经典案例 变量源码教程
2024.4.16 Python爬虫复习day04
2024.4.15 Python爬虫复习day03代码
2024.4.17 Python爬虫复习day05 可视化
2024.4.19 Python爬虫复习day07 可视化3
2024.4.18 Python爬虫复习day06 可视化2
详细的复习资料 Day1 What is EJB Day2 EJB的Web客户 Day3 JPA(Java Persistence API)简介 Day4 EntityManager接口 Day5 继承映射策略 Day6 事务 Day7 定时器和拦截器
2022届高考英语一轮复习题型组合训练Day20含解析
2022届高考英语一轮复习题型组合训练Day5含解析
2022届高考英语一轮复习题型组合训练Day12含解析