Este artículo ha compartido con usted la solución para enviar el código confuso chino en forma Java para su referencia. El contenido específico es el siguiente
Inicio index.xml
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%><html> <head> <title>servlet demonstration</title> </head> <body> <h2>Chinese garbled</h2> <!-- /servletDemo_1/encode is best used in absolute directories, because the index.jsp location may change --> <form Action = "/Servletdemo_1/ENCODE" Method = "Post"> Name: <input type = "text" name = "name"/> <br/> contraseña: <input type = "contraseña" name = "pwd"/> <BR/> <input type = "sstit" value = "Login"/> </form> </body> </html>
Servletencoding.java
paquete cn.hncu.servlet_2; import java.io.ioException; import javax.servlet.servlet; import javax.servlet.servletConfig; import javax.servlet.servletException; import javax.servlet.servletRequest; import javax.servletRetResponse; Servlet de la clase pública; charset = nulo; @Override public void destruye () {} @Override public ServletConfig getServletConfig () {return null; } @Override public String getServletInfo () {return null; } @Override public void init (servletConfig config) lanza ServletException {charset = config.getInitParameter ("char"); System.out.println ("Coding:"+Charset); } / * * Resuelve el confusión chino * 1) Cambie la codificación de caracteres en la plataforma TomCat (la propiedad de server.xml-condector) * y Tomcat es la plataforma pública de todos los proyectos, por lo que no hagas, trate de no cambiar * 2) Volver a verificar ISO8859-1 Encodificación: Resuelva el problema a través del código abarrotado en Cadro * 3) antes de obtener los parámetros: los parámetros: req.setcharacterEncoding ("UTF-8"); * NOTA: Este método debe enviarse en modo POST, de lo contrario no funcionará * 4) Establecer antes de obtener los parámetros: 3) Hágalo configurando los parámetros de caracteres en Web.xml * 5) Use filtros para hacerlo - en el futuro */@Override public void Service (ServletRequest Req, ServletResponse ServletException, iOException {// // 3) SET antes de obtener el ServletReSponse RespP). req.setcharacterEncoding ("UTF-8"); // 4) establecer antes de obtener parámetros: 3) req.setcharacterEncoding (charset); // Leer procesamiento de información Nombre chino de cadena confusa = req.getParameter ("nombre"); Cadena pwd = req.getParameter ("pwd"); System.out.println ("Name:"+Name+", pwd:"+pwd); // system.out.println ("Antes de codificar name:"+name+", pwd:"+pwd); //// 2) back-check ISO8859-1 encodar: Resolver el método aficionado en cadena // byte bs [] = name.getBytes ("ISO-8859-1"); // name = new String (bs, "utf-8"); // byte bs2 [] = pwd.getbytes ("iso-8859-1"); // pwd = new String (BS2, "UTF-8"); // System.out.Println ("" name de codificación: "+name+", pwd: "+pwd); // // nota: este método no es adecuado para muchos parámetros. Resp.setContentType ("text/html; charset = utf-8"); // set Protocol: IE no es un problema, pero algunos navegadores son incompatibles // Responder a la cadena del cliente str = "<html> <fead> <title> </thead> <body> <font color = 'rojo'> nombre:": " +name+", pwd:"+pwd+"</font> </body> </head>"; resp.getwriter (). println (str); // println () con caché flash}}Archivo de configuración Web.xml
<? xml versión = "1.0" encoding = "utf-8"?> <web-app versión = "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/javaeeee/web-app_3_0.xsd"> <jageN <Servlet-name> encode </servlet-name> <servlet-class> cn.hncu.servlet_2.servletencoding </servlet-class> <init-param> <amamname> char </paramname> <amam-value> utf-8 </param-value> </it-param> </servlet> <ervlet> <ervlet-name-name-codedename <Url-Pattern>/Code </url-Pattern> </servlet-mapping> <bevery-file-list> <calleado--file> index.jsp </welcome-file> </welcome-file-list> </beb-app>
Lo anterior es todo el contenido de este artículo. Espero que sea útil para el aprendizaje de todos y espero que todos apoyen más a Wulin.com.