⑴ 请教spring mvc 的文件上传
springmvc文件上传1.加入jar包:commons-fileupload-1.2.2.jarcommons-io-2.0.1.jarlperson.java中加属性,实现get ,set方法private String photoPath;2.创建WebRoot/upload目录,存放上传的文件1 <sf:form id="p" action="saveOrUpdate" 2 method="post" 3 modelAttribute="person" 4 enctype="multipart/form-data">5 6 <sf:hidden path="id"/> 7 name: <sf:input path="name"/><br>8 age: <sf:input path="age"/><br>9 photo: <input type="file" name="photo"/><br>上面第9行文件上传框,不能和实体对象属性同名,类型不同 controller配置1 12、文件上传功能实现 配置文件上传解析器 2 @RequestMapping(value={"/saveOrUpdate"},method=RequestMethod.POST) 3 public String saveOrUpdate(Person p, 4 @RequestParam("photo") MultipartFile file, 5 HttpServletRequest request 6 ) throws IOException{ 7 if(!file.isEmpty()){ 8 ServletContext sc = request.getSession().getServletContext(); 9 String dir = sc.getRealPath(“/upload”); //设定文件保存的目录10 11 String filename = file.getOriginalFilename(); //得到上传时的文件名12 FileUtils.writeByteArrayToFile(new File(dir,filename), file.getBytes());13 14 p.setPhotoPath(“/upload/”+filename); //设置图片所在路径15 16 System.out.println("upload over. "+ filename);17 } 18 ps.saveOrUpdate(p); 19 return "redirect:/person/list.action"; //重定向20 }3.文件上传功能实现 spring-mvc.xml 配置文件上传解析器1 <!– 文件上传解析器 id 必须为multipartResolver –>2 <bean id="multipartResolver" 3 class="org.springframework.web.multipart.commons.CommonsMultipartResolver">4 <property name="maxUploadSize" value=“10485760"/> 5 </bean>6 7 maxUploadSize以字节为单位:10485760 =10M id名称必须这样写1 映射资源目录2 <mvc:resources location="/upload/" mapping="/upload/**"/>随即文件名常用的三种方式:文件上传功能(增强:防止文件重名覆盖)fileName = UUID.randomUUID().toString() + extName;fileName = System.nanoTime() + extName;fileName = System.currentTimeMillis() + extName;1 if(!file.isEmpty()){ 2 ServletContext sc = request.getSession().getServletContext(); 3 String dir = sc.getRealPath("/upload"); 4 String filename = file.getOriginalFilename(); 5 6 7 long _lTime = System.nanoTime(); 8 String _ext = filename.substring(filename.lastIndexOf(".")); 9 filename = _lTime + _ext;10 11 FileUtils.writeByteArrayToFile(new File(dir,filename), file.getBytes());12 13 p.setPhotoPath("/upload/"+filename);14 15 System.out.println("upload over. "+ filename);16 }图片显示 personList.jsp 1 <td><img src="${pageContext.request.contextPath}${p.photoPath}">${p.photoPath}</td>
⑵ springmvc下载文件出错
那就需要看看你的后台代码了。这个东西有通用下载类的。可以对比下哪里出错了。代码没问题的话 看看换个浏览器试试,有些浏览器的处理方式不同
⑶ 谁给个SpringMvc的源码jar包,,,,百度云。。或下载链接。。。。
spring4.2 https://yunpan.cn/cv5g9r6BeU7xx 访问密码 dc66看错了.下面是源码包,不过是4.3.2的https://yunpan.cn/cv5sZKVqMdXYx 访问密码 45e9
⑷ spring MVC 与mybatis框架来实现文件上传下载 求解决
去github上搜“fileupload spring”。参考项目一大把。
⑸ 如何使用springmvc实现文件上传
在现在web应用的开发,springMvc使用频率是比较广泛的,现在给大家总结一下springMvc的上传附件的应用,希望对大家有帮助,废话不多说,看效果
准备jar包
4.准备上传代码@Controller//spring使用注解管理bean@RequestMapping("/upload")//向外暴露资源路径,访问到该类public class UploadController {/*** 上传功能* @return* @throws IOException*/@RequestMapping("/uploadFile")//向外暴露资源路径,访问到该方法public String uploadFile(MultipartFile imgFile,HttpServletRequest req) throws IOException{if(imgFile != null ){//获取文件输入流InputStream inputStream = imgFile.getInputStream();//随机产生文件名,原因是:避免上传的附件覆盖之前的附件String randName = UUID.randomUUID().toString();//随机文件名//获取文件原名String originalFilename = imgFile.getOriginalFilename();//获取文件后缀名(如:jpgpng…)String extension = FilenameUtils.getExtension(originalFilename);//新名字String newName = randName+"."+extension;//获取servletContextServletContext servletContext = req.getSession().getServletContext();//获取根路径String rootPath = servletContext.getRealPath("/");File file = new File(rootPath,"upload");//判断文件是否存在,若不存在,则创建它if(!file.exists()){file.mkdirs();}//获取最终输出的位置FileOutputStream fileOutputStream = new FileOutputStream(new File(file,newName));//上传附件IOUtils.(inputStream, fileOutputStream);}return null;}}
⑹ springmvc怎么获取文件的输入流
springmvc 中controller获取ajax数据的方法:1、页面jsp代码:<table style="width: 100%" class="table" cellspacing="1" cellpadding="1" border="0"><tr><td class="ti1" colSpan="2">请选择审讯室</td></tr><tr><td class="ti2hui">审讯室名称</td><td class="ti1cu"><select id="roomid" name="roomid" ><c:forEach items="${roomlist}" var="room"><option value ="${room.id}">${room.name}</option></c:forEach></select></td></tr><tr><td class="ti2hui" colSpan="2" align="center"><input type="button" onclick="setshow()" value="确定"/> </td></tr></table>点击确定后触发ajax接口:function setshow(){ $.ajax( {type : "POST",url : "<%=request.getContextPath()%>/initroom.do?method=set",data : {'room' : $("#roomid").find('option:selected').text(),'roomid' :$("#roomid").val()},dataType: "json",success : function(data) {if(data.success){alert("设置成功!");}else{alert("设置失败!");}},error :function(){alert("网络连接出错!");} }); } 2、后台controller写法: @RequestMapping(params = "method=set")public void jump(HttpSession session,HttpServletRequest request, HttpServletResponse response) throws Exception{String roomid= request.getParameter("roomid");String room= request.getParameter("room");session.setAttribute("ROOMID", roomid);session.setAttribute("ROOMNAME", room);System.out.println("session set:"+room+"=="+roomid);response.setCharacterEncoding("utf-8");response.getWriter().write("{\"success\":true }");response.getWriter().flush();}3、springmvc 返回信息到ajax:import com.googlecode.jsonplugin.JSONUtil;List<Records> recordList = new ArrayList<Records>();//获取recordlist操作省略response.setCharacterEncoding("utf-8");response.getWriter().write("{\"success\":true, \"data\":" + JSONUtil.serialize(recordList) + "}");response.getWriter().flush();
⑺ springmvc怎么读取文件
SpringMVC默认是关闭fileupload功能的,开启该能够并验证文件上传,需要做如下几件事情:第一:打开SpringMVC的文件上传功能:***-servlet.xml中配置:<bean id="multipartResolver"class="org.springframework.web.multipart.commons.CommonsMultipartResolver"><property name="maxUploadSize" value="100000"/><property name="maxInMemorySize" value="10240" /></bean>配置后,当SpringMVC接受到multipartRequest的时候,就会把HttpServletRequest转为MultipartHttpServletRequest类型,第二步:创建上传文件的file.jsp:<form action="dynamicFields.action?method=uploadFile" method="post" enctype="multipart/form-data"><input type="file" name="myfile" id="myfile" value="" /><br/><input type="submit" value="确认提交"></form>一定不要漏掉enctype="multipart/form-data",否则web容器认为这不是一个MultipartRequest请求,会报错org.springframework.web.multipart.MultipartException: The current request is not a multipart request。第三步:Controller层创建代码:@RequestMapping(params = {"method=uploadFile"})public ModelAndView uploadFile(@RequestParam("myfile") MultipartFile myfile,HttpServletRequest request, HttpServletResponse response) throws Exception {if(!myfile.isEmpty()){logger.info(myfile.getName());byte[] bs= myfile.getBytes() ;logger.info(new String(bs));}return null;}部署web应用运行后,能够看到控制台中打印出上传文件的内容,BINGO搞定(SpringMVC依赖common-fileupload.jar,需要加载该jar包)
⑻ springmvc下载的名称是数据库中保存的名称
下载输出流的时候就能命名文件名啊,你说的不能让用户手动改文件名是什么意思?下载的时候用户都可以重命名,你控制不了。
⑼ spring+spring mvc+ hibernate框架里怎么实现图片的上传,下载,展示功能
这个嘛 只和SpringMVC有点关系。 前端提交的文件,由springmvc拦截进行处理。您可以使用上传插件。比如网络上传插件:Web Uploader。怎么用的话,官网有Demo。也有API文档,可以自行查阅。当然不用插件的话,也可以自己做个简单的,用Form表单提交到后台,后台对文件进行保存,展示的话直接用<img src='xxx路径'>。您可以自己组织语言网络搜索一下代码怎么写。上传文件实际上就是传输一些数据到后台,然后使用java把这些数据保存到硬盘上,前端直接根据路径来进行访问。
未经允许不得转载:山九号 » springmvc文件下载|如何使用springmvc实现文件上传