xyFS私有OSS文件云存储服务-私有云文件存储
Java
Java, JavaScript, CSS, HTML
共159个文件
java: 49
js: 27
css: 14
map: 10
html: 10
eot: 5
svg: 5
ttf: 5
woff: 5
png: 5
私有云文件存储软件OSS,高可用File System文件云存储微服务系统(私有云文件存储),对文档管理、文件上传、下载、分类、共享、分组、审计、统计等操作进行业务剥离,支持企业内多项目,提供统一的oss私有文件服务
xyFS私有OSS文件存储服务
项目介绍
一站式企业私有文件服务。针对软件开发时提供的文件存储系统,对文件上传、下载、分类、分组、审计、统计等操作进行业务剥离,支持企业内多项目,提供统一的oss私有文件服务。
涵盖了保护企业隐私文件的私有存储,也可接入公有云存储方案。开发初衷是应用于xyTalk企业IM即时通讯的离线文件存储、群文件、图片、短语音、短视频、企业文档库等应用。
PC客户端开源(开放中)::
https://gitee.com/475660/xyTalk-pc
iOS客户端开源(开放中):
https://gitee.com/475660/xyTalk-ios
Android客户端开源(尚未开放)
xyFS不仅仅是独立可用的文件系统,还通过接口灵活集成以下服务:
1.私有Xy.File OSS-FS文件服务 (自主开发,免费开源)
2.私有分布式文件:MongoDB GridFS分布式文件系统
3.私有分布式文件:FastDFS文件系统
4.私有分布式文件:SeaweedFS
5.私有企业云存储:Seafile网盘
6.私有BASE64转存关系数据库存储(停用)
7.公有云存储:阿里OSS云存储
8.公有云存储:七牛云
9.公有云存储:腾讯文件云存储 CFS
在第三方私有云领域,我推荐SeaweedFS、GridFS。在公有云领域,推荐阿里OSS和七牛云。
SeaweedFS是一个高性能、自带Rest API的分布式文件系统,可访问我的博客了解:https://www.cnblogs.com/starcrm/p/9377851.html
项目详细文档
http://xyfs.mydoc.io/
运行时访问地址:
http://localhost:9091/files/index/
软件组成
1.xyFS 管理后端;
2.xyPortal Web前端中的“文档库”部分;
3.xyFS HTTP API;
4.xyFS JAVA Client;
采用技术
1.Spring Boot、MVC、AOP、Actuator、Swagger
2.Dbcp2、Druid,数据库连接池2种模式可选
3.JPA/Hibernate
4.Ehcache
5.HTML、 Only Bootstrap4。只使用了单纯的Bootstrap4,不再含其他任何前端UI框架。纯净、自然、轻量、极简、易维护。
6.Thymeleaf/Freemarker,2种模板引擎可切换
7.MySQL、Oracle、SQLite,3种数据库模式可选
8.其他:Gradle、Tomcat、Nginx
安装、使用教程
1、Import Gradle Project;
2、点击工程,右键Gradle>>Refresh Gradle Project;
3、运行方法:右键“FileSystemApplication.java”,点击“run as”--“Java App..”。或者选择Gradle Task栏,点击“bootRun”;
4、如果出现以下信息,说明运行时环境已经完成:
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_ + 原文件名
storage.rename = true
存储源.可多选.可以同时储存多个数据源,便于备份
类型有:xyfs\Seafile\FastDFS\SeaweedFS\MongoDB\aliOSS\qiniu\CFS
storage.todisk = true
storage.toqiniu = true
storage.tofastdfs = false
storage.tomongodb = false
storage.toseaweedfs = false
storage.toalioss = false
storage.tocfs = false
设置下载的源 ,单选
类型有:xyfs\Seafile\FastDFS\SeaweedFS\MongoDB\aliOSS\qiniu\CFS
storage.downloadfrom = xyfs
upload上传API说明
方式1:使用http Post接口
Post API URL: /fileUploadPost
Parameters:
* @param MultipartHttpServletRequest request,
* @param Integer appid 应用id
* @param String username 上传者用户名
* @param String groupid MUC群组名称,如果是个人文件则无需
return:{statusCode=状态码, content='上传后的文件名'}
比如:
{statusCode=200, content='wangxin_Tigase开发文档.doc'}
方式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());
}
}
返回值:
如果成功:
{statusCode=200, content='上传后的文件名'}
比如:
{statusCode=200, content='wangxin_Tigase开发文档.doc'}
download下载API说明
方式1:使用http Get接口
Get API URL: /downloadByFilename
Parameters:filename ,类型:string
return:下载成功则true;失败则false
方式2:java client下载(请见ClientMultipartFormDownload.java)
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
#启用shutdown
endpoints.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 = true
storage.tofastdfs = false
storage.tomongodb = false
storage.toseaweedfs = false
storage.toalioss = false
storage.tocfs = false
#
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
这是一个基于Java语言开发的私有云文件存储微服务系统设计,包含159个文件。主要文件类型包括49个Java源文件、27个JavaScript文件、14个CSS文件、10个map文件、10个HTML文件、5个EOT字体文件、5个SVG文件、5个TTF字体文件、5个WOFF字体文件和5个PNG图片文件。该项目是一个高可用的File System文件云存储微服务系统,提供了文档管理、文件上传、下载、分类、共享、分组、审计、统计等功能,并支持企业内多项目,提供统一的oss私有文件服务,适合用于企业级文件存储和管理的开发和部署。
资源推荐
资源详情
资源评论
收起资源包目录
基于Java的私有云文件存储微服务系统设计源码 (161个子文件)
gradlew.bat 2KB
FileSystemApplicationTests.class 634B
dashboard.rtl.css 345KB
tabler.rtl.css 345KB
tabler.css 344KB
dashboard.css 344KB
bootstrap.css 171KB
plugin.css 157KB
bootstrap.min.css 139KB
bootstrap-grid.css 37KB
bootstrap-grid.min.css 28KB
plugin.css 18KB
bootstrap-reboot.css 5KB
bootstrap-reboot.min.css 4KB
plugin.css 3KB
plugin.css 3KB
plugin.css 0B
xyfs.db 35KB
materialdesignicons-webfont.eot 286KB
weathericons-regular-webfont.eot 97KB
themify.eot 77KB
feather-webfont.eot 63KB
Simple-Line-Icons.eot 53KB
allfile.ftl 2KB
.gitignore 297B
build.gradle 3KB
settings.gradle 32B
gradlew 5KB
index.html 11KB
menu.html 5KB
allfile.html 4KB
client.html 4KB
allfilebyauto.html 3KB
head.html 2KB
foot.html 1KB
uploadForm.html 1KB
empty.html 643B
uploaded.html 167B
favicon.ico 15KB
gradle-wrapper.jar 53KB
HttpHelper.java 29KB
FileUploadDownloadController.java 8KB
MongoService.java 7KB
AliService.java 7KB
Diskfile.java 6KB
StorageProperties.java 5KB
SQLiteDialect.java 5KB
QiniuService.java 4KB
SeaweedfsService.java 4KB
AppController.java 4KB
FileSystemStorageService.java 4KB
FileController.java 4KB
Diskuser.java 3KB
Diskgroup.java 3KB
UploadFileExt.java 3KB
FileSystemApplication.java 2KB
History.java 2KB
PagerModel.java 2KB
SwaggerConfig.java 2KB
MimeTypeUtil.java 1KB
App.java 1KB
Dailyreport.java 1KB
ScheduledTasks.java 1013B
HttpResult.java 947B
AppRepository.java 867B
Groupuser.java 831B
PropertiesTest.java 813B
FilePathUtil.java 775B
ClientMultipartFormPost.java 718B
FastdfsServcice.java 585B
StorageService.java 469B
ClientMultipartFormDownload.java 457B
UploadResult.java 451B
DiskfileRepository.java 411B
DebugUtil.java 369B
StoreSource.java 369B
FileSystemApplicationTests.java 334B
StorageFileNotFoundException.java 306B
StorageException.java 271B
DailyreportRepository.java 266B
DiskuserRepository.java 264B
HistoryRepository.java 258B
UploadedFile.java 199B
DiskgroupRepository.java 182B
GroupuserRepository.java 178B
AppService.java 165B
FileCache.java 158B
UsesCache.java 155B
FileListener.java 153B
wangxin.jpg 15KB
bootstrap.bundle.js 207KB
fullcalendar.min.js 206KB
chart.bundle.min.js 203KB
c3.min.js 182KB
d3.v3.min.js 148KB
bootstrap.js 121KB
jquery-jvectormap-world-mill.js 102KB
selectize.min.js 101KB
jquery-3.2.1.min.js 85KB
jquery-jvectormap-de-merc.js 82KB
共 161 条
- 1
- 2
资源评论
沐知全栈开发
- 粉丝: 5813
- 资源: 5217
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 广工操作系统keshe
- (8110644)CIA讲义\CIA讲义\II\A实施内部审计业务.doc
- 面向多设备、支持多语言的统一编程平台 OpenArkCompiler四个技术特点能够将不同语言代码编译成一套可执行文件,在运行环境中高效执行:支持多语言联合优化、消除跨语言调用开销;更轻量的语言运行时
- (174705420)基于stm32 的简单的智慧农业系统, 有上位机,有下位机
- (172712814)计算器设计1
- (1824456)java课程设计之计算器
- (1866400)java编的计算器程序
- (175213200)创维E900V22E-S905L卡刷固件root语音正常
- student.sql
- 手机电池4面贴标机(sw14可编辑+工程图)全套技术资料100%好用.zip
- (175206212)创维E900V21E-S905L卡刷固件root语音正常
- (3961620)最新C#,sharp,winform记事本
- 手机锂电池正压测漏机(sw17可编辑+工程图+BOM)全套技术资料100%好用.zip
- (10745218)宿舍管理系统源码20130329
- 【锂电池剩余寿命预测】CNN-LSTM锂电池剩余寿命预测,马里兰大学锂电池数据集(Pytorch完整源码和数据)
- (178244442)springboot + vue3 房屋租赁系统源码+数据库.zip
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功