diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000000000000000000000000000000000000..4db8c31e9ffd74dbae9bd012d9b750efb661a3f3 --- /dev/null +++ b/.gitignore @@ -0,0 +1,29 @@ +# Created by .ignore support plugin (hsz.mobi) +### Java template +# Compiled class file +*.class + +# Log file +*.log + +# BlueJ files +*.ctxt + +# Mobile Tools for Java (J2ME) +.mtj.tmp/ + +# Package Files # +*.jar +*.war +*.nar +*.ear +*.zip +*.tar.gz +*.rar + +# virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml +hs_err_pid* + +.idea +*.iml + diff --git a/database/v1.2/oss.sql b/database/v1.2/oss.sql new file mode 100644 index 0000000000000000000000000000000000000000..d2d2c74672042490ee866df80e6b4ecf9a29d68f --- /dev/null +++ b/database/v1.2/oss.sql @@ -0,0 +1,131 @@ +PRAGMA foreign_keys=OFF; +BEGIN TRANSACTION; +CREATE TABLE IF NOT EXISTS "oss_sys_user" ( + + "id" text NOT NULL, + + "username" TEXT, + + "password" TEXT, + + "create_time" TEXT, + + "intro" TEXT, + + PRIMARY KEY ("id") + +); +CREATE TABLE IF NOT EXISTS "oss_information" ( + + "id" text NOT NULL, + + "root" TEXT, + + "invoking_root" TEXT, + + "nginx_log_path" TEXT, + + "create_time" TEXT, + + "modified_time" TEXT, + + PRIMARY KEY ("id") + +); +CREATE TABLE IF NOT EXISTS "oss_material_info" ( + + "id" text NOT NULL, + + "original_name" TEXT, + + "store_path" TEXT, + + "url" TEXT, + + "user_id" text, + + "type" TEXT, + + "byte_str" TEXT, + + "len" integer, + + "create_time" TEXT, + + "last_modified_time" TEXT NOT NULL, + + "app_id" text, + + "from_ip" TEXT, + + PRIMARY KEY ("id", "last_modified_time") + +); +CREATE TABLE IF NOT EXISTS "oss_developer" ( + + "id" text NOT NULL, + + "name" TEXT, + + "appid" text, + + "appsecret" TEXT, + + "email" TEXT, + + "create_time" TEXT, + + "tel" TEXT, + + "intro" TEXT, + + "status" TEXT, + + "use_space" integer, + + "use_space_str" TEXT, + + PRIMARY KEY ("id") + +); +CREATE TABLE IF NOT EXISTS "oss_app_info" ( + + "id" text NOT NULL, + + "name" TEXT, + + "code" TEXT, + + "create_time" TEXT, + + "intro" TEXT, + + "dev_id" text, + + "use_space" integer, + + "use_space_str" TEXT, + + PRIMARY KEY ("id") + +); +CREATE TABLE IF NOT EXISTS "oss_statistic_day" ( + + "id" text NOT NULL, + + "create_time" TEXT, + + "files" integer, + + "use_spaces" integer, + + "cur_date" TEXT, + + "modified_time" TEXT, + + "user_id" text, + + PRIMARY KEY ("id") + +); +--COMMIT; diff --git a/oss-server/pom.xml b/oss-server/pom.xml index f4f0a8c606fd982f601cc89028916e53376c6598..37020792a7c6dc8208e2d34302c2e3aaaa8a0854 100644 --- a/oss-server/pom.xml +++ b/oss-server/pom.xml @@ -85,7 +85,10 @@ commons-codec 1.11 - + + org.apache.commons + commons-lang3 + @@ -146,11 +149,18 @@ druid 1.1.9 - + com.oracle ojdbc6 - 10.2.0.1.0 + 11.2.0.3 + test + + + + org.xerial + sqlite-jdbc + 3.30.1 @@ -184,6 +194,11 @@ netty-all 4.1.25.Final + + + org.projectlombok + lombok + diff --git a/oss-server/src/main/java/com/xiaominfo/oss/OssServerApplication.java b/oss-server/src/main/java/com/xiaominfo/oss/OssServerApplication.java index 739901c7c00dbdc59130c8d810f8c509366ba81b..de2c0f71c2dda0905bd877b88c55aead982bcdb7 100644 --- a/oss-server/src/main/java/com/xiaominfo/oss/OssServerApplication.java +++ b/oss-server/src/main/java/com/xiaominfo/oss/OssServerApplication.java @@ -17,7 +17,6 @@ import java.net.UnknownHostException; @SpringBootApplication @EnableScheduling -@ComponentScan(basePackages = {"com.xiaominfo.oss"}) public class OssServerApplication { private final static Log log = LogFactory.get(); diff --git a/oss-server/src/main/java/com/xiaominfo/oss/api/MaterialApplication.java b/oss-server/src/main/java/com/xiaominfo/oss/api/MaterialApplication.java index 820c9a5fbb005b4967e9efb064f576faf9cdc052..89f49d1f3f35517a6ad20a4a588860d0e6e0b0da 100644 --- a/oss-server/src/main/java/com/xiaominfo/oss/api/MaterialApplication.java +++ b/oss-server/src/main/java/com/xiaominfo/oss/api/MaterialApplication.java @@ -20,6 +20,7 @@ import com.xiaominfo.oss.domain.FileBinaryResponse; import com.xiaominfo.oss.exception.AssemblerException; import com.xiaominfo.oss.exception.ErrorCable; import com.xiaominfo.oss.exception.ErrorConstant; +import com.xiaominfo.oss.exception.OssException; import com.xiaominfo.oss.module.entity.OSSMaterialInfoResult; import com.xiaominfo.oss.module.model.OSSAppInfo; import com.xiaominfo.oss.module.model.OSSDeveloper; @@ -28,6 +29,7 @@ import com.xiaominfo.oss.module.model.OSSMaterialInfo; import com.xiaominfo.oss.service.*; import io.netty.util.internal.StringUtil; import org.apache.commons.codec.net.URLCodec; +import org.apache.commons.io.FileUtils; import org.apache.poi.ss.usermodel.Workbook; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.HttpEntity; @@ -108,9 +110,6 @@ public class MaterialApplication extends RootApis { dirStr.append("/").append(pro); File file = new File(dirStr.toString()); createDirectoryQuietly(file); - file.setExecutable(false); - file.setWritable(false); - file.setReadOnly(); successResultCode(restfulMessage); } catch (Exception e) { restfulMessage = wrapperException(e); @@ -118,6 +117,16 @@ public class MaterialApplication extends RootApis { return restfulMessage; } + @GetMapping("/delete") + public RestfulMessage deleteFileOrDirectory( + @RequestParam(value = "path", required = true) String filePath) { + try { + return RestfulMessage.success(FileUtils.deleteQuietly(new File(filePath))); + } catch (Exception e) { + throw new OssException(e.getMessage()); + } + } + /*** * byte 字节码上传文件 diff --git a/oss-server/src/main/java/com/xiaominfo/oss/api/OSSApplication.java b/oss-server/src/main/java/com/xiaominfo/oss/api/OSSApplication.java index 6f2a5485118fed9315adef31a4e739e0ba3d51f9..dd4f81575d847a7ee019f525d35f0551354027ac 100644 --- a/oss-server/src/main/java/com/xiaominfo/oss/api/OSSApplication.java +++ b/oss-server/src/main/java/com/xiaominfo/oss/api/OSSApplication.java @@ -136,6 +136,7 @@ public class OSSApplication { , FileUtils.byteToString(FileUtils.getFileSize(file))); fileInfo.setType(FileUtils.getFileType(file)); fileInfo.setMediaType(FileUtils.getMediaType(file)); + fileInfo.setPath(file.getAbsolutePath()); if (file.isDirectory()){ String dirPath=dirFile.getAbsolutePath().substring(start); dirPath=FileUtils.transforSysSpec(dirPath); diff --git a/oss-server/src/main/java/com/xiaominfo/oss/api/RootApis.java b/oss-server/src/main/java/com/xiaominfo/oss/api/RootApis.java index c3b3ce97a6272c6b40c15b79b6bcde0f777c4c7f..729af8932fbb1d87b498b6c7842e70e92044006a 100644 --- a/oss-server/src/main/java/com/xiaominfo/oss/api/RootApis.java +++ b/oss-server/src/main/java/com/xiaominfo/oss/api/RootApis.java @@ -15,12 +15,14 @@ import com.xiaominfo.oss.common.pojo.RestfulMessage; import com.xiaominfo.oss.exception.AssemblerException; import com.xiaominfo.oss.exception.ErrorCable; import com.xiaominfo.oss.exception.ErrorConstant; +import org.apache.commons.io.FileUtils; import org.joda.time.DateTime; import org.springframework.http.HttpEntity; import org.springframework.http.HttpHeaders; import org.springframework.http.MediaType; import java.io.File; +import java.io.IOException; /*** * @@ -152,24 +154,12 @@ public class RootApis { /*** * 创建文件夹 * @param file + * @deprecated 不能设置只读 */ public void createDirectoryQuietly(File file) { try { - if (file != null) { - if (!file.exists()) { - if (!file.mkdirs()) { - throw new RuntimeException(file.getName() + " is invalid,can't be create directory"); - } - } - } - } finally { - if (file != null) { - file.setWritable(false); - file.setExecutable(false); - file.setReadOnly(); - } - - } + FileUtils.forceMkdir(file); + } catch (Exception ignored) {} } diff --git a/oss-server/src/main/java/com/xiaominfo/oss/common/pojo/RestfulMessage.java b/oss-server/src/main/java/com/xiaominfo/oss/common/pojo/RestfulMessage.java index c6263ab62366ec0f5f0fc17abff9a10be33d66fa..9a75a27127246e9e814a634f178781ed024f258a 100644 --- a/oss-server/src/main/java/com/xiaominfo/oss/common/pojo/RestfulMessage.java +++ b/oss-server/src/main/java/com/xiaominfo/oss/common/pojo/RestfulMessage.java @@ -7,6 +7,9 @@ package com.xiaominfo.oss.common.pojo; +import com.xiaominfo.oss.exception.ErrorConstant; +import lombok.Data; + import java.io.Serializable; /*** @@ -15,6 +18,7 @@ import java.io.Serializable; * @author xiaoymin@foxmail.com * 2018/03/19 14:17 */ +@Data public class RestfulMessage implements Serializable { private Integer code; @@ -44,4 +48,23 @@ public class RestfulMessage implements Serializable { public void setData(Object data) { this.data = data; } + + public static RestfulMessage success(Object data) { + return get(ErrorConstant.SUCCESS, data, "success"); + } + + /** + * + * @param code {@link ErrorConstant} + * @param data + * @param message + * @return + */ + public static RestfulMessage get(Integer code, Object data, String message) { + RestfulMessage res = new RestfulMessage(); + res.code = code; + res.data = data; + res.message = message; + return res; + } } diff --git a/oss-server/src/main/java/com/xiaominfo/oss/config/FreeMarkerConfig.java b/oss-server/src/main/java/com/xiaominfo/oss/config/FreeMarkerConfig.java new file mode 100644 index 0000000000000000000000000000000000000000..08dd4982b658bf1e85a7a3ffcc47a9bd031ce270 --- /dev/null +++ b/oss-server/src/main/java/com/xiaominfo/oss/config/FreeMarkerConfig.java @@ -0,0 +1,47 @@ +package com.xiaominfo.oss.config; + +import freemarker.template.TemplateModelException; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.annotation.Configuration; +import org.springframework.context.annotation.PropertySource; + +import javax.annotation.PostConstruct; +import java.util.HashMap; +import java.util.Map; + +/** + *

+ * oss-server-parent: freemarker全局配置 + *

+ * + * @author ixyxj xieyangxuejun@gmail.com + * @date 2020-01-18 21:41:19 + * @since oss-server-parent 1 + */ +@Configuration +@Data +@NoArgsConstructor +@AllArgsConstructor +@PropertySource(value="classpath:application.properties",encoding = "utf-8") +public class FreeMarkerConfig { + @Autowired private freemarker.template.Configuration configuration; + + + @Value(value = "${website.name}") + private String websiteName; + @Value(value = "${material.navbarName}") + private String navbarName; + + @PostConstruct + public void setGlobalConfig() throws TemplateModelException { + Map map = new HashMap<>(); + map.put("navbarName", navbarName); + map.put("websiteName", websiteName); + configuration.setSharedVaribles(map); + } + +} diff --git a/oss-server/src/main/java/com/xiaominfo/oss/config/GlobalExceptionHandler.java b/oss-server/src/main/java/com/xiaominfo/oss/config/GlobalExceptionHandler.java index 369c2bf3d3027380420c778c6c14134ae9f69c86..831b804b005fe93dd04396b31a7bdbe86bc4bac8 100644 --- a/oss-server/src/main/java/com/xiaominfo/oss/config/GlobalExceptionHandler.java +++ b/oss-server/src/main/java/com/xiaominfo/oss/config/GlobalExceptionHandler.java @@ -13,6 +13,7 @@ import cn.hutool.log.LogFactory; import com.xiaominfo.oss.api.RootApis; import com.xiaominfo.oss.common.pojo.RestfulMessage; import com.xiaominfo.oss.exception.ErrorConstant; +import com.xiaominfo.oss.exception.OssException; import com.xiaominfo.oss.exception.UserNotLoginException; import org.springframework.web.bind.annotation.ControllerAdvice; import org.springframework.web.bind.annotation.ExceptionHandler; @@ -52,4 +53,10 @@ public class GlobalExceptionHandler extends RootApis{ } return r; } + @ExceptionHandler(value= OssException.class) + @ResponseBody + public RestfulMessage handleOssException(OssException ex){ + log.error(ex); + return wrapperException(ex); + } } diff --git a/oss-server/src/main/java/com/xiaominfo/oss/domain/FileInfo.java b/oss-server/src/main/java/com/xiaominfo/oss/domain/FileInfo.java index ee29b9a8e8c4b0b43331c67ba3c706ee0bee81d8..ad770b313afb9d01851896e00a694598c1acef2a 100644 --- a/oss-server/src/main/java/com/xiaominfo/oss/domain/FileInfo.java +++ b/oss-server/src/main/java/com/xiaominfo/oss/domain/FileInfo.java @@ -7,6 +7,8 @@ package com.xiaominfo.oss.domain; +import java.io.File; + /*** * * @since:oss-server 1.0 @@ -19,6 +21,8 @@ public class FileInfo { private String name; + private String path; + private String type; private String lastModifiedTime; @@ -90,4 +94,12 @@ public class FileInfo { this.lastModifiedTime = lastModifiedTime; this.size = size; } + + public void setPath(String path) { + this.path = path; + } + + public String getPath() { + return path; + } } diff --git a/oss-server/src/main/java/com/xiaominfo/oss/exception/OssException.java b/oss-server/src/main/java/com/xiaominfo/oss/exception/OssException.java new file mode 100644 index 0000000000000000000000000000000000000000..7125f3afabf3c6ead867b2abd62d67b328d93248 --- /dev/null +++ b/oss-server/src/main/java/com/xiaominfo/oss/exception/OssException.java @@ -0,0 +1,64 @@ +package com.xiaominfo.oss.exception; + +import lombok.Data; +import org.apache.commons.lang3.StringUtils; +import org.springframework.context.NoSuchMessageException; +import org.springframework.context.i18n.LocaleContextHolder; + +import java.io.Serializable; + +/** + *

+ * oss-server-parent: + *

+ * + * @author ixyxj xieyangxuejun@gmail.com + * @date 2020-01-19 18:18:08 + * @since oss-server-parent + */ +@Data +public class OssException extends RuntimeException implements Serializable { + + private static final long serialVersionUID = 1L; + + private String msgCode; + private Object[] msgArgs; + private String msg; + + public OssException(String msg) { + this.msg = msg; + } + + public OssException(String msg, Throwable e) { + super(e); + this.msg = msg; + } + + public OssException(Throwable cause, String messageCode, String message) { + super(cause); + this.msgCode = messageCode; + this.msg = message; + } + + public OssException(String messageCode, Object... messageArgs) { + this.msgCode = messageCode; + this.msgArgs = messageArgs; + } + public OssException(int messageCode, String messageArgs) { + this.msgCode = messageCode + ""; + this.msg = messageArgs; + } + public OssException(String messageCode, Throwable cause, Object... messageArgs) { + super(cause); + this.msgCode = messageCode; + this.msgArgs = messageArgs; + } + + @Override + public String getMessage() { + if (this.msg != null) { + return this.msg; + } + return super.getMessage(); + } +} diff --git a/oss-server/src/main/java/com/xiaominfo/oss/module/model/OSSStatisticDay.java b/oss-server/src/main/java/com/xiaominfo/oss/module/model/OSSStatisticDay.java index 89cddc58f6c0d7d4591cf4b2b31f6044d07b55ad..73a96fa1e783bb45432dc255aa194098b107bd0e 100644 --- a/oss-server/src/main/java/com/xiaominfo/oss/module/model/OSSStatisticDay.java +++ b/oss-server/src/main/java/com/xiaominfo/oss/module/model/OSSStatisticDay.java @@ -42,6 +42,7 @@ public class OSSStatisticDay extends Model { @TableField(value = "use_spaces") private Long useSpaces; + @TableField(exist = false) private Integer files; diff --git a/oss-server/src/main/java/com/xiaominfo/oss/utils/FileUtils.java b/oss-server/src/main/java/com/xiaominfo/oss/utils/FileUtils.java index 47343082331e6fe9337a14d772235327501e7cb8..7e6029ecd6cadb2b11c6ea19dc955080db61aa4a 100644 --- a/oss-server/src/main/java/com/xiaominfo/oss/utils/FileUtils.java +++ b/oss-server/src/main/java/com/xiaominfo/oss/utils/FileUtils.java @@ -10,6 +10,8 @@ package com.xiaominfo.oss.utils; import cn.hutool.core.util.ReUtil; import cn.hutool.core.util.StrUtil; +import org.apache.commons.io.FilenameUtils; +import org.springframework.boot.web.server.MimeMappings; import java.io.File; import java.math.BigDecimal; @@ -110,20 +112,24 @@ public class FileUtils { * @return */ public static String getFileType(File file){ - String type="文件"; if (file.isDirectory()){ - type="文件夹"; - }else{ - String fileName=file.getName(); - //判断是否有后缀 - if (StrUtil.isNotBlank(fileName)){ - if (fileName.contains(".")){ - String suffix=fileName.substring(fileName.lastIndexOf(".")+1); - type=suffix.toUpperCase()+" 文件"; - } - } + return "文件夹"; } - return type; + return MimeMappings.DEFAULT.get(FilenameUtils.getExtension(file.getAbsolutePath())); +// String type="文件"; +// if (file.isDirectory()){ +// type="文件夹"; +// }else{ +// String fileName=file.getName(); +// //判断是否有后缀 +// if (StrUtil.isNotBlank(fileName)){ +// if (fileName.contains(".")){ +// String suffix=fileName.substring(fileName.lastIndexOf(".")+1); +// type=suffix.toUpperCase()+" 文件"; +// } +// } +// } +// return type; } public static String getMediaType(File file){ diff --git a/oss-server/src/main/resources/application.properties b/oss-server/src/main/resources/application.properties index 1603ceec4cac4b12c40e0538bcdcc54f9c0913ac..d73d3907febcfdcc38431831ff25b7303001b9db 100644 --- a/oss-server/src/main/resources/application.properties +++ b/oss-server/src/main/resources/application.properties @@ -1,72 +1,84 @@ # ----------------------------------------------------------------------------------------------------------------# -# oss-server # +# oss-server \u57FA\u7840\u914D\u7F6E # # ----------------------------------------------------------------------------------------------------------------# server.port=18000 spring.application.name=OSS Server Application v1.0 -#ļ˿ +website.name=1-OSS-Server\u5728\u7EBF\u5B58\u50A8\u7BA1\u7406\u7CFB\u7EDF +#\u6587\u4EF6\u4F20\u8F93\u7AEF\u53E3 material.masterPort=18001 -#ļȺ +#\u6587\u4EF6\u96C6\u7FA4\u914D\u7F6E material.nodes=172.30.45.2:18001 -#زĴ洢· -- /β +#\u7D20\u6750\u5B58\u50A8\u8DEF\u5F84 -- \u4EE5/\u7ED3\u5C3E material.root=/home/material/ -#ز·Ŀ¼ +#\u7D20\u6750\u4E0B\u8F7D\u8DEF\u5F84\u6839\u76EE\u5F55 material.invokingRoot=http://192.168.0.7/ -#·ʽ:R(·+ļ),N(ļ) +#\u8DEF\u5F84\u65B9\u5F0F:R(\u76F8\u5BF9\u8DEF\u5F84+\u6587\u4EF6\u540D),N(\u6587\u4EF6\u540D) material.pathstyle=R -## ϴļʽ,Сд +## \u8FC7\u6EE4\u4E0A\u4F20\u6587\u4EF6\u683C\u5F0F,\u5927\u5C0F\u5199\u5FFD\u7565 material.excludeFileTypes=sh,jsp,php,exe,asp,dll +## \u8BBE\u7F6E\u7BA1\u7406\u540E\u53F0\u540D\u79F0 +material.navbarName=1-OSS-Server\u5BF9\u8C61\u5B58\u50A8\u7BA1\u7406\u540E\u53F0 # ----------------------------------------------------------------------------------------------------------------# -# spring jackson ʱ # +# spring jackson \u65F6\u95F4\u914D\u7F6E # # ----------------------------------------------------------------------------------------------------------------# spring.jackson.date-format=yyyy-MM-dd HH:mm:ss spring.jackson.joda-date-time-format=yyyy-MM-dd HH:mm:ss spring.jackson.time-zone=GMT+8 # ----------------------------------------------------------------------------------------------------------------# -# oss ־ # +# oss \u65E5\u5FD7\u914D\u7F6E # # ----------------------------------------------------------------------------------------------------------------# logging.config=classpath:logback-oss.xml # ----------------------------------------------------------------------------------------------------------------# -# multipart ϴ # +# multipart \u4E0A\u4F20\u914D\u7F6E # # ----------------------------------------------------------------------------------------------------------------# spring.servlet.multipart.enabled=true spring.servlet.multipart.max-file-size=1024MB spring.servlet.multipart.max-request-size=1024MB # ----------------------------------------------------------------------------------------------------------------# -# freemarkerģ # +# freemarker\u6A21\u677F\u6846\u67B6\u914D\u7F6E # # ----------------------------------------------------------------------------------------------------------------# spring.freemarker.suffix=.html spring.freemarker.enabled=true spring.freemarker.cache=false -#ڽǰ˱ָ +#\u7528\u4E8E\u89E3\u51B3\u524D\u7AEF\u62A5\u7A7A\u6307\u9488\u95EE\u9898 spring.freemarker.settings.classic_compatible=true -#ȡ· +#\u83B7\u53D6\u6839\u8DEF\u5F84 spring.freemarker.request-context-attribute=request -#֤û +spring.freemarker.charset=utf-8 +#\u9A8C\u8BC1\u7528\u6237\u540D \u5BC6\u7801 oss.security.userName=admin oss.security.password=adminA123 spring.datasource.type=com.alibaba.druid.pool.DruidDataSource -spring.datasource.driver-class-name=oracle.jdbc.driver.OracleDriver -spring.datasource.url=jdbc:oracle:thin:@172.30.45.2:1521:z45db2 -#spring.datasource.url=jdbc:sqlite:classpath:resource:\\db\\datashare.db -spring.datasource.username=111 -spring.datasource.password=111 -#spring.datasource.platform=sqlite -spring.datasource.min-idle=3 -spring.datasource.initial-size=3 -spring.datasource.max-active=20 -spring.datasource.max-wait=60000 -spring.datasource.time-between-eviction-runs-millis=600000 -spring.datasource.min-evictable-idle-time-millis=30000 -spring.datasource.validation-query=select 1 from dual -spring.datasource.test-while-idle=true -spring.datasource.test-on-borrow=false -spring.datasource.test-on-return=false -spring.datasource.pool-prepared-statements=true -spring.datasource.max-pool-prepared-statement-per-connection-size=20 +#spring.datasource.driver-class-name=oracle.jdbc.driver.OracleDriver +spring.datasource.platform=sqlite +spring.datasource.driver-class-name=org.sqlite.JDBC +#spring.datasource.url=jdbc:oracle:thin:@172.30.45.2:1521:z45db2 +#spring.datasource.url=jdbc:sqlite:classpath:resource:\\db\\oss.db +spring.datasource.url=jdbc:sqlite:/Users/xyxj/Programs/Sourcetree/oss-server/oss-server/src/main/resources/db/oss.db +spring.datasource.hikari.minimum-idle=5 +spring.datasource.hikari.maximum-pool-size=100 +spring.datasource.hikari.auto-commit=true +spring.datasource.hikari.idle-timeout=60000 +spring.datasource.hikari.maxLifetime=60000 +spring.datasource.hikari.connection-timeout=5000 +#spring.datasource.username=111 +#spring.datasource.password=111 +#spring.datasource.hikari.min-idle=3 +#spring.datasource.initial-size=3 +#spring.datasource.max-active=20 +#spring.datasource.max-wait=60000 +#spring.datasource.time-between-eviction-runs-millis=600000 +#spring.datasource.min-evictable-idle-time-millis=30000 +#spring.datasource.validation-query=select 1 from dual +#spring.datasource.test-while-idle=true +#spring.datasource.test-on-borrow=false +#spring.datasource.test-on-return=false +#spring.datasource.pool-prepared-statements=true +#spring.datasource.max-pool-prepared-statement-per-connection-size=20 #spring.datasource.connection-properties=druid.stat.mergeSql=true;druid.stat.slowSqlMillis=5000 spring.datasource.filters=stat,wall,slf4j -## mybatis-plus ļ +## mybatis-plus \u914D\u7F6E\u6587\u4EF6 mybatis-plus.mapper-locations=classpath:/com/xiaominfo/oss/module/dao/mappings/*Mapper.xml mybatis-plus.type-aliases-package=com.xiaominfo.oss.module.model -## ־ -mybatis-plus.configuration.log-impl=com.xiaominfo.oss.extend.mybatis.MybatisStdOutImpl +## \u65E5\u5FD7\u8F93\u51FA +mybatis-plus.configuration.log-impl=com.xiaominfo.oss.extend.mybatis.MybatisStdOutImpl \ No newline at end of file diff --git a/oss-server/src/main/resources/db/oss.db b/oss-server/src/main/resources/db/oss.db index 4f233efb30746d69529cd2c914e549a32684d94b..143de855dc8151d1af9f9ff083b94ed5cd2f0b0d 100644 Binary files a/oss-server/src/main/resources/db/oss.db and b/oss-server/src/main/resources/db/oss.db differ diff --git a/oss-server/src/main/resources/templates/index.html b/oss-server/src/main/resources/templates/index.html index e1691ad9a88a19757b70069d37748b0fcf2f9ab4..db4d49bcffe0833459df586394e7bcab2f1735e9 100644 --- a/oss-server/src/main/resources/templates/index.html +++ b/oss-server/src/main/resources/templates/index.html @@ -3,7 +3,7 @@ - OSS-Server在线存储管理系统 + ${websiteName} @@ -26,7 +26,7 @@ - OSS-Server对象存储管理后台 + ${navbarName} diff --git a/oss-server/src/main/resources/templates/list.html b/oss-server/src/main/resources/templates/list.html index b3937dbf95ca695764804f15bd98decc90a0e142..1877c3f487c254b49539b92928ca0de65009b197 100644 --- a/oss-server/src/main/resources/templates/list.html +++ b/oss-server/src/main/resources/templates/list.html @@ -22,7 +22,7 @@ } - +
@@ -56,11 +56,12 @@ - + + @@ -71,6 +72,9 @@ + @@ -251,8 +255,13 @@ $(".btn-danger").on("click",function (e) { e.preventDefault(); - layer.confirm("确定删除该文件吗?",function () { - layer.msg("尚未实现.") + layer.confirm("确定删除该文件吗?",function (index) { + console.log(e.target.id); + $.get('/oss/material/delete', {path: e.target.id}, function(res) { + console.log(res); + window.location.reload(); + }); + layer.close(index) }) }) diff --git a/oss-server/src/main/resources/templates/login.html b/oss-server/src/main/resources/templates/login.html index 98beedab233b1530607ef0652f9ff99b6a552548..b0ad4f717eff8263ed73f338bf695f8f30f07aac 100644 --- a/oss-server/src/main/resources/templates/login.html +++ b/oss-server/src/main/resources/templates/login.html @@ -24,10 +24,10 @@
- +
- +
登 录 diff --git a/pom.xml b/pom.xml index 5677bc5b27d5a843ea755eeef0d3ae7b13188c24..1c71f7dfc5e6258601d17b97b94a8c1d0310b458 100644 --- a/pom.xml +++ b/pom.xml @@ -55,17 +55,11 @@ + org.apache.maven.plugins maven-source-plugin - - - attach-sources - - jar - - - + 3.2.1
全选 文件名称 类型 最后修改时间 大小操作
${file.type} ${file.lastModifiedTime} ${file.size} + +