Ao trabalhar em um projeto, descobri que o Action obtém parâmetros chineses no formato jsp. Contanto que todo o projeto use o formato de codificação UTF-8, não haverá problema de código ilegível, no entanto, JS é usado em JSP e os parâmetros chineses são; passou de JS para Action. Há confusão em chinês. Depois de perguntar várias vezes ao Baidu, há muitas opiniões.
Após a prática, descobri que o seguinte método pode resolver o problema dos caracteres chineses ilegíveis:
No JS: parâmetros chineses do JSP usam encodeURI (encodeURI(parâmetro chinês)), que é transcodificado duas vezes. Por exemplo:
Copie o código do código da seguinte forma:
function show(próximo,id,nomereal){
document.forms['f2'].action="usersearchNextPage?next="+next+"&id="+id+"&realName="+encodeURI(encodeURI(realName));
document.forms['f2'].submit();
}
Onde realName é um parâmetro chinês. Portanto, realName é transcodificado duas vezes na URL enviada. codificarURI(encodeURI(nomereal))
Em ação: decodifica ao receber parâmetros chineses. Use: java.net.URLDecoder.decode(realName, "UTF-8");
como:
Copie o código do código da seguinte forma:
String realName = ServletActionContext.getRequest().getParameter("realName");
tentar {
realName = java.net.URLDecoder.decode(realName,"UTF-8");
} catch (UnsupportedEncodingException e1) {
e1.printStackTrace();
}
Após o processamento acima, o problema está resolvido.