From 57b6138d8b8334e7eacadcd4f8e4db2ee0a538ec Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=A9=AC=E8=B6=85?= Date: Fri, 4 Dec 2020 16:55:38 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BB=A3=E7=A0=81=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/qiwenshare/file/api/IFileService.java | 8 +- .../file/api/IFiletransferService.java | 4 - .../file/controller/FileController.java | 3 +- .../controller/FiletransferController.java | 2 +- .../com/qiwenshare/file/domain/FileBean.java | 52 +++++-------- .../qiwenshare/file/domain/StorageBean.java | 13 +--- .../com/qiwenshare/file/domain/UserBean.java | 75 ++++++------------- .../qiwenshare/file/mapper/FileMapper.java | 14 +--- ...transferMapper.java => StorageMapper.java} | 3 +- .../qiwenshare/file/service/FileService.java | 39 ++++------ .../file/service/FiletransferService.java | 16 ++-- .../file/service/RequestListener.java | 24 ------ file-web/src/main/resources/banner.txt | 0 .../resources/mybatis/mapper/FileMapper.xml | 64 +--------------- ...letransferMapper.xml => StorageMapper.xml} | 2 +- 15 files changed, 81 insertions(+), 238 deletions(-) rename file-web/src/main/java/com/qiwenshare/file/mapper/{FiletransferMapper.java => StorageMapper.java} (78%) delete mode 100644 file-web/src/main/java/com/qiwenshare/file/service/RequestListener.java create mode 100644 file-web/src/main/resources/banner.txt rename file-web/src/main/resources/mybatis/mapper/{FiletransferMapper.xml => StorageMapper.xml} (93%) diff --git a/file-web/src/main/java/com/qiwenshare/file/api/IFileService.java b/file-web/src/main/java/com/qiwenshare/file/api/IFileService.java index 4565470..9054e43 100644 --- a/file-web/src/main/java/com/qiwenshare/file/api/IFileService.java +++ b/file-web/src/main/java/com/qiwenshare/file/api/IFileService.java @@ -8,18 +8,18 @@ import java.util.List; public interface IFileService extends IService { - void insertFile(FileBean fileBean); + void batchInsertFile(List fileBeanList, Long userId); void updateFile(FileBean fileBean); List selectFileByNameAndPath(FileBean fileBean); - FileBean selectFileById(FileBean fileBean); + List selectFilePathTreeByUserId(FileBean fileBean); List selectFileList(FileBean fileBean); - List selectFileListByIds(List fileIdList); + List selectFileTreeListLikeFilePath(String filePath); void deleteFile(FileBean fileBean, UserBean sessionUserBean); - void deleteFileByIds(List fileIdList); + void updateFilepathByFilepath(String oldfilePath, String newfilePath, String fileName, String extendName); List selectFileByExtendName(List fileNameList, long userId); List selectFileNotInExtendNames(List fileNameList, long userId); diff --git a/file-web/src/main/java/com/qiwenshare/file/api/IFiletransferService.java b/file-web/src/main/java/com/qiwenshare/file/api/IFiletransferService.java index 05b0f64..3c0bba5 100644 --- a/file-web/src/main/java/com/qiwenshare/file/api/IFiletransferService.java +++ b/file-web/src/main/java/com/qiwenshare/file/api/IFiletransferService.java @@ -22,10 +22,6 @@ public interface IFiletransferService { */ void uploadFile(HttpServletRequest request, FileBean fileBean, UserBean sessionUserBean); - - - void deleteUserImageByIds(List imageidList); - StorageBean selectStorageBean(StorageBean storageBean); void insertStorageBean(StorageBean storageBean); diff --git a/file-web/src/main/java/com/qiwenshare/file/controller/FileController.java b/file-web/src/main/java/com/qiwenshare/file/controller/FileController.java index abf7772..2d44274 100644 --- a/file-web/src/main/java/com/qiwenshare/file/controller/FileController.java +++ b/file-web/src/main/java/com/qiwenshare/file/controller/FileController.java @@ -62,7 +62,7 @@ public class FileController { fileBean.setUploadTime(DateUtil.getCurrentTime()); - fileService.insertFile(fileBean); + fileService.save(fileBean); restResult.setSuccess(true); return restResult; } @@ -124,6 +124,7 @@ public class FileController { } fileBean.setFilePath(PathUtil.urlDecode(fileBean.getFilePath())); + List fileList = fileService.selectFileList(fileBean); restResult.setData(fileList); diff --git a/file-web/src/main/java/com/qiwenshare/file/controller/FiletransferController.java b/file-web/src/main/java/com/qiwenshare/file/controller/FiletransferController.java index de5f860..aa0a7f3 100644 --- a/file-web/src/main/java/com/qiwenshare/file/controller/FiletransferController.java +++ b/file-web/src/main/java/com/qiwenshare/file/controller/FiletransferController.java @@ -223,7 +223,7 @@ public class FiletransferController { @ResponseBody public RestResult getStorage(@RequestHeader("token") String token) { RestResult restResult = new RestResult(); - //UserBean sessionUserBean = (UserBean) SecurityUtils.getSubject().getPrincipal(); + UserBean sessionUserBean = userService.getUserBeanByToken(token); StorageBean storageBean = new StorageBean(); if (qiwenFileConfig.isShareMode()){ diff --git a/file-web/src/main/java/com/qiwenshare/file/domain/FileBean.java b/file-web/src/main/java/com/qiwenshare/file/domain/FileBean.java index 46196db..27c9639 100644 --- a/file-web/src/main/java/com/qiwenshare/file/domain/FileBean.java +++ b/file-web/src/main/java/com/qiwenshare/file/domain/FileBean.java @@ -19,66 +19,55 @@ import javax.persistence.*; @Entity @TableName("file") public class FileBean { - /** - * 文件id - */ + @Id @GeneratedValue(strategy = GenerationType.IDENTITY) @TableId(type = IdType.AUTO) + @Column(columnDefinition="bigint(20) comment '文件id'") private Long fileId; - - /** - * 用户id - */ + @Column(columnDefinition="bigint(20) comment '用户id'") private Long userId; - /** - * 文件URL - */ + @Column(columnDefinition="varchar(500) comment '文件url'") private String fileUrl; - /** - * 文件路径 - */ + @Column(columnDefinition="varchar(500) comment '文件路径'") private String filePath; - /** - * 上传时间 - */ + @Column(columnDefinition="varchar(25) comment '上传时间'") private String uploadTime; - /** - * 时间戳名称 - */ + @Column(columnDefinition="varchar(50) comment '时间戳名称'") private String timeStampName; - /** - * 扩展名 - */ + @Column(columnDefinition="varchar(10) comment '扩展名'") private String extendName; - /** - * 文件名 - */ + @Column(columnDefinition="varchar(100) comment '文件名'") private String fileName; - /** - * 文件大小 - */ + @Column(columnDefinition="bigint(10) comment '文件大小'") private Long fileSize; - /** - * 是否是目录 - */ + @Column(columnDefinition="int(1) comment '是否是目录 0-否, 1-是'") private Integer isDir; + @Column(columnDefinition="int(1) comment '是否是OSS云存储 0-否, 1-是'") private Integer isOSS; + @Column(columnDefinition="int(11) comment '文件引用数量'") private Integer pointCount; + @Column(columnDefinition="int(11) comment '文件删除标志 0/null-正常, 1-删除'") private Integer deleteFlag; + @Column(columnDefinition="varchar(25) comment '删除时间'") + private String deleteTime; + + @Column(columnDefinition="varchar(32) comment 'md5标识'") + private String identifier; + @Transient @TableField(exist = false) private String oldFilePath; @@ -115,6 +104,5 @@ public class FileBean { @TableField(exist = false) private long currentChunkSize; - private String identifier; } diff --git a/file-web/src/main/java/com/qiwenshare/file/domain/StorageBean.java b/file-web/src/main/java/com/qiwenshare/file/domain/StorageBean.java index 6a56475..5f1d391 100644 --- a/file-web/src/main/java/com/qiwenshare/file/domain/StorageBean.java +++ b/file-web/src/main/java/com/qiwenshare/file/domain/StorageBean.java @@ -13,21 +13,16 @@ import javax.persistence.*; @Entity @TableName("storage") public class StorageBean { - /** - * 存储id - */ + @Id @GeneratedValue(strategy = GenerationType.IDENTITY) + @Column(columnDefinition="bigint(20) comment '存储id'") private Long storageId; - /** - * 用户id - */ + @Column(columnDefinition="bigint(20) comment '用户id'") private Long userId; - /** - * 存储大小 - */ + @Column(columnDefinition="bigint(20) comment '存储大小'") private Long storageSize; public StorageBean() { diff --git a/file-web/src/main/java/com/qiwenshare/file/domain/UserBean.java b/file-web/src/main/java/com/qiwenshare/file/domain/UserBean.java index d81b622..4212917 100644 --- a/file-web/src/main/java/com/qiwenshare/file/domain/UserBean.java +++ b/file-web/src/main/java/com/qiwenshare/file/domain/UserBean.java @@ -19,36 +19,28 @@ import java.util.List; @Entity @TableName("user") public class UserBean { - /** - * 用户id - */ + @Id @GeneratedValue(strategy = GenerationType.IDENTITY) + @Column(columnDefinition="bigint(20) comment '用户id'") private Long userId; - /** - * openId qq登录使用 - */ + @Column(columnDefinition="varchar(30) comment 'openId qq登录使用'") private String openId; - /** - * 用户名称 - */ + @Column(columnDefinition="varchar(30) comment '用户名'") private String username; - /** - * 真实名 - */ + @Column(columnDefinition="varchar(30) comment '真实名'") private String realname; - /** - * 密码 - */ + @Column(columnDefinition="varchar(35) comment '密码'") private String password; /** * qq密码 */ + @Column(columnDefinition="varchar(35) comment 'qq密码'") private String qqPassword; /** @@ -57,70 +49,45 @@ public class UserBean { @Transient private String passwordAgain; - /** - * 手机号码 - */ + @Column(columnDefinition="varchar(15) comment '手机号码'") private String telephone; - /** - * 邮箱 - */ + @Column(columnDefinition="varchar(100) comment '邮箱'") private String email; - /** - * 年龄 - */ + @Column(columnDefinition="varchar(3) comment '年龄'") private String sex; - /** - * 生日 - */ + + @Column(columnDefinition="varchar(30) comment '生日'") private String birthday; - /** - * 省 - */ + @Column(columnDefinition="varchar(10) comment '省'") private String addrProvince; - /** - * 市 - */ + @Column(columnDefinition="varchar(10) comment '市'") private String addrCity; - /** - * 区 - */ + @Column(columnDefinition="varchar(10) comment '区'") private String addrArea; - /** - * 行业 - */ + @Column(columnDefinition="varchar(50) comment '行业'") private String industry; - /** - * 职位 - */ + @Column(columnDefinition="varchar(50) comment '职位'") private String position; - /** - * 介绍 - */ + @Column(columnDefinition="varchar(5000) comment '介绍'") private String intro; - /** - * 盐值 - */ + @Column(columnDefinition="varchar(20) comment '盐值'") private String salt;//加密密码的盐 //private byte state;//用户状态,0:创建未认证(比如没有激活,没有输入验证码等等)--等待验证的用户 , 1:正常状态,2:用户被锁定. - /** - * 用户头像URL - */ + @Column(columnDefinition="varchar(100) comment '用户头像URL'") private String imageUrl; - /** - * 注册时间 - */ + @Column(columnDefinition="varchar(30) comment '注册时间'") private String registerTime; diff --git a/file-web/src/main/java/com/qiwenshare/file/mapper/FileMapper.java b/file-web/src/main/java/com/qiwenshare/file/mapper/FileMapper.java index 4a72f5b..8c722ad 100644 --- a/file-web/src/main/java/com/qiwenshare/file/mapper/FileMapper.java +++ b/file-web/src/main/java/com/qiwenshare/file/mapper/FileMapper.java @@ -9,19 +9,13 @@ import java.util.List; public interface FileMapper extends BaseMapper { - void insertFile(FileBean fileBean); + void batchInsertFile(List fileBeanList); void updateFile(FileBean fileBean); - List selectFileByNameAndPath(FileBean fileBean); - FileBean selectFileById(FileBean fileBean); - List selectFilePathTreeByUserId(FileBean fileBean); + List selectFileList(FileBean fileBean); - List selectFileTreeListLikeFilePath(FileBean fileBean); - void deleteFileById(FileBean fileBean); - void deleteFileByIds(List fileIdList); - List selectFileListByIds(List fileIdList); + void updateFilepathByFilepath(String oldfilePath, String newfilePath); void updateFilepathByPathAndName(String oldfilePath, String newfilePath, String fileName, String extendName); - List selectFileByExtendName(@Param("fileNameList") List fileNameList, - @Param("userId") long userId); + } diff --git a/file-web/src/main/java/com/qiwenshare/file/mapper/FiletransferMapper.java b/file-web/src/main/java/com/qiwenshare/file/mapper/StorageMapper.java similarity index 78% rename from file-web/src/main/java/com/qiwenshare/file/mapper/FiletransferMapper.java rename to file-web/src/main/java/com/qiwenshare/file/mapper/StorageMapper.java index 4088f15..dfef7fb 100644 --- a/file-web/src/main/java/com/qiwenshare/file/mapper/FiletransferMapper.java +++ b/file-web/src/main/java/com/qiwenshare/file/mapper/StorageMapper.java @@ -5,10 +5,9 @@ import com.qiwenshare.file.domain.StorageBean; import java.util.List; -public interface FiletransferMapper { +public interface StorageMapper { - void deleteUserImageByIds(List imageidList); StorageBean selectStorageBean(StorageBean storageBean); diff --git a/file-web/src/main/java/com/qiwenshare/file/service/FileService.java b/file-web/src/main/java/com/qiwenshare/file/service/FileService.java index d013084..148841a 100644 --- a/file-web/src/main/java/com/qiwenshare/file/service/FileService.java +++ b/file-web/src/main/java/com/qiwenshare/file/service/FileService.java @@ -33,14 +33,8 @@ public class FileService extends ServiceImpl implements IF @Resource QiwenFileConfig qiwenFileConfig; - @Override - public void insertFile(FileBean fileBean) { - fileMapper.insertFile(fileBean); - } - @Override public void batchInsertFile(List fileBeanList, Long userId) { -// UserBean sessionUserBean = (UserBean) SecurityUtils.getSubject().getPrincipal(); StorageBean storageBean = filetransferService.selectStorageBean(new StorageBean(userId)); long fileSizeSum = 0; for (FileBean fileBean : fileBeanList) { @@ -65,17 +59,18 @@ public class FileService extends ServiceImpl implements IF @Override public List selectFileByNameAndPath(FileBean fileBean) { - return fileMapper.selectFileByNameAndPath(fileBean); + LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper<>(); + lambdaQueryWrapper.eq(FileBean::getFileName, fileBean.getFileName()).eq(FileBean::getFilePath, fileBean.getFilePath()); + return fileMapper.selectList(lambdaQueryWrapper); +// return fileMapper.selectFileByNameAndPath(fileBean); } - @Override - public FileBean selectFileById(FileBean fileBean) { - return fileMapper.selectFileById(fileBean); - } @Override public List selectFilePathTreeByUserId(FileBean fileBean) { - return fileMapper.selectFilePathTreeByUserId(fileBean); + LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper<>(); + lambdaQueryWrapper.eq(FileBean::getUserId, fileBean.getUserId()).eq(FileBean::getIsDir, 1); + return fileMapper.selectList(lambdaQueryWrapper); } @Override @@ -83,10 +78,6 @@ public class FileService extends ServiceImpl implements IF return fileMapper.selectFileList(fileBean); } - @Override - public List selectFileListByIds(List fileIdList) { - return fileMapper.selectFileListByIds(fileIdList); - } @Override public List selectFileTreeListLikeFilePath(String filePath) { @@ -98,7 +89,10 @@ public class FileService extends ServiceImpl implements IF fileBean.setFilePath(filePath); - return fileMapper.selectFileTreeListLikeFilePath(fileBean); + LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper<>(); + lambdaQueryWrapper.likeLeft(FileBean::getFilePath, filePath); + return fileMapper.selectList(lambdaQueryWrapper); +// return fileMapper.selectFileTreeListLikeFilePath(fileBean); } @Override @@ -114,7 +108,7 @@ public class FileService extends ServiceImpl implements IF for (int i = 0; i < fileList.size(); i++){ FileBean file = fileList.get(i); //1.1、删除数据库文件 - fileMapper.deleteFileById(file); + fileMapper.deleteById(file.getFileId()); //1.2、如果是文件,需要记录文件大小 if (file.getIsDir() != 1){ deleteSize += file.getFileSize(); @@ -133,9 +127,9 @@ public class FileService extends ServiceImpl implements IF } } //2、根目录单独删除 - fileMapper.deleteFileById(fileBean); + fileMapper.deleteById(fileBean.getFileId()); }else{ - fileMapper.deleteFileById(fileBean); + fileMapper.deleteById(fileBean.getFileId()); deleteSize = FileOperation.getFileSize(fileUrl); if (deleteSize == 0) { deleteSize = fileBean.getFileSize(); @@ -163,11 +157,6 @@ public class FileService extends ServiceImpl implements IF } } - @Override - public void deleteFileByIds(List fileIdList) { - fileMapper.deleteFileByIds(fileIdList); - } - @Override public void updateFilepathByFilepath(String oldfilePath, String newfilePath, String fileName, String extendName) { diff --git a/file-web/src/main/java/com/qiwenshare/file/service/FiletransferService.java b/file-web/src/main/java/com/qiwenshare/file/service/FiletransferService.java index c998e3c..b4d33fc 100644 --- a/file-web/src/main/java/com/qiwenshare/file/service/FiletransferService.java +++ b/file-web/src/main/java/com/qiwenshare/file/service/FiletransferService.java @@ -15,10 +15,10 @@ import com.qiwenshare.file.api.IFiletransferService; import com.qiwenshare.common.domain.AliyunOSS; import com.qiwenshare.file.config.QiwenFileConfig; import com.qiwenshare.file.mapper.FileMapper; -import com.qiwenshare.file.mapper.FiletransferMapper; import com.qiwenshare.file.domain.FileBean; import com.qiwenshare.file.domain.StorageBean; import com.qiwenshare.file.domain.UserBean; +import com.qiwenshare.file.mapper.StorageMapper; import org.springframework.stereotype.Service; @@ -26,17 +26,13 @@ import org.springframework.stereotype.Service; public class FiletransferService implements IFiletransferService { @Resource - FiletransferMapper filetransferMapper; + StorageMapper storageMapper; @Resource FileMapper fileMapper; @Resource QiwenFileConfig qiwenFileConfig; - @Override - public void deleteUserImageByIds(List imageidList) { - filetransferMapper.deleteUserImageByIds(imageidList); - } @Override @@ -92,21 +88,21 @@ public class FiletransferService implements IFiletransferService { @Override public StorageBean selectStorageBean(StorageBean storageBean) { - return filetransferMapper.selectStorageBean(storageBean); + return storageMapper.selectStorageBean(storageBean); } @Override public void insertStorageBean(StorageBean storageBean) { - filetransferMapper.insertStorageBean(storageBean); + storageMapper.insertStorageBean(storageBean); } @Override public void updateStorageBean(StorageBean storageBean) { - filetransferMapper.updateStorageBean(storageBean); + storageMapper.updateStorageBean(storageBean); } @Override public StorageBean selectStorageByUser(StorageBean storageBean) { - return filetransferMapper.selectStorageByUser(storageBean); + return storageMapper.selectStorageByUser(storageBean); } } diff --git a/file-web/src/main/java/com/qiwenshare/file/service/RequestListener.java b/file-web/src/main/java/com/qiwenshare/file/service/RequestListener.java deleted file mode 100644 index 01967b4..0000000 --- a/file-web/src/main/java/com/qiwenshare/file/service/RequestListener.java +++ /dev/null @@ -1,24 +0,0 @@ -package com.qiwenshare.file.service; - -import javax.servlet.ServletRequestEvent; -import javax.servlet.ServletRequestListener; -import javax.servlet.annotation.WebListener; -import javax.servlet.http.HttpServletRequest; - -@WebListener -public class RequestListener implements ServletRequestListener { - - public void requestInitialized(ServletRequestEvent sre) { - //将所有request请求都携带上httpSession - ((HttpServletRequest) sre.getServletRequest()).getSession(); - - } - - public RequestListener() { - // TODO Auto-generated constructor stub - } - - public void requestDestroyed(ServletRequestEvent arg0) { - // TODO Auto-generated method stub - } -} \ No newline at end of file diff --git a/file-web/src/main/resources/banner.txt b/file-web/src/main/resources/banner.txt new file mode 100644 index 0000000..e69de29 diff --git a/file-web/src/main/resources/mybatis/mapper/FileMapper.xml b/file-web/src/main/resources/mybatis/mapper/FileMapper.xml index 02a5fc6..05bafc0 100644 --- a/file-web/src/main/resources/mybatis/mapper/FileMapper.xml +++ b/file-web/src/main/resources/mybatis/mapper/FileMapper.xml @@ -6,13 +6,6 @@ - - INSERT ignore INTO file (userId, fileName,timeStampName, fileUrl, - filePath, extendName, uploadTime, fileSize, isDir) - VALUES (#{userId}, #{fileName},#{timeStampName}, - #{fileUrl}, #{filePath}, #{extendName}, #{uploadTime}, - #{fileSize}, #{isDir}); - INSERT ignore INTO file (userId, fileName,timeStampName, fileUrl, @@ -68,10 +61,6 @@ - - - - - - - - - DELETE FROM file WHERE fileId = #{fileId} - - - - delete from file where fileId in - - #{fileId} - - - - - - - - - - - - - - + + + \ No newline at end of file diff --git a/file-web/src/main/resources/mybatis/mapper/FiletransferMapper.xml b/file-web/src/main/resources/mybatis/mapper/StorageMapper.xml similarity index 93% rename from file-web/src/main/resources/mybatis/mapper/FiletransferMapper.xml rename to file-web/src/main/resources/mybatis/mapper/StorageMapper.xml index f2ccaaf..180b86d 100644 --- a/file-web/src/main/resources/mybatis/mapper/FiletransferMapper.xml +++ b/file-web/src/main/resources/mybatis/mapper/StorageMapper.xml @@ -4,7 +4,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> - +