目录
1.FileInfo实体类
package cn.piesat.document.domain;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.Date;
import java.util.List;
@Data
@NoArgsConstructor
@AllArgsConstructor
@Builder
public class FileInfo {
/**
* 文件夹或文件名
*/
private String fileName;
/**
* 相对路径
*/
private String filePath;
/**
* 绝对路径
*/
private String absolutePath;
/**
* 文件大小
*/
private Long fileSize;
/**
* 更新时间
*/
private Date updateTime;
/**
* 文件中子文件
*/
private List<FileInfo> childrenFileList;
/**
* 文件类型 1其他文件 2-模板文件 判断选择不同的根路径
*/
private Integer fileType;
}
2.service接口
/**
* 获取文件目录树
*
* @param fileInfo 文件信息
* @param isFile 是否获得文件
* @param isChildren 是否获得子集
* @return 文件目录树
* @throws FileNotFoundException
*/
List<FileInfo> getFileDirectoryTree(FileInfo fileInfo, Boolean isFile, Boolean isChildren) throws FileNotFoundException;
/**
* 新建文件夹
*
* @param fileInfo 文件信息
* @return 新建成功返回true否则false
*/
boolean newFolder(FileInfo fileInfo);
/**
* 删除文件
*
* @param fileInfo 文件信息
* @return 删除成功返回true否则false
*/
boolean delFile(FileInfo fileInfo);
3. impl实现
/**
* 获取文档目录树
*
* @param fileInfo 文件信息
* @param isFile 是否获得文件
* @param isChildren 是否获得子集
* @return
* @throws FileNotFoundException
*/
@Override
public List<FileInfo> getFileDirectoryTree(FileInfo fileInfo, Boolean isFile, Boolean isChildren) throws FileNotFoundException {
List<FileInfo> tree = new ArrayList<>();
//获取根路径配置
String rootDirectory = getRootDirectory(fileInfo.getFileType());
File file = new File(rootDirectory

这个博客介绍了如何实现一个文件管理系统,包括FileInfo实体类、服务接口、实现类和Controller。系统提供了获取文件目录树、新建文件夹和删除文件的功能,涉及文件路径处理、文件属性设置和文件操作。此外,还包含了一个IO操作工具类用于文件读写。
最低0.47元/天 解锁文章
362

被折叠的 条评论
为什么被折叠?



