Cuando trabajaba en un proyecto, descubrí que Action obtiene parámetros chinos en formato jsp, siempre que todo el proyecto utilice el formato de codificación UTF-8, no habrá problemas de código confuso; sin embargo, se usa JS en JSP y los parámetros chinos sí; Pasó de JS a Action. Hay confusión en chino. Después de preguntarle a Baidu varias veces, hay muchas opiniones.
Después de practicar, descubrí que el siguiente método puede resolver el problema de los caracteres chinos confusos:
En JS de JSP: los parámetros chinos utilizan encodeURI (encodeURI (parámetro chino)), que se transcodifica dos veces. Por ejemplo:
Copie el código de código de la siguiente manera:
función mostrar (siguiente, id, nombre real) {
document.forms['f2'].action="usersearchNextPage?next="+next+"&id="+id+"&realName="+encodeURI(encodeURI(realName));
document.forms['f2'].submit();
}
Donde realName es un parámetro chino. Por lo tanto, realName se transcodifica dos veces en la URL enviada. codificarURI(codificarURI(nombre real))
En acción: decodifica al recibir parámetros chinos. Uso: java.net.URLDecoder.decode(nombrereal, "UTF-8");
como:
Copie el código de código de la siguiente manera:
String nombrereal = ServletActionContext.getRequest().getParameter("nombrereal");
intentar {
nombrereal = java.net.URLDecoder.decode(nombrereal,"UTF-8");
} captura (UnsupportedEncodingException e1) {
e1.printStackTrace();
}
Después del procesamiento anterior, el problema está resuelto.