gpt4 book ai didi

java - 当我将逻辑从 Servlet doPost 方法移至我自己的类时出现 UnsupportedEncodingException

转载 作者:行者123 更新时间:2023-12-02 05:26:15 25 4
gpt4 key购买 nike

当我的 servlet doPost 方法中有此代码时,一切都很好。

@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
...
String data = CharStreams.toString(new InputStreamReader(request.getInputStream(), "UTF-8"));
...
}

我想将此代码移至另一个类,但是当我这样做时,我收到了 intellij 报告的错误:

java.io.UnsupportedEncodingException

public class SomeUtil {

public String readFromInput(ServletInputStream is) {

return CharStreams.toString(new InputStreamReader(is, "UTF-8"));
}

}

servlet doPost 是否在某处处理这个我看不到的异常?

最佳答案

doPost() 方法声明抛出 ServletException、IOException,其中覆盖了 InputStreamReader 中的抛出 UnsupportedEncodingException您正在使用的构造函数。

readFromInput() 方法中,您还可以声明一个 throws 子句,或者将该行包含在 try-catch block 中。要避免 UnsupportedEncodingException,请使用接受 Charset 对象的构造函数,并传入标准 UTF-8 .

关于java - 当我将逻辑从 Servlet doPost 方法移至我自己的类时出现 UnsupportedEncodingException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25984807/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com