String type = FileUtil.extName(originalFilename); 无法解析 'FileUtil' 中的方法 'extName'
时间: 2023-06-25 09:03:16 浏览: 421
这个问题可能是因为在你的代码中没有导入 `FileUtil` 类或者没有正确地使用该类。请确保你已经正确地导入了该类,可以使用以下代码导入:
```java
import cn.hutool.core.io.FileUtil;
```
另外,请确保你的项目中包含了 Hutool 库,可以在项目中添加以下 Maven 依赖:
```xml
<dependency>
<groupId>cn.hutool</groupId>
<artifactId>hutool-all</artifactId>
<version>5.5.10</version>
</dependency>
```
如果你使用的是 Gradle,可以添加以下依赖:
```
implementation 'cn.hutool:hutool-all:5.5.10'
```
如果仍然无法解决问题,请提供更多的代码和错误信息。
相关问题
@PostMapping("/uploadImg") public Object uploadImg(@RequestParam MultipartFile file) throws IOException { String originalFilename = file.getOriginalFilename(); String type = FileUtil.extName(originalFilename); long size = file.getSize(); // 定义一个文件唯一的标识码 String fileUUID = IdUtil.fastSimpleUUID() + StrUtil.DOT + type; File uploadFile = new File(FILE_UPLOAD_PATH + fileUUID); // 判断配置的文件目录是否存在,若不存在则创建一个新的文件目录 File parentFile = uploadFile.getParentFile(); if (!parentFile.exists()) { parentFile.mkdirs(); } String url; // 获取文件的md5 String md5 = SecureUtil.md5(file.getInputStream()); // 从数据库查询是否存在相同的记录 Files dbFiles = getFileByMd5(md5); if (dbFiles != null) { url = dbFiles.getUrl(); } else { // 上传文件到磁盘 file.transferTo(uploadFile); // 数据库若不存在重复文件,则不删除刚才上传的文件 url = "http://localhost:9090/file/" + fileUUID; } // 存储数据库 Files saveFile = new Files(); saveFile.setName(originalFilename); saveFile.setType(type); saveFile.setSize(size / 1024); // 单位 kb saveFile.setUrl(url); saveFile.setMd5(md5); fileMapper.insert(saveFile); Map<String, Object> map = new HashMap<>(); map.put("errno", 0); map.put("data", JSONUtil.parseArray("[{\"url\": \"" + url + "\"}]")); return map; }
这段代码是一个用于文件上传的接口,使用了Spring的@PostMapping注解。当请求到达该接口时,会从请求中获取上传的文件,并将其存储到本地磁盘上指定的目录中。如果该文件已经存在于数据库中,则会返回该文件对应的URL,否则会将其记录在数据库中,并返回该文件的URL。最后,将结果封装成一个Map对象返回给调用方。
@Override public void update(TijianBean tijianBean, HttpServletRequest request) { MultipartFile file = tijianBean.getFile(); if(file.getSize()>0){ String upload = FileUtil.upload(file, request); tijianBean.setImg(upload); } tijianMapper.update(tijianBean); }
这是一个 Java 代码片段,其中使用了 Spring 框架的注解 @Override 和 HttpServletRequest 类。该方法的作用是更新一个名为 TijianBean 的实例,其中包含一个名为 file 的文件属性。如果文件大小大于 0,则将文件上传到服务器,并将上传后的文件路径设置为 TijianBean 的 img 属性。最后,调用 tijianMapper 的 update 方法更新 TijianBean 对象。
阅读全文