Este artigo compartilhou com você a solução para enviar o código ilegal chinês em formato Java para sua referência. O conteúdo específico é o seguinte
Home Index.xml
<%@ Page Language = "java" import = "java.util. action = "/servletdemo_1/code" method = "post"> name: <input type = "text" name = "name"/> <br/> Senha: <input type = "senha" name = "pwd"/> <br/> <input type = "submit" value "" login "/</form> </body> </
ServletEncoding.java
pacote cn.hncu.servlet_2; importar java.io.ioException; importar javax.servlet.servlet; importar javax.servlet.servletconfig; importar javax.servlet.Servletexcept. charset = null; @Override public void Destroy () {} @Override public servletConfig getServletConfig () {return null; } @Override public string getServletinfo () {return null; } @Override public void init (servletConfig config) lança servletexception {charset = config.getInitParameter ("char"); System.out.println ("codificação:"+charset); } / * * Resolva chinês Glebled * 1) Altere a codificação de caracteres na plataforma Tomcat (a propriedade do servidor.xml-conector) * e o tomcat é a plataforma pública de todos os projetos, portanto, não faça isso, tente não alterar * 2) Verifique novamente o ISO8859-1: Resolva o problema através do códigoblado em string * 3) seta antes de receber o ISO859-1 req.setcharacterencoding ("UTF-8"); * Nota: Este método deve ser enviado no modo de postagem, caso contrário, ele não funcionará * 4) definido antes de obter os parâmetros: 3) Faça isso definindo parâmetros de caracteres em web.xml * 5) Use filtros para fazê -lo - no futuro */@Override void Service (servletRequest req, servletResponse r) req.setcharacterencoding ("UTF-8"); // 4) Defina antes de obter parâmetros: 3) req.setcharacterencoding (charset); // Leia o processamento de informações chineses nomes de string brigada = req.getParameter ("nome"); String pwd = req.getParameter ("PWD"); System.out.println ("nome:"+nome+", pwd:"+pwd); // system.out.println ("antes do codificação-name:"+name+", pwd:"+pwd); //////2) back-check iso8559-1 codificação: solve o método bardado em strings no string /////2) por string //l) por string // //////2) back-check ISO859-1 bs [] = name.getBytes ("ISO-8859-1"); // nome = new String (bs, "utf-8"); // byte bs2 [] = pwd.getbytes ("iso-8859-1"); // pwd = new string (bs2, "utf-8"; Nome da codificação: "+nome+", PWD: "+PWD); // // Nota: Este método não é adequado para muitos parâmetros. Resp.setContentType ("Texto/html; charset = utf-8"); // Definir protocolo: ou seja, não é problema, mas alguns navegadores são incompatíveis // Responder ao cliente String str = "<html> <head> <title> </title </head> <body> <font Color = '' '' Name: +nome+", pwd:"+pwd+"</font> </body> </ad Head>"; resp.getWriter (). println (str); // println () com cache flash}}Arquivo de configuração web.xml
<?xml version="1.0" encoding="UTF-8"?><web-app version="3.0" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"> <display-name></display-name> <Verlet> <Verlet-Name> Encode </vetlet-name> <Servlet-class> cn.hncu.servlet_2.servletlencoding </servlet-class> <iit-param> <amam-name> char </param-name> <air-value> utf-8 </param-rue> <let-Nerveram> <url-pattern>/Encode </url-tattern> </servlet-mapping> <lorde-fil-list> <lmed-FILE> index.jsp </conform-file>
O exposto acima é todo o conteúdo deste artigo. Espero que seja útil para o aprendizado de todos e espero que todos apoiem mais o wulin.com.