servlet6

来源:互联网 发布:翻译软件app 编辑:程序博客网 时间:2024/06/05 03:13

1.mysql数据库在插入中文数据时要注意的问题
(1)建库时,设置缺省的字符集
create database jsd1506db
default character set utf8;
(2)给jdbc驱动添加上两个参数,告诉
驱动使用指定的字符集来编码。
jdbc:mysql://localhost:3306/jsd1506db
?useUnicode=true&characterEncoding=utf8
2.servlet生命周期
(1)什么是servlet的生命周期?
容器如何创建servlet对象,如何对其进行
初始化处理,如何调用该对象来处理请求,
以及如何销毁该对象的整个过程。
(2)分成哪几个阶段?
1)实例化
a.什么是实例化?
容器创建servlet对象
b.什么时候实例化?
b1.容器收到请求之后。
b2.容器启动之后,事先创建好。
需要配置
参数。
注意,容器在默认情况下,对于某个
类型的servlet,只会创建一个实例。
2)初始化
a.什么是初始化?
容器调用servlet对象的init
(ServletConfig config)方法。
b.init方法只会执行一次。
c.GenricServlet的init方法
将容器传递过来的ServletConfig
保存下来,并且提供了一个方法
(getServletConfig)来获得该对象。
注:
可以通过override init()方法来
实现自己的初始化处理逻辑。
d.初始化参数
step1,配置

company
中信证券

step2,读取
ServletConfig提供的
getInitParameter方法。
3)就绪
a.什么是就绪
容器调用servlet对象的service方法
处理请求。
b.HttpServlet的service方法
依据请求类型(get/post)调用对应的
doGet/doPost方法。
注:
可以通过override doGet/doPost
或者override service
方法来实现请求处理逻辑。
4)销毁
a.什么是销毁
容器在删除servlet对象之前,会先
调用该对象的destroy方法。
b.该方法只会执行一次。

(3)相关的几个类与接口
1)Servlet接口
a.init(ServletConfig config)
b.service()
c.destroy()
2)GenericServlet抽象类
实现了Servlet接口中的部分方法
(init,destory)
3)HttpServlet抽象类
继承了GenericServlet,实现了
service方法。

3.容器如何处理请求资源路径
比如,在浏览器地址栏输入
http://ip:port/web04-3/abc.html,
浏览器会将”/web04-3/abc.html”作为请求
资源路径发送给容器。
step1,容器依据”/web04-3”(应用名)找到应用
所在的文件夹。
step2,容器默认认为访问的是一个servlet,
所以,容器会去查找web.xml文件,找到
匹配的servlet。
1)精确匹配
即要求/abc.html
2)通配符匹配
即使用”*”匹配零个或者多个字符。
比如
/*
3)后缀匹配
即使用”*.”开头,后接多个字符。
比如
*.do
表示匹配所有以.do结尾的请求。
step3,如果找不到匹配的servlet,则容器
会查找相应的文件。

4.将多个servlet合并成一个。
step1,使用后缀匹配,比如

ActionServlet
*.do

step2,分析请求资源路径,依据分析
的结果来选择相应的分支来处理。
String request.getRequestURI();

0 0
原创粉丝点击