# hujz-java-file_server
**Repository Path**: jjtHappy/hujz-java-file_server
## Basic Information
- **Project Name**: hujz-java-file_server
- **Description**: No description available
- **Primary Language**: Java
- **License**: Not specified
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 1
- **Created**: 2019-05-23
- **Last Updated**: 2020-12-19
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# 基于netty-http的文件服务
## 如何打包
```bash
mvn clean compile jar:jar package
```
## 配置
### 默认情况
1. 文件存储方式为本地存储
2. 端口:9999
3. http路径:/storage
4. 临时目录:操作系统临时目录,可以通过JAVA系统属性`storage.tmpdir`配置,即`-Dstorage.tmpdir=
`
5. 文件存放目录:默认在程序的根目录下,可以用JAVA系统属性`storage.dir`配置,即`-Dstorage.dir=`
6. 数据配置:classes/_default/jdbc.properties
7. 图片resize后存放的目录:可以通过JAVA系统属性`storage.image.resize`配置,即`-Dstorage.image.resize=`,默认为系统临时目录
## 内嵌启动
1. 配置好Configuration的实例
2. 通过hujz.java.file_server.FileServer.start(Configuration)启动服务
## 接口列表
> 上传文件
````
地址:POST /putFile
HTTP头:Content-Type: multipart/form-data; boundary=
参数:
fileName 文件名称
file 文件
size 文件大小(字节)
响应:
{"s":1,"r":{"fileId":"","fullFileId":"","metadata":{"bytes":620888,"hash":"","modified":"","extension":"jpg","name":"郁金香.jpg"}},"t":1435201857141}
````
> 下载文件
```
地址:GET /getFile
参数:
fileId 文件访问ID
name 可选,文件下载的名称
size 可选,不传下载源文件,有此参数则下载图片对应的缩略图
format 可选,需要压缩的缩略图格式,不传则和源图片保持一致
响应:
X-Metadata: {"bytes":620888,"hash":"54C2F1A1EB6F12D681A5C7078421A5500CEE02AD","modified":"27 Aug 2015 02:59:36 GMT","extension":"jpg","name":" .jpg"}
文件数据
```
## 即将支持的功能
1. 断点续传和下载
2. 视频压缩,截图,预览