hainan
parent
175e4d14c0
commit
af30f6cf41
|
|
@ -1,9 +1,18 @@
|
|||
package cn.cloudowr.attach;
|
||||
|
||||
import cn.cloudowr.sdk.FastJSONUtil;
|
||||
import cn.cloudowr.sdk.jfinal.AbsController;
|
||||
import com.aliyun.oss.model.UploadFileRequest;
|
||||
import com.aliyun.oss.model.UploadFileResult;
|
||||
import com.jfinal.upload.UploadFile;
|
||||
import com.mongodb.client.MongoCollection;
|
||||
import com.mongodb.client.MongoDatabase;
|
||||
import com.mongodb.client.model.Filters;
|
||||
import org.bson.Document;
|
||||
import org.bson.types.ObjectId;
|
||||
|
||||
import java.io.File;
|
||||
import java.util.UUID;
|
||||
|
||||
/**
|
||||
* Created by lyf66 on 2017/2/20.
|
||||
|
|
@ -13,6 +22,53 @@ public class ACon extends AbsController{
|
|||
renderText("attach pong");
|
||||
}
|
||||
|
||||
public void upload() throws Throwable {
|
||||
UploadFile file = getFile();
|
||||
String json = getPara("json", null);
|
||||
Document doc = null;
|
||||
if (json != null) {
|
||||
try {
|
||||
doc = Document.parse(json);
|
||||
} catch (Exception e) {
|
||||
renderError(400);
|
||||
return;
|
||||
}
|
||||
}
|
||||
if (doc == null) {
|
||||
doc = new Document();
|
||||
}
|
||||
|
||||
String key = UUID.randomUUID().toString().replace("-", "");
|
||||
UploadFileRequest uploadFileRequest = new UploadFileRequest(Config.BukketName, key);
|
||||
uploadFileRequest.setUploadFile(file.getUploadPath() + File.separator + file.getFileName());
|
||||
uploadFileRequest.setTaskNum(5);
|
||||
uploadFileRequest.setPartSize(1 * 1024 * 1024);
|
||||
uploadFileRequest.setEnableCheckpoint(true);
|
||||
UploadFileResult uploadFileResult = Config.getOssClient().uploadFile(uploadFileRequest);
|
||||
uploadFileResult.getMultipartUploadResult();
|
||||
|
||||
MongoCollection<Document> collection = getCollection();
|
||||
doc.put("ossurl", Config.OssUrl + key);
|
||||
doc.put("filename", file.getFileName());
|
||||
collection.insertOne(doc);
|
||||
|
||||
file.getFile().delete();
|
||||
|
||||
// renderJson(doc.toJson());
|
||||
renderJson(FastJSONUtil.bsonToJSON(doc));
|
||||
}
|
||||
|
||||
public void download() throws Throwable {
|
||||
String id = getPara("id");
|
||||
if (id == null || id.isEmpty()) {
|
||||
renderError(404);
|
||||
return;
|
||||
}
|
||||
MongoCollection<Document> collection = getCollection();
|
||||
Document doc = collection.find(Filters.eq("_id", new ObjectId(id))).first();
|
||||
renderJson("url", doc.getString("ossurl"));
|
||||
}
|
||||
|
||||
@Override
|
||||
public MongoCollection<Document> getCollection() {
|
||||
MongoDatabase mongoDataBase = Config.getMongoDatabase();
|
||||
|
|
|
|||
Loading…
Reference in New Issue