24@Servlet_day03
1、重定向
1)什么是重定向?
服务器向浏览器发送一个状态码302及一个消息头Location(该消息头包含了一个地址),浏览器收到之后,会立即向Location所指定的地址发送请求。
2)编程
response.sendRedirect(String url);
注意:
在重定向之前,如果调用了out.close或者out.flush,会出错。
在重定向之前,如果response对象中缓存有数据,则会被清空。
3)特点
a, 重定向的地址是任意的。
b,重定向之后,浏览器的地址栏的地址会变成Location所指定的地址。
2、servlet容器如何处理请求资源路径?
比如,我们在浏览器地址栏输入 http://ip,port/appname/abc
请求资源路径是: /appname/abc
step1 依据appname,查找对应的应用所在的文件夹,依据web.xml中的url-pattern的配置去比较
/abc
step2 比较过程:
精确匹配: 要求在web.xml文件中,必须有一个url-pattern的配置是"/abc"。
通配符匹配:使用"*"来代替任意的字符串。
比如: <url-pattern>/*</url-pattern> 则 /abc 是匹配的。
后缀匹配: 以"*."开头,后接任意的字符串,比如:
<url-pattern>*.do</url-pattern>
会匹配任意的以.do结尾的请求。
step3 如果以上均不匹配,会查找有没有一个静态资源文件跟它匹配,如果匹配,则返回该文件的内容,如果不匹配,返回404。
3、一个servlet处理多种请求
step1 、在web.xml文件当中,使用后缀匹配模式。
step2、在servlet类当中,分析请求资源路径。
4、dao
1)什么是dao?
data access object(数据访问对象)
封装了数据访问逻辑的模块。
2)如何写一个dao?
step1 实体类
就是一个普通的java类,该java类与要操作的表对应。
比如,Employee类。
step2 dao接口
step3 dao实现类
step4 工厂类
练习1:
完成“员工信息管理”
按照以下步骤:
step1 实现员工信息的添加
step2 实现员工列表
step3 实现员工信息删除
step4 实现员工信息的修改
练习2:
将1个servlet来实现“员工信息管理”
练习3:
实现“学生信息管理”