使用七牛云进行对象存储

使用七牛云进行对象存储
强烈推介IDEA2020.2破解激活,IntelliJ IDEA 注册码,2020.2 IDEA 激活码

1.maven依赖

<!--七牛-->
<dependency>
    <groupId>com.qiniu</groupId>
    <artifactId>qiniu-java-sdk</artifactId>
    <version>7.2.8</version>
</dependency>
<dependency>
    <groupId>commons-fileupload</groupId>
    <artifactId>commons-fileupload</artifactId>
    <version>1.3.1</version>
</dependency>
<dependency>
    <groupId>commons-io</groupId>
    <artifactId>commons-io</artifactId>
    <version>2.5</version>
</dependency>

2.qiniu.properties配置文件中配置七牛云的信息:

qiniu.accessKey=4GHsXCE6Mr0jBEQPsqNv24Hg5KnrqtMG9lo98ZpR
qiniu.secretKey=e0rYJNsgCIFafNmn7Fn7Qze4pq-kPVNvudCFFBT0
qiniu.bucket=saas
qiniu.rtValue=pxrretzic.bkt.clouddn.com

3.前端页面product-list.jsp 添加文件上传表单

在这里插入图片描述

4.springmvc.xml中加载配置文件

<!--加载配置文件-->
<context:property-placeholder location="classpath:properties/qiniu.properties"/>
<!--配置文件上传解析器, 注意:解析器的id是固定-->
<bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
    <property name="maxUploadSize" value="10485760"/>
</bean>

5.后端控制器方法(上传图片到七牛云)

   /** * 2. 添加或修改 * <input type="file" name="productPhoto" > */
    @Autowired
    private FileUploadUtil fileUploadUtil;

    @RequestMapping("/edit")
    public String edit(ContractProduct contractProduct, MultipartFile productPhoto){
   
        // 设置企业信息
        contractProduct.setCompanyId(getLoginCompanyId());
        contractProduct.setCompanyName(getLoginCompanyName());

        // 判断
        if (StringUtils.isEmpty(contractProduct.getId())){
   
            try {
   
                // 货物图片上传到七牛云
                String serverUrl = "http://"+fileUploadUtil.upload(productPhoto);
                // 设置图片路径
                contractProduct.setProductImage(serverUrl);
            } catch (Exception e) {
   
                e.printStackTrace();
            }
            contractProductService.save(contractProduct);
        }else {
   
            contractProductService.update(contractProduct);
        }

        // 重定向到列表
        return "redirect:/cargo/contractProduct/list.do?contractId="
                +contractProduct.getContractId();
    }
本文来源KeiKei.,由架构君转载发布,观点不代表Java架构师必看的立场,转载请标明来源出处:https://javajgs.com/archives/25333

发表评论