博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Java之品优购课程讲义_day05(9)
阅读量:5775 次
发布时间:2019-06-18

本文共 1836 字,大约阅读时间需要 6 分钟。

商家后台-商品录入【商品图片上传】

6.1 需求分析
在商品录入界面实现多图片上传
Java之品优购课程讲义_day05(9)
当用户点击新建按钮,弹出上传窗口
Java之品优购课程讲义_day05(9)
6.1 后端代码
6.1.1 工具类
(1)pinyougou-common 工程 pom.xml 引入依赖

<!-- 文件上传组件 -->

org.csource.fastdfs
fastdfs
commons-fileupload
commons-fileupload

(2)将“资源/fastDFS/工具类”的 FastDFSClient.java 拷贝到 pinyougou-common 工程

6.1.1 配置文件
(1)将“资源/fastDFS/配置文件”文件夹中的 fdfs_client.conf 拷贝到 pinyougou-shop-web
工程 config 文件夹
(2)在 pinyougou-shop-web 工程 application.properties 添加配置
Java之品优购课程讲义_day05(9)

 

<property name="defaultEncoding" value="UTF-8"></property>

<!-- 设定文件上传的最大值 5MB,510241024 -->

<property name="maxUploadSize" value="5242880"></property>

</bean>

 

6.1.1 控制层

在 pinyougou-shop-web 新建 UploadController.java

package com.pinyougou.shop.controller;

import org.springframework.beans.factory.annotation.Value; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import org.springframework.web.multipart.MultipartFile;

import entity.Result;

 

import util.FastDFSClient;

/**

*文件上传 Controller

*@author Administrator

*

*/ @RestController

public class UploadController {

@Value("${FILE_SERVER_URL}")

 

private String FILE_SERVER_URL;//文件服务器地址

@RequestMapping("/upload")

public Result upload( MultipartFile file){

//1、取文件的扩展名

String originalFilename = file.getOriginalFilename();

String extName = originalFilename.substring(originalFilename.lastIndexOf(".")

  • 1);

try {

//2、创建一个 FastDFS 的客户端

FastDFSClient fastDFSClient

= new FastDFSClient("classpath:config/fdfs_client.conf");

//3、执行上传处理

String path = fastDFSClient.uploadFile(file.getBytes(), extName);

//4、拼接返回的 url 和 ip 地址,拼装成完整的 url

String url = FILE_SERVER_URL + path;

return new Result(true,url);

} catch (Exception e) { e.printStackTrace();

return new Result(false, "上传失败");

}

}

}

转载于:https://blog.51cto.com/13517854/2161163

你可能感兴趣的文章
消费贷用户70%月收入低于5000元 80、90后是主要人群
查看>>
2018年内蒙古外贸首次突破1000亿元
查看>>
CTOR有助于BCH石墨烯技术更上一层楼
查看>>
被遗忘的CSS
查看>>
Webpack中的sourcemap以及如何在生产和开发环境中合理的设置sourcemap的类型
查看>>
做完小程序项目、老板给我加了6k薪资~
查看>>
java工程师linux命令,这篇文章就够了
查看>>
关于React生命周期的学习
查看>>
webpack雪碧图生成
查看>>
搭建智能合约开发环境Remix IDE及使用
查看>>
Spring Cloud构建微服务架构—服务消费基础
查看>>
RAC实践采坑指北
查看>>
runtime运行时 isa指针 SEL方法选择器 IMP函数指针 Method方法 runtime消息机制 runtime的使用...
查看>>
LeetCode36.有效的数独 JavaScript
查看>>
Scrapy基本用法
查看>>
PAT A1030 动态规划
查看>>
自制一个 elasticsearch-spring-boot-starter
查看>>
软件开发学习的5大技巧,你知道吗?
查看>>
java入门第二季--封装--什么是java中的封装
查看>>
【人物志】美团前端通道主席洪磊:一位产品出身、爱焊电路板的工程师
查看>>