解决request.getParament()空指针问题和字符的乱码问题,get和post都没有问题
来源:互联网 发布:java获取cookie的方法 编辑:程序博客网 时间:2024/06/15 11:21
servlet
package com.wd.servlet;import java.io.IOException;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;public class Servlet1 extends HttpServlet {@Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp)throws ServletException, IOException {// TODO Auto-generated method stubdoPost(req, resp);}@Overrideprotected void doPost(HttpServletRequest req, HttpServletResponse resp)throws ServletException, IOException {// TODO Auto-generated method stubString name = req.getParameter("name");System.out.println(name);req.setAttribute("name", name);req.setAttribute("message", "msg");req.getRequestDispatcher("index.jsp").forward(req, resp);}}
filter
package com.wd.filter;import java.io.IOException;import javax.servlet.Filter;import javax.servlet.FilterChain;import javax.servlet.FilterConfig;import javax.servlet.ServletException;import javax.servlet.ServletRequest;import javax.servlet.ServletResponse;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import com.wd.uitl.MyFilter;public class CharactorFilter implements Filter {public void destroy() {// TODO Auto-generated method stub}public void doFilter(ServletRequest req, ServletResponse resp,FilterChain chain) throws IOException, ServletException {// TODO Auto-generated method stubHttpServletRequest request = (HttpServletRequest) req;HttpServletResponse response = (HttpServletResponse) resp;MyFilter myRequest = new MyFilter(request);chain.doFilter(myRequest, response);}public void init(FilterConfig arg0) throws ServletException {// TODO Auto-generated method stub}}
uitl重写了getParament()方法,解决了字符集的问题
package com.wd.uitl;import java.io.UnsupportedEncodingException;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletRequestWrapper;public class MyFilter extends HttpServletRequestWrapper {public MyFilter(HttpServletRequest request) {super(request);// TODO Auto-generated constructor stub}@Overridepublic String getParameter(String name) {// TODO Auto-generated method stubString value = super.getParameter(name);if(value == null)value = "";try {value = new String(super.getParameter(name).getBytes("ISO-8859-1"), "utf-8");} catch (UnsupportedEncodingException e) {// TODO Auto-generated catch blocke.printStackTrace();}return value;}}这样对于doGet方法的乱码问题不用更改tomcat的配置,更加合理
Jsp:
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html> <head> </head> <body> This is my JSP page. <br> <form action="servlet" method="get"> <input type="text" name="name"> <input type="submit" value="提交">${message }${name } </form> </body></html>
0 0
- 解决request.getParament()空指针问题和字符的乱码问题,get和post都没有问题
- request的get和post参数乱码问题
- 解决Post和Get乱码问题
- request乱码问题,post和get乱码调整
- 解决Get和Post请求中文乱码的问题
- request.getParameter()在get和post方法中文乱码问题
- post 和get提交的乱码问题
- post和get的乱码问题
- 解决全站字符乱码(POST和GET中文编码问题)
- java 解决全站字符乱码(POST和GET中文编码问题)
- 解决全站字符乱码(POST和GET中文编码问题)
- request的get请求和post请求的中文乱码问题
- POST请求和GET请求分别解决乱码问题
- 解决Get和Post请求中中文乱码问题
- 解决Get和post请求中中文乱码问题
- web工程解决post和get乱码问题
- springmvc解决乱码问题(get和post)
- 解决 web 字符编码乱码问题-----charSet 和PageEncoding的区别--request编码问题
- aop入门:动态代理
- 通过ServletContextEvent加载spring的application.xml
- hdu 5441 Travel 2015长春网络赛 图论 并查集
- 编码规范-变量命名
- poj 1192 最优连通子集 树的孩子兄弟表示法+简单树型dp
- 解决request.getParament()空指针问题和字符的乱码问题,get和post都没有问题
- EXT.NET 在JS中获取当行选中行的行号
- jar包解压
- 补提交卡
- Spring MVC password example
- geohash
- java.lang.UnsatisfiedLinkError: *.so: *.so: undefined symbol: SomeClass
- 鼠标回调事件选取图像像素点并存储
- LeetCode_factorial-trailing-zeroes