第一次课:
- Web开发的特点(B/S)
a) B/S对客户端要求低,有利于项目的升级的维护
b) Web项目可以跨平台
c) 界面不友好: html+js+css 但是extJS Flex 解决了界面简陋的问题
d) 对网络的依赖较大
2.Web开发的常用技术:JSP ASP.NET PHP
a) JSP: Java在网络中的应用 开源 跨平台 功能强大 框架支持较好 灵活
b) ASP.NET: 非开源 跨平台不如JSP 功能强大 框架支持较好 不灵活 速成开发
c) PHP: 免费 开源 框架支持较少 灵活 MySQL数据库结合使用
3.创建一个web项目,获取用户登录的信息
a) 访问地址为: http://localhost:8888/t31/index.jsp //先启动Tomcat才能访问
b) HTTP Status 404 说明访问的超链接有问题
c) Internet Explorer 无法显示该网页 说明tomcate容器未启动
d) 虚拟目录: 此目录在部署到Tomcat后会消失, 例如webRoot src
4.JSP的运行原理
第二次课:
- Servelt处理客户请求
a) Servelt中doGet用来处理get请求,doPost用来处理post请求
b) 传入的request 代表一个请求 页面的所有数据都封装到了request对象中
- 常见的编码: iso-8859-1 英文编码 GBK 简体、繁体 GB2312 简体 UTF-8
- 采用MVC设计模式,完成学生插入功能
- Web.xml 与Servelt生命周期讲解
a) Web.xml是项目的配置文件, 所有的Ser会自动在web.xml中配置
b) 如果要删除Ser则web.xml中相应的配置也要删除
c) Ser 在第一被请求的时候创建(实例化) 以后常驻内存, 容器关闭的时候销毁, 只能实例化一次的对象,称为单态类 这样做的原因是为了节省内存资源
第三次课:
- 完善学生的查询、删、更新功能
第四次课:
- 数据库组件的使用
a) 此组件与项目无关, 只不过是个SQL的登陆客户端
- 乱码问题解决方案 所有相关文件和项目统一编码 utf-8 gbk
a) 项目页面编码统一
b) 设置request内置对象的编码
c) 如果是get方式提交(包括超链接) 那么还需要设置Tomcat的编码 找到第二个8080 所在的标签 设置属性 URIEncoding="gbk"
- Servelt单态模式注意事项
a) 不要把存储数据的变量设置全局
- Session内置对象
a) 内置对象: 在JSP不需声明直接使用的对象称为内置对象
b) Request: 代表一个请求 也就是说 每个请求都是一个request对象 在任何一个时间点只有一个request对象存在
c) Session: 代表的是客户端与服务器端的一次会话. 随着浏览器关闭的时候失效
d) 每个用户都有自己的session
e) 总结: request用于两个页面之间的数据传递, session用于多个页面之间数据的共享
第五次课:
- 采用JSTL标签重构页面
a) JSTL标签是一种负责前台显示数据的标签, 可以和HTML无缝集成. 这样我们在输出数据的时候就可以不用<% %>
b) 加载标签有3步: 1:导入标签库 2:在页面引入标签库
Uri: 包括URL 也就是说URL是URI的子集 uri 称为资源定位器
总结: 标签的优点: 去除百分号: 层次清晰 很多方便的设置 url的特殊符号的处理 输出会自动调用get方法, 编号的显示 null的屏蔽
第六次课:
l JSP概念 原理复习
a) JSP运行原理
- i. Tomcat在启动的时项目就启动,随时接受访问、如果拿到请求,则把请求的页面发送给客户端(已经在服务器解析了JAVA和JSP代码) 客户端看到的是最终的解析结果. 拿到页面之后客户单击,又发送请求,如此循环
b) Servelt生命周期
- i. Ser在第一次被请求的时候创建,之后常驻内存. 容器关闭的时候自动销毁。在整个项目中只实例化一次,所以是单态模式.正因为如此 要避免在Serlvet中使用全局变量存储数据
c) Java的多态
- i. 多态分为2种表现形式.
- ii. 第一种 在同一个类,名称相同但是方法的参数或者数量不同,这种表现形式称为重载
- iii. 第二种: 在子类中继承了父类的,但是此方法已经不适应子类的需求,此种表现形式称为重写,
d) Request Session内置对象
- i. 内置对象只需使用无需声明
- ii. 内置对象只是争对JSP页面而言
- iii. 每一个请求就是一个新Request对象,原理的request对象自动销毁,一个用户只有一个session内置对象,浏览器关闭则销毁
e) JSTL 标签
- i. 是Java类在页面的表现形式, 通过tld描述文件来使用的
f) 面向接口编程
a) Get 与 SET的区别
getParameter:获取前个页面的数据,此方法获取的数据是从前台提交过来的
getAttribute:是获取setAttribute存储的数据
第七次课:
l 班级的插入
l 在学生页面如何显示班级的数据
l 数据同步问题
Request: 每个请求都是一个Request对象
Session: 每个用户都有自己的Session
Application: 整个项目只有一个App,而且存储到此位置的数据,所有用户都可见
数据的同步: 只要一个数据在多个地方存在 就会出现数据同步问题
同步分为两种情况: 及时同步 和定时同步
第八次课:
- 一对多的查询实现
- 爱好、与班级的更新问题
a) 让爱好复选框自动输出, 在输出的时候与 所选的爱好匹配,如果匹配成功则 当前输入的复选框默认被选中
- 过滤器讲解: 可以把功能从页面抽取出来放入过滤器, 并配置过滤规则实现代码的重用
- 过滤器在项目启动的时候启动,项目销毁的时候销毁
第九次课:
- 登录过滤器讲解
- 分页显示学生信息
第十次课:
- Cookie自动填充功能实现
- 书内容复习