我写的servlet过滤器好像没用,根本没起到过滤的作用,请高手指点
JSP页面<%@ page contentType="text/html; charset=GBK" %>
<html>
<head>
<title>
hello
</title>
</head>
<body bgcolor="#ffffff">
<h1>
JBuilder Generated JSP
</h1>
<form method="post" action="/JspServletapp/testservlet">
<br><br>
<input type="text" name="user" value="">
<input type="submit" name="Submit" value="Submit"></form>
</body>
</html>servlet过滤器
package jspservlet;import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
import java.util.*;public class FiterServlet implements Filter {
private FilterConfig filterConfig; //Handle the passed-in FilterConfig
public void init(FilterConfig filterConfig) throws ServletException {
this.filterConfig = filterConfig;
} //Process the request/response pair
public void doFilter(ServletRequest request, ServletResponse response, FilterChain filterChain) {
try { String userName = ((HttpServletRequest)request).getParameter("user");
if(userName == "ddd")
{
userName = "dd";
}
else
{
filterChain.doFilter(request, response);
}
}
catch(ServletException sx) {
filterConfig.getServletContext().log(sx.getMessage());
}
catch(IOException iox) {
filterConfig.getServletContext().log(iox.getMessage());
}
} //Clean up resources
public void destroy() {
}
}我在JSP页面的文本框中输入ddd,servlet过滤器没用,还是跳到下个SERVLET了
servlet
package jspservlet;import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
import java.util.*;public class TestServlet extends HttpServlet {
private static final String CONTENT_TYPE = "text/html; charset=GBK"; //Initialize global variables
public void init() throws ServletException {
} //Process the HTTP Get request
public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
response.setContentType(CONTENT_TYPE);
String userName= request.getParameter("user");
PrintWriter out = response.getWriter();
out.println("<html>");
out.println("<head><title>TestServlet</title></head>");
out.println("<body bgcolor=\"#ffffff\">");
out.println("<p>The servlet has received a GET. This is the reply.</p>");
out.println("<i>"+userName+"</i><br>");
out.println("</body></html>"); } //Clean up resources
public void destroy() {
}
}
web.xml<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd">
<web-app>
<filter>
<filter-name>fiterservlet</filter-name>
<filter-class>jspservlet.FiterServlet</filter-class>
</filter>
<filter-mapping>
<filter-name>fiterservlet</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<servlet>
<servlet-name>testservlet</servlet-name>
<servlet-class>jspservlet.TestServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>testservlet</servlet-name>
<url-pattern>/testservlet</url-pattern>
</servlet-mapping>
</web-app>请高手来看下
JSP页面<%@ page contentType="text/html; charset=GBK" %>
<html>
<head>
<title>
hello
</title>
</head>
<body bgcolor="#ffffff">
<h1>
JBuilder Generated JSP
</h1>
<form method="post" action="/JspServletapp/testservlet">
<br><br>
<input type="text" name="user" value="">
<input type="submit" name="Submit" value="Submit"></form>
</body>
</html>servlet过滤器
package jspservlet;import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
import java.util.*;public class FiterServlet implements Filter {
private FilterConfig filterConfig; //Handle the passed-in FilterConfig
public void init(FilterConfig filterConfig) throws ServletException {
this.filterConfig = filterConfig;
} //Process the request/response pair
public void doFilter(ServletRequest request, ServletResponse response, FilterChain filterChain) {
try { String userName = ((HttpServletRequest)request).getParameter("user");
if(userName == "ddd")
{
userName = "dd";
}
else
{
filterChain.doFilter(request, response);
}
}
catch(ServletException sx) {
filterConfig.getServletContext().log(sx.getMessage());
}
catch(IOException iox) {
filterConfig.getServletContext().log(iox.getMessage());
}
} //Clean up resources
public void destroy() {
}
}我在JSP页面的文本框中输入ddd,servlet过滤器没用,还是跳到下个SERVLET了
servlet
package jspservlet;import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
import java.util.*;public class TestServlet extends HttpServlet {
private static final String CONTENT_TYPE = "text/html; charset=GBK"; //Initialize global variables
public void init() throws ServletException {
} //Process the HTTP Get request
public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
response.setContentType(CONTENT_TYPE);
String userName= request.getParameter("user");
PrintWriter out = response.getWriter();
out.println("<html>");
out.println("<head><title>TestServlet</title></head>");
out.println("<body bgcolor=\"#ffffff\">");
out.println("<p>The servlet has received a GET. This is the reply.</p>");
out.println("<i>"+userName+"</i><br>");
out.println("</body></html>"); } //Clean up resources
public void destroy() {
}
}
web.xml<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd">
<web-app>
<filter>
<filter-name>fiterservlet</filter-name>
<filter-class>jspservlet.FiterServlet</filter-class>
</filter>
<filter-mapping>
<filter-name>fiterservlet</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<servlet>
<servlet-name>testservlet</servlet-name>
<servlet-class>jspservlet.TestServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>testservlet</servlet-name>
<url-pattern>/testservlet</url-pattern>
</servlet-mapping>
</web-app>请高手来看下
if (xxx = "xxxx")