【学习日记】项目中图片的处理(spring+mybatis+spring mvc)

  • 内容
  • 相关

前言

在写项目的时候,做到了图片相关处理的时候遇到了一些问题,一开始像往常一样使用smartupload组件来处理,可以发现是行不通的,后来百度了很多方法,整理调试了将近3个小时才将问题解决,所有相关jar包以及配置相关见下文。

jar包资源

jar包.png

jar包的相关下载见文章底部

 

springmvc.xml

	<bean id="multipartResolver"
	class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
		<property name="maxUploadSize">
			<value>10000000000</value> <!-- 以字节byte为单位 -->
		</property>
		<property name="defaultEncoding">
			<value>UTF-8</value>
		</property>
	</bean>

在springmvc配置文件中配置multipartResolver的been

controller

	@RequestMapping("uploadImg")
	@ResponseBody
	public Map<String, Object> uploadImg(MultipartFile file,HttpServletRequest request, HttpServletResponse response) throws IllegalStateException, IOException {
		/**
		 *	 上传图片
         */
		String pathRoot = request.getSession().getServletContext().getRealPath("");
		String path="";
		String newFileName="";
		if(!file.isEmpty()){
			//生成uuid作为文件名称
			String uuid = UUID.randomUUID().toString().replaceAll("-","");
			//获得文件类型(可以判断如果不是图片,禁止上传)
			String contentType=file.getContentType();
			//获得文件后缀名称
			String imageName=contentType.substring(contentType.indexOf("/")+1);
			newFileName=uuid+"."+imageName;
			path="/images/tou/"+newFileName;
			file.transferTo(new File(pathRoot+path));
		}
		System.out.println(path);

        Map<String, Object> map =new HashMap<String, Object>();
        map.put("code", "0");
		map.put("msg", newFileName);
		return map;
	}

这个接口返回的图片的文件名

前台调用(示例)

		upload.render({
			elem : '#imgUpload1' //绑定元素
			,url : '../user/uploadImg' //上传接口
			,done : function(res) {
				//alert(JSON.stringify(res));
				 //上传完毕回调
				$("#tx2").attr("src","../images/tou/"+res.msg);
				$("#tx3").val(res.msg);
			},
			error : function() {
				//请求异常回调
			}
		});

前台我是使用的layui的upload组件调用的接口

 

资源下载

 




  文件名稱:相关jar包

  更新時間:2019-11-27 21:27:21

  下載声明:

立即下載

下载链接

网盘下载

本文标签:

版权声明:若无特殊注明,本文皆为《囚墨吖丶》原创,转载请保留文章出处。

本文链接:【学习日记】项目中图片的处理(spring+mybatis+spring mvc) - http://www.dmlove.club/13.html

文章收录:[百度已收录] | [360已收录] | [搜狗已收录]

发表评论

电子邮件地址不会被公开。 必填项已用*标注

允许邮件通知