日韩精品欧美激情国产一区_中文无码精品一区二区三区在线_岛国毛片AV在线无码不卡_亞洲歐美日韓精品在線_使劲操好爽好粗视频在线播放_日韩一区欧美二区_八戒八戒网影院在线观看神马_亚洲怡红院在线色网_av无码不卡亚洲电影_国产麻豆媒体MDX

servlet接收表單文件上傳到阿里oss指定目錄下

時間:2024-10-17 21:40:08 類型:JAVA
字號:    

servlet接收表單文件上傳并上傳到阿里oss指定目錄下


import com.aliyun.oss.OSS;
import com.aliyun.oss.OSSClientBuilder;

import javax.servlet.*;
import javax.servlet.http.*;
import javax.servlet.annotation.*;
import java.io.IOException;
import java.io.InputStream;
import java.util.UUID;

@WebServlet(name = "OssUpload", value = "/OssUpload")
@MultipartConfig
public class OssUploadServlet extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

    }

    @Override
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        String endpoint = "endpoint";
        String accessKeyId = "";
        String accessKeySecret = "";
        String bucketName = "";
       

        // 確保你的表單設(shè)置了enctype="multipart/form-data"
        // 假設(shè)上傳的文件字段名為"file"
        Part filePart = request.getPart("file");
        String fileName = filePart.getSubmittedFileName();

        // 使用SDK上傳文件
        OSS ossClient = new OSSClientBuilder().build(endpoint, accessKeyId, accessKeySecret);
        try {
            // 生成新的文件名,避免重名沖突
            String newFileName = UUID.randomUUID().toString() + "-" + fileName;
            InputStream inputStream = filePart.getInputStream();
            ossClient.putObject(bucketName, "images/2024/" + newFileName, inputStream);
            ossClient.shutdown();

            // 返回文件的URL或其他處理
            String fileUrl = "https://" + bucketName + "." + endpoint + "/" + newFileName;
            response.getWriter().write("File uploaded successfully: " + fileUrl);
        } catch (Exception e) {
            response.getWriter().write("Error: " + e.getMessage());
        }
    }
}


<