在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
开源软件名称:xyFS私有OSS文件云存储服务-私有云文件存储开源软件地址:https://gitee.com/475660/xyFS开源软件介绍:xyFS私有OSS文件存储服务项目介绍一站式企业私有文件服务。针对软件开发时提供的文件存储系统,对文件上传、下载、分类、分组、审计、统计等操作进行业务剥离,支持企业内多项目,提供统一的oss私有文件服务。 xyFS不仅仅是独立可用的文件系统,还通过接口灵活集成以下服务:
项目详细文档运行时访问地址: 软件组成
采用技术
安装、使用教程
2018-07-09 16:06:56,794 INFO (StartupInfoLogger.java:59)- Started FileSystemApplication in 14.575 seconds (JVM running for 15.457) 如果出现(Exception opening socket)localhost:27017异常 ,不必惊慌,只是mongodb未安装而已,不影响系统使用。 访问: http://localhost:9091/files/index/ 开发配置可以在配置文件application.properties里修改属性 例如tomcat服务端口server.port=9091 是否重新命名文件名,如果是个人文件则重命名为:username_ + 原文件名;如果是群组文件则重命名为:groupid_ + 原文件名 存储源.可多选.可以同时储存多个数据源,便于备份
设置下载的源 ,单选
upload上传API说明方式1:使用http Post接口 方式2:java client上传(请见ClientMultipartFormPost.java): /** * 执行文件上传 * * @param httpClient HttpClient客户端实例,传入null会自动创建一个 * @param remoteFileUrl 远程接收文件的地址 * @param localFilePath 本地文件地址 * @param appid 应用id * @param username 上传者用户名 * @param groupid MUC群组名称,如果是个人文件则无需 * @param charset 请求编码,默认UTF-8 * @param closeHttpClient 执行请求结束后是否关闭HttpClient客户端实例 * @return * @throws ClientProtocolException * @throws IOException */ public static HttpResult executeUploadFile(CloseableHttpClient httpClient, String remoteFileUrl, String localFilePath, String appid, String username, String groupid, boolean closeHttpClient, String charset ) ...... 如何引用上传方法: package xy.FileSystem.Client;import xy.FileSystem.File.HttpResult;import xy.FileSystem.Utils.HttpHelper;//Post上传演示public class ClientMultipartFormPost { public static void main(String[] args) throws Exception { HttpResult result = HttpHelper.executeUploadFile(HttpHelper.createHttpClient(), "http://localhost:9091/fileUploadPost", //post路径url "D://Tigase开发文档.doc", //要上传的本地文件全路径 "1234", // appid "wangxin", //上传者username "", //groupid,如果不涉及群组,则无需传此参数 true,//执行请求结束后是否关闭HttpClient客户端实例 "UTF-8" ); System.out.println(result.toString()); }} 返回值: download下载API说明方式1:使用http Get接口 package xy.FileSystem.Client;import xy.FileSystem.Utils.HttpHelper;//下载public class ClientMultipartFormDownload { public static void main(String[] args) throws Exception { HttpHelper.executeDownloadFile(HttpHelper.createHttpClient(), "http://localhost:9091/files/wangxin_Tigase开发文档.doc", //服务器文件 "D://wangxin_Tigase开发文档.doc", //下载到本地的文件 "UTF-8", true); }} 全部配置:# tomcat服务端口 #server.port=9091#启用shutdownendpoints.sensitive=false# 存储的相对路径,如果 storage.source = xyfs 需要配置 #storage.location = uploadfiledir# 是否重新命名文件名,如果是个人文件则重命名为:username_ + 原文件名;如果是群组文件则重命名为:groupid_ + 原文件名 #storage.rename = true# 存储源.可多选.可以同时储存多个数据源,便于备份 ## 类型有:xyfs\\Seafile\\FastDFS\\SeaweedFS\\MongoDB\\aliOSS\\qiniu\\CFS #storage.todisk = true storage.toqiniu = truestorage.tofastdfs = falsestorage.tomongodb = falsestorage.toseaweedfs = falsestorage.toalioss = falsestorage.tocfs = false# 用于设置下载的源 ,单选 ## 类型有:xyfs\\Seafile\\FastDFS\\SeaweedFS\\MongoDB\\aliOSS\\qiniu\\CFS #storage.downloadfrom = xyfs# xyfs存储配置 #storage.diskprefix = http://localhost:9091/files/# 七牛存储配置 #storage.qiniuprefix = http://pbby0yzdu.bkt.clouddn.com/storage.qiniuak = _IAafy8aX5x7h-4FBEvH2DqCtTq2c7sESPSlfGstorage.qiniusk = _8hy2LE6kfTKr3wDUWJONgFRxPKX4cDQhi79Bjstorage.qiniubucket = xytalk# mongodb.gridfs配置 #storage.gridfshost = 127.0.0.1storage.gridfsdbname = xyfsstorage.gridfsport = 27017storage.gridfscollectionname = fs# fastDFS 配置 #storage.fastdfsconnecttimeout = 5storage.fastdfsnetwork_timeout = 10storage.fastdfscharset = UTF-8storage.fastdfstrackerhttpport = 80storage.fastdfsantistealtoken = nostorage.fastdfssecret_key = 1234567890storage.fastdfstrackerserver = 192.168.17.112:22122# SeaweedFS 配置 #storage.seaweedfshost = localhoststorage.seaweedfsport = 9333storage.seaweedfstimeout = 10# ali OSS 配置 #storage.aliendpoint = ""storage.aliaccesskeyid = ""storage.aliaccesskeysecret = ""storage.alibucketname = ""storage.alidownloadkey = ""# 第一次使用的配置:自动创建数据库表,如果是运行SQL脚本则无需使用此配置 ## spring.jpa.hibernate.ddl-auto = create# 第二次开始使用的配置:据库表会根据Entity的变动而更新 # spring.jpa.hibernate.ddl-auto = update # Sqlite数据源 #spring.datasource.driver-class-name=org.sqlite.JDBCspring.datasource.url=jdbc:sqlite:DbSqlite/xyfs.dbspring.datasource.platform=sqlitespring.jpa.database-platform= xy.FileSystem.Dialect.SQLiteDialect# mysql数据源 ##spring.datasource.url=jdbc:mysql://localhost:3306/xyfs#spring.datasource.username=root#spring.datasource.password=mysql# oracle数据源 ##spring.datasource.driver-class-name=oracle.jdbc.driver.OracleDriver#spring.datasource.url=jdbc:oracle:thin:@127.0.0.1:1521:torcl#spring.datasource.username=center#spring.datasource.password=centerDB12345# dbcp2连接池配置 #spring.datasource.type=org.apache.commons.dbcp2.BasicDataSourcespring.datasource.dbcp2.max-wait-millis=10000spring.datasource.dbcp2.min-idle=5spring.datasource.dbcp2.initial-size=5spring.datasource.dbcp2.validation-query=SELECT 1 FROM appspring.datasource.dbcp2.connection-properties=characterEncoding=utf8# druid连接池的配置信息 ##spring.datasource.type=com.alibaba.druid.pool.DruidDataSource#spring.datasource.initialSize=5#spring.datasource.minIdle=5#spring.datasource.maxActive=20#spring.datasource.maxWait=60000#spring.datasource.timeBetweenEvictionRunsMillis=60000#spring.datasource.minEvictableIdleTimeMillis=300000#spring.datasource.validationQuery=SELECT 1 FROM App#spring.datasource.testWhileIdle=true#spring.datasource.testOnBorrow=false#spring.datasource.testOnReturn=false#spring.datasource.poolPreparedStatements=true#spring.datasource.maxPoolPreparedStatementPerConnectionSize=20#spring.datasource.filters=stat,wall,log4j# spring jackson 时间配置 #spring.jackson.date-format=yyyy-MM-dd HH:mm:ssspring.jackson.joda-date-time-format=yyyy-MM-dd HH:mm:ssspring.jackson.time-zone=GMT+8# multipart 上传配置 #spring.servlet.multipart.enabled=truespring.servlet.multipart.max-file-size=1024MBspring.servlet.multipart.max-request-size=1024MB# oss 日志配置 #logging.config=classpath:logback.xml ## 联系作者 ##如有合作意向、Bug、建议邮箱至[email protected] 我的主要开源作品:https://gitee.com/475660/xyTalk-pc/ 我的博客:https://www.cnblogs.com/starcrm/ 联系邮箱:[email protected] |
请发表评论