在java当中只有MINIO上传文件的URL和token,该怎么上传文件到minio上面?
时间: 2024-10-10 22:09:53 浏览: 86
在Java中使用MINIO上传文件到服务器,首先你需要安装MINIO Java客户端库,可以通过Maven或Gradle将其添加到项目依赖中。以下是使用基本步骤:
1. **添加依赖**:
- 如果使用Maven, 在`pom.xml`中添加:
```xml
<dependency>
<groupId>io.minio</groupId>
<artifactId>minio</artifactId>
<version>RELEASE</version>
</dependency>
```
- 或者使用Gradle, 添加到`build.gradle`:
```groovy
implementation 'io.minio:minio:RELEASE'
```
2. **初始化客户端**:
使用给定的URL和访问令牌创建MinioClient实例:
```java
String minioUrl = "http://your-minio-server:9000";
String accessKey = "your-access-key";
String secretKey = "your-secret-key";
MinioClient client = new MinioClient(minioUrl, accessKey, secretKey);
```
3. **定义存储桶**:
确保目标目录(存储桶)存在,如果没有,可以创建它:
```java
String bucketName = "your-bucket-name";
ObjectExistsResponse exists = client.statObject(bucketName, ""); // ""表示根目录
if (!exists.isFound()) {
client.makeBucket(bucketName);
}
```
4. **上传文件**:
读取本地文件并上传至指定路径:
```java
try (InputStream fileStream = Files.newInputStream(Paths.get("path/to/local/file"))) {
PutObjectRequest putObjRequest = new PutObjectRequest(bucketName, "file-name", fileStream);
client.putObject(putObjRequest);
} catch (IOException e) {
e.printStackTrace();
}
```
阅读全文