hainan
parent
175e4d14c0
commit
af30f6cf41
|
|
@ -1,9 +1,18 @@
|
||||||
package cn.cloudowr.attach;
|
package cn.cloudowr.attach;
|
||||||
|
|
||||||
|
import cn.cloudowr.sdk.FastJSONUtil;
|
||||||
import cn.cloudowr.sdk.jfinal.AbsController;
|
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.MongoCollection;
|
||||||
import com.mongodb.client.MongoDatabase;
|
import com.mongodb.client.MongoDatabase;
|
||||||
|
import com.mongodb.client.model.Filters;
|
||||||
import org.bson.Document;
|
import org.bson.Document;
|
||||||
|
import org.bson.types.ObjectId;
|
||||||
|
|
||||||
|
import java.io.File;
|
||||||
|
import java.util.UUID;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Created by lyf66 on 2017/2/20.
|
* Created by lyf66 on 2017/2/20.
|
||||||
|
|
@ -13,6 +22,53 @@ public class ACon extends AbsController{
|
||||||
renderText("attach pong");
|
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
|
@Override
|
||||||
public MongoCollection<Document> getCollection() {
|
public MongoCollection<Document> getCollection() {
|
||||||
MongoDatabase mongoDataBase = Config.getMongoDatabase();
|
MongoDatabase mongoDataBase = Config.getMongoDatabase();
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue