自定义Filter过滤器,过滤所有jsp页面
开发中,常常需要对指定的请求格式进行过滤。
比如,Struts2的应用中,往往要过滤掉 *.jsp的请求
※http://127.0.0.1:8080/Sample/login.action这样的请求被允许。
※http://127.0.0.1:8080/Sample/login.jsp这样的请求应该被过滤,并指定跳转到某个页面或执行某个Action等等
Struts2中的过滤器负责过滤所有的*.action,然后进行处理。
同样可以自定义一个Filter类,来单独负责某种格式请求的处理。
实现javax.servlet.Filter接口
FilterClass.java
1 import javax.servlet.*;
2 import javax.servlet.http.HttpServletResponse;
3
4 import java.io.*;
5 /**
6 * 过滤所有 「*.jsp」的请求
7 * 通过实现servlet中的Filter接口
8 */
9 public class FilterClass implements Filter {
10
11 public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse,
12 FilterChain chain) throws IOException, ServletException {
13 // Sample---所有的*.jsp的请求,跳转到Action
14 HttpServletResponse response = (HttpServletResponse) servletResponse;
15 response.sendRedirect("login.action");
16 }
17
18 public void destroy() {
19 // TODO Auto-generated method stub
20
21 }
22
23 public void init(FilterConfig arg0) throws ServletException {
24 // TODO Auto-generated method stub
25
26 }
27 }
在web.xml配置文件中,添加Filter过滤
Code
<filter>
<filter-name>sample</filter-name>
<filter-class>test.FilterClass</filter-class&
相关文档:
JSP共有以下9种基本内置组件(可与ASP的6种内部组件相对应):
request
用户端请求,此请求会包含来自GET/POST请求的参数
response
网页传回用户端的回应
pageContext
网页的属性是在这里管理
session
与请求有关的会话期
application
servlet正在执行的内容
out
用来传送回应 ......
1,页面上编码设置为"UTF-8"
2,写一个字符编码过滤器, 在web.xml中配置加载过滤器
3,设置tomcat的属性 在配置端口的节点上加入如下代码:URIEncoding="UTF-8"
1,代码如下:
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
2,实现代码:
package com.mww.comm;
import java.io. ......
一、JSP页面显示乱码
下面的显示页面(display.jsp)就出现乱码:
<html>
<head>
<title>JSP的中文处理</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>
<body>
<%
out.print("JSP的中文处理");
%>
< ......
JSP和Servlet中的绝对路径和相对路径问题困扰了我好几天,经过努力之后将其部分心得和大家共享。
前提:假设你的Http地址为http://192.168.0.1/你的web应用为webapp,那么你的web应用URL为http://192.168.0.1/webapp/
web应用的目录结构:
webapp/
web-inf/
......
很多例如登录或者注销登录的地方需要使用到Cookie,今天学到在JSP中如何操作Cookie分享下
4.Cookie类常用的方法
1.setValue()/getValue() —>获取cookie对象的值。
2.getName()—>获取cookie对象的名称,循环的时候可以有选择的使用Cookie
3.setMaxAge()/getMaxAge()—>设置或获取cookie对象有 ......