java如何解码获取url参数收到抛出BeanParam

Mar*_*oli 13 java jax-rs jersey decoding urldecode

我收到了对此Web服务的GET响应

@GET
@Path("/nnnnnn")
public Response pfpfpfpf(@BeanParam NNNNNN n)
Run Code Online (Sandbox Code Playgroud)

该班NNNNN有:

@QueryParam("parameter")
private String parameter;
Run Code Online (Sandbox Code Playgroud)

为此,parameter有一个得到和设置.

我发送了一个带有查询参数的get请求,它正在自动绑定到我的选项NNNNN,一切都很棒.

但是,现在我在查询网址中发送日语字符串.我在发送之前用UTF-8对参数进行编码,我必须使用UTF-8解码它们.

但我的问题是我应该在哪里调用URLDecoder?我试图在该参数的getter中调用它,但它不起作用,我一直有类似的东西,C3%98%C2%B4%C3%98%C2 而不是日语字符

Mar*_*oli 4

对我有用的解决方案是:

在servlet上,我应该这样做:

request.setCharacterEncoding("UTF-8");
Run Code Online (Sandbox Code Playgroud)

然后在 html 页面上我必须添加以下内容:

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
Run Code Online (Sandbox Code Playgroud)