Springboot+Linux上传并显示图片
时间: 2024-01-09 09:03:14 浏览: 10
首先,你需要在Springboot项目中配置文件上传功能,可以使用Spring MVC中的MultipartFile类来实现。下面是一个简单的上传文件的示例代码:
```java
@PostMapping("/upload")
public ResponseEntity<String> handleFileUpload(@RequestParam("file") MultipartFile file) {
String fileName = StringUtils.cleanPath(file.getOriginalFilename());
try {
// 保存文件到服务器
Files.copy(file.getInputStream(), this.rootLocation.resolve(fileName));
} catch (IOException e) {
throw new RuntimeException("Failed to store file " + fileName, e);
}
return ResponseEntity.ok().body("File uploaded successfully: " + fileName);
}
```
其中,`rootLocation`是文件上传的目标目录。
接着,你需要在Linux系统中配置一个Web服务器来让上传的图片能够被访问到。我们这里使用Nginx作为Web服务器。
在Nginx的配置文件中添加以下代码:
```
server {
listen 80;
server_name example.com;
location /uploads/ {
alias /path/to/uploads/directory/;
autoindex on;
}
}
```
其中,`/path/to/uploads/directory/`是你在Springboot项目中配置的文件上传目录。
最后,你可以在前端页面中通过以下代码来显示已经上传的图片:
```html
<img src="http://example.com/uploads/filename.jpg" alt="image" />
```
其中,`http://example.com/`是你的服务器地址,`filename.jpg`是上传的图片文件名。
阅读全文