this is ueditor controller demo project.
后端部分的重点在于处理文件上传,文件上传部分需要自己动手改写代码,对接自己的文件服务或者存储,总之该DEMO中的代码没有对最终存储这一步做处理;
你需要修改的代码的位置为 cn.com.lee.common.ueditor.upload.StorageManager
类下的TODO:
public static State saveFileByInputStream(HttpServletRequest request, InputStream is, String path, String picName,
long maxSize) {
State state = null;
File tmpFile = getTmpFile();
byte[] dataBuf = new byte[ 2048 ];
try {
//转成字节流
ByteArrayOutputStream swapStream = new ByteArrayOutputStream();
int rc = 0;
while ((rc = is.read(dataBuf, 0, 100)) > 0) {
swapStream.write(dataBuf, 0, rc);
}
dataBuf = swapStream.toByteArray();
swapStream.flush();
swapStream.close();
if (tmpFile.length() > maxSize) {
tmpFile.delete();
return new BaseState(false, AppInfo.MAX_SIZE);
}
//:TODO
/**
* 此处调用文件上传服务,并获取返回结果返回
*/
//UploadResult result = baseFileService.upload(dataBuf, picName, "OM", null);
boolean success = true;
//如果上传成功
if (success) {
state = new BaseState(true);
state.putInfo( "size", tmpFile.length() );
state.putInfo( "title", "");//文件名填入此处
state.putInfo( "url", "");//文件访问的url填入此处
tmpFile.delete();
}else{
state = new BaseState(false, 4);
tmpFile.delete();
}
return state;
} catch (IOException e) {
}
return new BaseState(false, AppInfo.IO_ERROR);
}
最终返回的URL地址必须是HTTP、HTTPS开头的网络地址,如果不是请在返回之前做好处理;