(急!!急!!看图)Servlet中request MultipartRequest如何获取上传的文件名

吾日三省贾斯汀
Java领域优质创作者
博客专家认证
2017-11-03 01:29:35
servlet中代码:


问题?????看图,怎么获取到mr——>files——>table——>value这个文件名:





...全文
4388 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
引用 8 楼 aifengying0622 的回复:
[quote=引用 6 楼 JustinQin 的回复:] [quote=引用 4 楼 aifengying0622 的回复:] 我用的是MultipartFile这个类来接收form表单file的id,如下 @RequestMapping(value = "/upload") @ResponseBody public ModelAndView upload(@RequestParam(value = "file", required = false) MultipartFile multipartFile, HttpServletRequest request, ModelMap map){} 获取上传的文件名字:String fileName = multipartFile.getOriginalFilename().toString();
从Servlet里面的request请求里面获取上传的文件名,看图,不是从controller控制层哦,从控制器获取的话,那就简单了。[/quote]没理解错的话,你想获得的是你上传的文件名称,servlet没写过,参考这个吧希望对你有用:http://blog.csdn.net/funi16/article/details/8434157[/quote] 我想要的效果是从servlet拦截request请求,然后获取到上传的文件名用来写入到操作日志,最后在将这个request请求分发给封装好的上传文件的方法。 PS:实际上是做不到的,因为request请求getInputstream()方法只能写一次流,我用来写入日志了,后面分发的request请求中已经不存在要上传的文件内容了。 就会出现操作日志中显示"上传了xxx文件",但实际却没有上传的问题。 这位兄弟给的链接参考很好,博主写的一篇很好的文件上传的文章。我用他的方法来实现文件上传,同时将操作写入日志,解决了我的问题,谢谢哈
  • 打赏
  • 举报
回复
我想要的效果是从servlet拦截request请求,然后获取到上传的文件名用来写入到操作日志,最后在将这个request请求分发给封装好的上传文件的方法。 PS:实际上是做不到的,因为request请求getInputstream()方法只能写一次流,我用来写入日志了,后面分发的request请求中已经不存在要上传的文件内容了。 就会出现操作日志中显示"上传了xxx文件",但实际却没有上传的问题。 这位兄弟给的链接参考很好,博主写的一篇很好的文件上传的文章。我用他的方法来实现文件上传,同时将操作写入日志,解决了我的问题,谢谢哈
独家de记忆 2017-11-03
  • 打赏
  • 举报
回复
引用 7 楼 JustinQin 的回复:
引用 3 楼 r562253897 的回复:
mr.getOriginalFilename()
mr.getOriginalFilename() 这个就取到你上传的文件名称了啊
Bean小风 2017-11-03
  • 打赏
  • 举报
回复
引用 6 楼 JustinQin 的回复:
[quote=引用 4 楼 aifengying0622 的回复:] 我用的是MultipartFile这个类来接收form表单file的id,如下 @RequestMapping(value = "/upload") @ResponseBody public ModelAndView upload(@RequestParam(value = "file", required = false) MultipartFile multipartFile, HttpServletRequest request, ModelMap map){} 获取上传的文件名字:String fileName = multipartFile.getOriginalFilename().toString();
从Servlet里面的request请求里面获取上传的文件名,看图,不是从controller控制层哦,从控制器获取的话,那就简单了。[/quote]没理解错的话,你想获得的是你上传的文件名称,servlet没写过,参考这个吧希望对你有用:http://blog.csdn.net/funi16/article/details/8434157
  • 打赏
  • 举报
回复
引用 3 楼 r562253897 的回复:
mr.getOriginalFilename()
  • 打赏
  • 举报
回复
引用 4 楼 aifengying0622 的回复:
我用的是MultipartFile这个类来接收form表单file的id,如下
@RequestMapping(value = "/upload")
@ResponseBody
public ModelAndView upload(@RequestParam(value = "file", required = false) MultipartFile multipartFile,
HttpServletRequest request, ModelMap map){}
获取上传的文件名字:String fileName = multipartFile.getOriginalFilename().toString();
从Servlet里面的request请求里面获取上传的文件名,看图,不是从controller控制层哦,从控制器获取的话,那就简单了。
  • 打赏
  • 举报
回复
引用 2 楼 qq_39912309 的回复:
点不出来吗?
断点当然可以点击出来啦,但是怎么去获取这个mr对象里面,获取到mr——>files——>table——>value——>filename="xxxx.doc"这个上传的文件名
Bean小风 2017-11-03
  • 打赏
  • 举报
回复
我用的是MultipartFile这个类来接收form表单file的id,如下 @RequestMapping(value = "/upload") @ResponseBody public ModelAndView upload(@RequestParam(value = "file", required = false) MultipartFile multipartFile, HttpServletRequest request, ModelMap map){} 获取上传的文件名字:String fileName = multipartFile.getOriginalFilename().toString();
独家de记忆 2017-11-03
  • 打赏
  • 举报
回复
mr.getOriginalFilename()
qq_39912309 2017-11-03
  • 打赏
  • 举报
回复
点不出来吗?
  • 打赏
  • 举报
回复
大家帮看下, Sevlet代码如下: String root=getServletContext().getRealPath("/"); request.setCharacterEncoding("utf-8"); MultipartRequest mr=new MultipartRequest(request, root,"utf-8"); response.setCharacterEncoding("utf-8");

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧