gpt4 book ai didi

java - 使用java servlet 3.0文件上传,如何获取最大文件大小值

转载 作者:行者123 更新时间:2023-11-28 22:26:21 24 4
gpt4 key购买 nike

我正在使用 servlet 3 api 在 tomcat 7 中上传文件。
我在 web.xml 中设置

如何在我的 java 代码中访问最大文件大小的值,以便我可以告诉用户最大文件大小是多少?

我已经搜索了 Servlet、ServletContext、ServletConfig、ServletRegistration 的 API,但找不到任何东西。 multipart-config 值不在 initParameters 中。

我认为另一种提问方式是,我怎样才能获得 servlet 的 MultipartConfigElement 对象?同样,在搜索了 api 之后,我找不到任何方法来检索它。

最佳答案

我找到了一种做我想做的事情的方法,尽管它使用反射来获取 servlet 配置的私有(private)、未记录的部分,因此远非理想——不能保证它会继续在 tomcat 升级上工作。但是在 servlet 中,以下将获取 MultipartConfigElement(它具有返回配置的各个位的方法):

ServletConfig scfig = getServletConfig();
MultipartConfigElement mce = null;
try {
Field config = scfig.getClass().getDeclaredField("config");
config.setAccessible(true);
mce = ((StandardWrapper)config.get(scfig)).getMultipartConfigElement();
} catch (NoSuchFieldException | SecurityException | IllegalArgumentException | IllegalAccessException e) {
e.printStackTrace();
}

关于java - 使用java servlet 3.0文件上传,如何获取最大文件大小值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43494636/

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