以前对与页面上传文件是一知半懂,这次将所有相关的知识总结一下,便于以后记忆。
首先是前端的jsp页面部分:
form表单的enctype属性 :
所以上传文件的时候,form表单里面一定要写上enctype="multipart/form-data"。
其次是servlet部分:
form表单里面写上enctype="multipart/form-data"的时候,后台是不能通过request.getparam()获取属性值的。
参考:https://blog.csdn.net/zllww123/article/details/77587292
我们还可以运用组件SmartUpload组件。这样可以根据属性值得到对应的值,便于我们多参数添加到数据库。
参考:https://www.jianshu.com/p/e2b5cf4e0cfe
SmartUpload su = new SmartUpload();//新建一个SmartUpload对象
su.getRequest().getParameterValues();取数组值
su.getRequest().getParameter( );取单个参数单个值
同时附上文件上传所需jar包:
SmartUpload组件所需jar包:https://download.csdn.net/download/ruoyang666/10892223
FileUpload组件所需jar包:
https://download.csdn.net/download/ruoyang666/10892339