1、dao的改进
step1 实体类
step2 dao接口
step3 dao实现
step4 工厂
工厂是什么?
工厂类将一个对象的创建过程对外屏蔽,调用者
不需要了解对象的创建过程,只需要调用工厂类
的相应方法就可获得符合相应接口规范要求的
对象。
类的加载:
jvm会将内存空间划分成三部分,分别是
堆、栈、方法区。
jvm在执行java代码时,如果碰到一个类型
,比如Student,会先检查方法区当中,有没
有Student class对象。如果没有,则调用
ClassLoader(类加载器),ClassLoader会依据
classpath搜索Student.class文件,将该文件转换
成方法区中的一个对象(即Student class对象)。
2、将中文参数值保存到数据库
step1
html文件,添加
content="text/html; charset=UTF-8">
表单要采用post方式提交。
step2 在servlet类当中,添加
request.setCharacterEncoding("utf-8");
step3 将连接数据库的url改成:
jdbc:mysql://localhost:3306/jd1202db?
useUnicode=true&characterEncoding=utf8
明确告诉jdbc驱动程序,保存在数据库中的数据
的编码格式是什么。
3、一个servlet如何处理多个不同的请求。
1)servlet容器(tomcat)如何处理请求资源路径?
比如,在浏览器地址栏输入
http://ip:port/appname/abc.html,浏览器会将
"/appname/abc.html"作为请求资源路径放到
请求数据包里面,发送给servlet容器(tomcat)。
step1 查找webapps下的appname文件夹,找到
web.xml文件,然后比较"/abc.html"与
step2 按照如下方式比较:
精确匹配: 要求
通配符匹配: 使用"*"代表任意的字符。
后缀匹配: 使用*.任意的字符串。
比如:
表示所有以.do结尾的请求资源路径都匹配。
step3 容器会将请求资源当作是一件静态资源,
查找对应的资源文件是否存在,存在,则返回,
不存在,返回404。
2) 让一个servlet处理多个请求.
step1 该servlet使用后缀匹配模式。
step2 在servlet的service方法里面,分析
请求资源路径,依据分析结果采取不同的处理。//返回请求资源路径
String request.getRequestURI();
练习:
使用一个servlet(ActionServlet)来实现学生信息
管理。
4、servlet的生命周期及相关的核心类与接口
1)核心类与接口
a,Servlet接口
init(ServletConfig config):容器
在创建一个servlet对象之后,会立即调用
该方法。容器在调用init方法之前,会先
创建一个ServletConfig对象。也就是说,
ServletConfig对象会作为参数传递给servlet
对象。
service(ServletRequest request,
ServletResponse response):容器收到客户端的
请求之后,会调用该方法来处理请求。
destroy(): 容器在销毁servlet对象之前,会调用
该方法。
b,GenericServlet抽象类(实现了Servlet
接口中的init,destroy方法)
c,HttpServlet抽象类(继承GenericServlet,
实现了service方法)
d,ServletConfig接口:
//访问servlet的初始化参数,在web.xml文件当中
//使用
String getInitParamter(String paraName);
如何配置servlet初始化参数?
web.xml中,添加
e,ServletRequest是HttpServletRequest的父接口。
ServletResponse是HttpServletResponse的父接口。
2)生命周期
servlet容器如何创建servlet对象,然后分配
其资源,调用其方法完成请求处理,最后销
毁servlet对象的整个过程。
第一阶段: 实例化
当请求到达容器时,容器会先检查对应的
servlet对象是否存在,如果不存在,则
创建servlet对象,如果存在,不再创建。
第二阶段: 初始化
容器接下来,会调用servlet对象的init方法。
该方法只会执行一次,用于初始化。
init方法可以override,建议
override init()。
而不是override init(ServletConfig)
第三阶段:就绪
容器调用servlet对象的service方法来处理请求。
第四阶段:销毁
ASP编码教程:如何实现/使用缓存
[ASP]2015年4月15日ASP编码教程:asp缓存的分类
[ASP]2015年4月15日ASP编码教程:何谓ASP缓存/为什么要缓存
[ASP]2015年4月15日ASP编码教程:asp实现的sha1加密解密代码
[ASP]2015年4月15日ASP编码教程:asp执行带参数的sql语句实例
[ASP]2015年4月14日