学习笔记
Ø JDBC:Java DataBase Connectivity Java数据库的连接. * 是SUN公司统一提供的一套接口规范(JDBC).各个数据库生产商提供实现. Ø 驱动:两个硬件设备之间通信的桥梁. 【JDBC的开发步骤】 Ø 注册驱动: Ø 获得连接: Ø 获得执行SQL语句对象: Ø 释放资源: 【自定义连接池中问题及如何解决】 Ø 问题? 1.如果使用自定义连接池,那么需要额外记住自定义连接池中的API. 2.能不能使用面向接口的编程方式. Ø 解决: 不额外提供API方法,就可以解决上述两个问题!!! 能不能还调用Connection的close方法.能不能增强Connection的close方法,原有的销毁变为归还!!! Ø 如何增强Connection的close方法: * 增强一个Java类中的某个方法有几种方式??? * 一种方式:继承的方式. * 能够控制这个类的构造的时候,才可以使用继承. * 二种方式:装饰者模式方式. * 包装对象和被包装的对象都要实现相同的接口. * 包装的对象中需要获得到被包装对象的引用. ***** 缺点:如果接口的方法比较多,增强其中的某个方法.其他的功能的方法需要原有调用. * 三种方式:动态代理的方式. * 被增强的对象实现接口就可以. JDBCUtils工具类中,静态代码块读取配置文件, 获取链接的方法,也需要配置文件的用户信息, 因此开始时 把 url username, password等设为成员变量, 且为静态(因为静态只能访问静态)
总结2 1.Servlet 什么是Servlet?? 运行在服务器端的小程序 作用??? 用来处理用户的请求并作出响应 定义方式: 1.定义一个类去实现Servlet接口---->现在是定义一个类去继承HttpServlet---->要求会模板创建就行了 2.以前需要去web.xml自己手动配置, 现在不需要--->要求大家能够配置 Servlet的声明周期 1.什么时候创建???? 第一个人访问Servlet的时候,服务会创建Servlet对象,而且是单例的;并且创建的时候 init(只有第一次执行)方法执行, 所有的访问service方法会执行, 服务器关闭或者项目被移除Servlet销毁并且destroy的方法会执行 注意事项: 1.url-pattern虚拟路径的编写??? 1.完全路径 例如:/DemoServlet 2.目录匹配 例如:/aaa/* 3.后缀名匹配: 例如 *.txt 完全路径 >目录匹配>后缀名匹配 2.编写的a的访问路径或者是form的访问路径的问题 相对路径和绝对路径: 不能以/开头 建议以后都使用绝对路径 ; 例如 /项目名称/资源目录 2.案例--->服务器定时跳转 1.设置响应头 响应头属性名:Refresh 响应头属性值 "秒数;url=要跳转的绝对路径" 2.可以调用JS中Location对象中href属性; 3.在页面添加meta的标签 <metahttp-equiv="Refresh" content="3;url=/day12/WEB01/index.html"> 4.重定向: 需要设置响应码 302 需要设置一个头 Location的头 --- 值是要跳转的绝对路径 3.ServletContext 是一个域对象: ServletContext的生命周期 出生: 服务器启动的时候为每一个web工程创建单独的一个ServletContext的域对象有且仅有一个,这个被整个工程所共享 死亡: 服务器关闭或者项目被移除 作用: 1.获取全局参数 2.获取文件mime类型 3.存储全局变量 setAttribute , getAttribute , removeAttribute 4.读取web下的文件 getResouceAsStream("服务器路径(不加工程名)") ***** 完全路径匹配 > 目录匹配 > 扩展名匹配 Ø 开发中的路径的编写:Ø 相对路径:都是需要找位置相对关系.不能以 / 开始的. * ./ 当前路径 ../上一级目录 * 使用相对路径访问: Ø 绝对路径:不需要找位置相对关系. 以 / 开始的. * 绝对路径中分为客户端路径和服务器端路径: * 客户端路径一定要加工程名. /day09/ServletDemo6 * 服务器端路径不需要加工程名. /ServletDemo6 Ø ServletContext:重要ServletContext的作用: * 1.用来获得全局初始化参数. * 2.用来获得文件的MIME的类型. * 3.作为域对象存取数据. ServletContext是一个域对象. * 作用范围:整个web工程. * 创建:服务器启动的时候,tomcat服务器为每个web项目创建一个单独ServletContext对象. * 销毁:服务器关闭的时候,或者项目从服务器中移除的时候. * 4.用来读取web项目下的文件. |