成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

文件上傳

roland_reed / 1126人閱讀

摘要:示例一頁面上傳附件文件對象代表附件通過對象傳輸?shù)胶笈_用于插入數(shù)據(jù)的不要去處理發(fā)送的數(shù)據(jù)不要去設置請求頭是返回的之類的值,是定義的文件名查詢上傳失敗后臺接收多文件下面新增自定義方法多個附件上傳換成也是唯一,好找圖片示例二圖片上傳單張

[TOC]

示例一: 【1】頁面js:
/*
上傳附件
docObj:文件對象
appid:cid
apptypeid:1、blog 2、
busitype:100——代表附件
*/
function uploadAttachment(docObj){
    var appid = $("#appid").val();
    var files =docObj.files;
    var formData = new FormData();//通過對象傳輸?shù)胶笈_
    formData.append("appid",appid);//用于sysfile插入數(shù)據(jù)的appid
    for (var i = files.length - 1; i >= 0; i--) {
        formData.append("files[]",files[i]);
    }
    $.ajax({
        data : formData,
        type : "POST",
        url : "/common/xxx/upload",
        cache : false,
        processData: false,                // jQuery不要去處理發(fā)送的數(shù)據(jù)
        contentType: false,                // jQuery不要去設置Content-Type請求頭
        dataType: "JSON",
        success: function(data) {//data是返回的hash,key之類的值,key是定義的文件名
            //查詢
            $("#attachment").bootstrapTable("refresh");
            attachment(appid);
        },
        error:function(){
            toastr.error("上傳失敗");
        }
    });
}
【2】spring mvc后臺接收多文件:
//下面新增自定義方法
@ResponseBody
@PostMapping("/upload")
R upload(@RequestParam("files[]") MultipartFile[] files,@RequestParam("appid") String appid) throws IOException, Exception {
    //多個附件上傳
    for (int i = 0; i < files.length; i++) {
        System.out.println(i);
        String fname = files[i].getOriginalFilename();
//                String fileName = FileUtil.renameToUUID(fname);//換成uuid——也是唯一,好找圖片
        String uuid = UUID.randomUUID().toString().replace("-", "");
        String fileType = fname.substring(fname.lastIndexOf(".") + 1, fname.length()).toLowerCase();
        String fileName = uuid+"."+fileType;//cf6ec8ccb62e451e8d5f27dab6bfeb3f.png
        FileUtil.uploadFile(files[i].getBytes(),tuodataConfig.getUploadPublicPath()+"blog/", fileName);
        FileDO fileDo= insertFile(appid,uuid,0,fname,fileName,fileType);
    }
    return R.ok();
}
示例二:

layui圖片上傳

【1】單張
html:

    
    

    
js: 新增的js腳本: 編輯的js腳本: 后臺代碼: /** * 輪播圖保存 */ @Before(value = { JMSystemApiInterceptor.class }) public void rotationChartSave() { String image = JMUploadKit.fileUpload(this, "file", "rotationChart"); Configure rotationChart = new Configure(); SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); rotationChart.setValue2(sdf.format(new Date())); boolean result = false; if (image != null) { rotationChart.setName("rotationChart"); rotationChart.setValue(image); result = configureDao.save(rotationChart); } if (result) { // 給type跟desc賦值 Configure rotationChart1 = configureDao.get(false); rotationChart.setType(rotationChart1.getType() + 1);// 獲取最后一個type rotationChart.setDesc("輪播圖-" + (rotationChart1.getType() + 1)); rotationChart.update(); JMResult.success(this, "新增成功"); } else { JMResult.fail(this, "新增失敗"); } } /** * 輪播圖更新 */ @Before(value = { JMSystemApiInterceptor.class }) public void rotationChartUpdate() { String image = JMUploadKit.fileUpload(this, "file", "rotationChart"); Integer rotationChartId = getParaToInt("rotationChartId",null); Configure rotationChart = new Configure(); Configure rotationChart1 = configureDao.getById(rotationChartId); SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); boolean result = false;// 標識是否報錯 if (image != null) { if (rotationChart1.getValue() != null) ToolUpload.deleteFile(rotationChart1.getValue()); rotationChart.setId(rotationChartId); rotationChart.setValue(image); rotationChart.setValue2(sdf.format(new Date()));// 記錄更新時間 result = configureDao.update(rotationChart); } if (result) { JMResult.success(this, "修改成功"); } else { JMResult.fail(this, "修改失敗"); } }
【2】多張

參考文章路徑:https://www.layui.com/demo/up...

示例三 【1】oss上傳圖片


選擇圖片 改變 刪除
NOTE! 兼容 IE10+, FF3.6+, Safari6.0+, Chrome6.0+ and Opera11.1+.以上的瀏覽器
后臺代碼: String ossFileUpload = ToolUpload.OSSFileUpload(this, "image", "configure"); 地址:wenbang/upload/configure/20190116/xxx.jpg page 頁面顯示縮略圖: ${ctx}/assets/global/img/no.png${oss}${obj.value}" style="max-width: 26px; max-height: 22px;">

文章版權歸作者所有,未經(jīng)允許請勿轉載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉載請注明本文地址:http://systransis.cn/yun/74064.html

相關文章

  • Java文件上傳細講

    摘要:代碼量也的確減少很多也能夠獲取普通字段的參數(shù)上傳文件名的中文亂碼和上傳數(shù)據(jù)的中文亂碼我把文件名改成中文,就亂碼了表單提交過來的中文數(shù)據(jù)也亂碼了。 什么是文件上傳? 文件上傳就是把用戶的信息保存起來。 為什么需要文件上傳? 在用戶注冊的時候,可能需要用戶提交照片。那么這張照片就應該要進行保存。 上傳組件(工具) 為什么我們要使用上傳工具? 為啥我們需要上傳組件呢?當我們要獲取客戶端的數(shù)據(jù)...

    soasme 評論0 收藏0
  • 前端臨床手札——文件上傳

    摘要:文件上傳基本是學習前端路上必定遇到的例子,然而網(wǎng)上能找到的都是單單滿足上傳這步的案例。但前提是需要約定傳入值和返回類型。 文件上傳基本是學習前端路上必定遇到的例子,然而網(wǎng)上能找到的都是單單滿足上傳這步的案例。大多文章之所以只說上傳這步估計是簡單易入門,但是實際工作時就會發(fā)現(xiàn)上傳文件這個功能上是簡單的,邏輯上卻比較復雜。 先說一下需求和功能點: 需求:上傳文件到服務器 功能:上傳 單這么...

    SexySix 評論0 收藏0
  • Node+H5實現(xiàn)大文件分片上傳(有源碼)

    摘要:話前上傳大文件上傳的教程網(wǎng)上很多但是大部分沒給出一個比較完整的出來這個博客給出的是前后端一套完整的解決方案其中前端沒有使用第三方上傳庫希望能幫到有同樣需求的朋友們大文件分片上傳的好處在這里就不用多說了之前不管是上傳單文件還是分片文件上傳都是 話前 上傳大文件上傳的教程網(wǎng)上很多, 但是大部分沒給出一個比較完整的出來, 這個博客給出的是前后端一套完整的解決方案, 其中前端沒有使用第三方上傳...

    1treeS 評論0 收藏0
  • PHP 代碼審計:(一)文件上傳

    摘要:代碼審計一文件上傳概述在網(wǎng)站的運營過程中,不可避免地要對網(wǎng)站的某些頁面或內容進行更新,這時便需要使用到網(wǎng)站上的文件上傳功能。 PHP 代碼審計:(一)文件上傳 0x00 概述 在網(wǎng)站的運營過程中,不可避免地要對網(wǎng)站的某些頁面或內容進行更新,這時便需要使用到網(wǎng)站上的文件上傳功能。如果不對被上傳文件進行限制,或限制被繞過,該功能便有可能會被利用于上傳可執(zhí)行文件、腳本到服務器上,今兒進一步導...

    vslam 評論0 收藏0

發(fā)表評論

0條評論

roland_reed

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<