學成在線--26.課程圖片管理(圖片刪除)

文章目錄

  • 一. 需求分析
  • 二. API
  • 三. 服務端開發
    • 1. Dao
    • 2. Service
    • 3. Controller
  • 四. 前端開發
    • 1. API方法
    • 2. 頁面
      • 1.before-remove鉤子方法
      • 2.handleRemove鉤子方法

一. 需求分析

課程圖片上傳成功后,可以重新上傳,方法是先刪除現有圖片再上傳新圖片;

注意:此刪除只刪除課程數據庫的課程圖片信息,不去刪除文件數據庫的文件信息及文件系統服務器上的文件;

由于課程圖片來源于該用戶的文件數據庫,所以此圖片可能存在多個地方共用的情況,所以要刪除文件系統中的文件需要到圖片庫由用戶確認后再刪除。

二. API

在課程管理服務添加刪除課程圖片api:

文件位置:xcEduService01\xc-service-api\src\main\java\com\xuecheng\api\course\CourseControllerApi.java

@ApiOperation("刪除課程圖片")
public ResponseResult deleteCoursePic(String courseId);

三. 服務端開發

1. Dao

文件位置:xcEduService01\xc-service-manage-course\src\main\java\com\xuecheng\manage_course\dao\ CoursePicRepository.java

public interface CoursePicRepository extends JpaRepository<CoursePic,String> {//當返回值大于0,表示刪除成功的記錄數long deleteByCourseid(String courseId);
}

2. Service

文件位置:xcEduService01\xc-service-manage-course\src\main\java\com\xuecheng\manage_course\service\ CourseService.java

//刪除課程圖片
@Transactional
public ResponseResult deleteCoursePic(String courseId) {//執行刪除long result = coursePicRepository.deleteByCourseid(courseId);if(result>0){return new ResponseResult(CommonCode.SUCCESS);}return new ResponseResult(CommonCode.FAIL);
}

3. Controller

文件位置:xcEduService01\xc-service-manage-course\src\main\java\com\xuecheng\manage_course\controller\ CourseController.java

@Override
@DeleteMapping("/coursepic/delete")
public ResponseResult deleteCoursePic(@RequestParam("courseId") String courseId) {return courseService.deleteCoursePic(courseId);
}

四. 前端開發

1. API方法

文件位置:xc-ui-pc-teach\src\module\course\api\course.js

//刪除課程圖片
export const deleteCoursePic= courseId => {return http.requestDelete(apiUrl+'/course/coursepic/delete?courseId='+courseId)
}

2. 頁面

文件位置:xc-ui-pc-teach\src\module\course\page\course_manage\course_picture.vue

1.before-remove鉤子方法

在upload組件的before-remove鉤子方法 中實現刪除動作。

<template><div><el-uploadaction="/api/filesystem/upload"list-type="picture-card":before-upload="setuploaddata":on-success="handleSuccess":file-list="fileList":limit="picmax":on-exceed="rejectupload":before-remove="handleRemove":data="uploadval"name="multipartFile"><i class="el-icon-plus"></i></el-upload></div>
</template>

2.handleRemove鉤子方法

      //刪除圖片handleRemove(file, fileList) {console.log(file)return new Promise((resolve,reject)=>{courseApi.deleteCoursePic(this.courseid).then(res=>{if(res.success){//成功resolve();}else{this.$message.error("刪除失敗");//失敗reject();}})})//調用服務端去刪除課程圖片信息,如果返回false,前端停止刪除//異步調用
/*        return new Promise((resolve,rejct)=>{courseApi.deleteCoursePic(this.courseid).then(res=>{if(res.success){//成功resolve()}else{this.$message.error("刪除失敗");//失敗rejct()}})})*/},

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/451855.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/451855.shtml
英文地址,請注明出處:http://en.pswp.cn/news/451855.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

警惕開源代碼庫中的安全隱患

最近的一項研究發現&#xff0c; 在調查的31個流行庫&#xff08;框架&#xff09;的1261個版本中&#xff0c;超過三分之一存在已知的安全漏洞&#xff0c;大約四分之一的下載文件已經被污染。 該項研究由Aspect Security和Sonatype發起。Aspect Security是一家評估軟件安全漏…

jsp注釋

jsp注釋 <%--注釋內容--%> html注釋 <!--注釋內容-->

線程間的協作(3)——管道輸入/輸出流

2019獨角獸企業重金招聘Python工程師標準>>> 1.管道輸入/輸出流類 分為兩類&#xff0c;字節流管道類&#xff08;PipedInputStream/PipedOutputStream&#xff09;和字符流管道類&#xff08;PipedReader/ PipedWriter&#xff09;。這兩個IO流實現了可以在不同的任…

windows簡易版本 Redis 使用 demo樣例(ssm框架下)

前些天發現了一個巨牛的人工智能學習網站&#xff0c;通俗易懂&#xff0c;風趣幽默&#xff0c;忍不住分享一下給大家。點擊跳轉到教程。 1. 在網上下載 windows 版本 的Redis 。下載了直接解壓出來 &#xff1a; 2. 雙擊 redis-server.exe 啟動服務&#xff08;如下圖&#…

Redhat7.3安裝配置Telnet詳細教程

請參考&#xff1a;https://blog.csdn.net/weixin_39934520/article/details/84835949 謝謝樓主分享&#xff01;

程序員的半衰期只有15年?

曾在Google工作負責過技術工作的科技編輯 Matt Heusser總結了他在Google的生活經歷&#xff0c;得出結論&#xff1a; 作為程序員&#xff0c;你只有15年時間。Matt 寫道當我在Google工作時&#xff0c;發現Google大部分人都是20出頭的年輕人&#xff0c;他們經歷的很多事情都是…

EasyNVR、EasyDSS二次開發之:RTMP、HLS流在web頁面進行無插件播放示例Demo代碼

不管是基于EasyNVR還是EasyDSS&#xff0c;都是支持無插件直播&#xff0c;這也是未來視頻直播的一個趨勢。對于傳統的瀏覽器插件播放誰用誰知道&#xff1b; 以上是軟件自帶播放展示 背景需求 對于EasyNVR和EasyDSS的使用方式大概分為兩大類&#xff0c;一類是直接將軟件作為視…

jsp中%@ % 與% % 與%! %

<% %> 有個符號的&#xff0c;叫做指令用來提供整個JSP 網頁相關的信息&#xff0c;并且用來設定JSP網頁的相關屬性&#xff0c; 例如&#xff1a;網頁的編碼方式、語法、信息等。<% %>這個叫做小腳本&#xff0c;是寫java代碼的<%! %>這個是jsp中腳本聲明&a…

Hadoop的學習路線圖

目錄&#xff1a;.1.Hadoop家族產品2.Hadoop家族學習路線圖 Hadoop家族產品截止到2013年&#xff0c;根據cloudera的統計&#xff0c;Hadoop家族產品已經達到20個&#xff01;接下來&#xff0c;我把這20個產品&#xff0c;分成了2類。?第一類&#xff0c;是我已經掌握的?第二…

new TypeToken<List>>(){}.getType() 是什么意思

前些天發現了一個巨牛的人工智能學習網站&#xff0c;通俗易懂&#xff0c;風趣幽默&#xff0c;忍不住分享一下給大家。點擊跳轉到教程。 1. 項目中代碼&#xff1a; List<AppVersion> redisList new Gson().fromJson(json, new TypeToken<List<AppVersion>…

11--移除重復節點

編寫代碼&#xff0c;移除未排序鏈表中的重復節點。保留最開始出現的節點。 示例1: 輸入&#xff1a;[1, 2, 3, 3, 2, 1] 輸出&#xff1a;[1, 2, 3] 示例2: 輸入&#xff1a;[1, 1, 1, 1, 2] 輸出&#xff1a;[1, 2]

信息圖:程序員/開發人員實際在用哪些工具

BestVendor.com的工作人員在全球范圍內采訪了500名重要開發人員&#xff0c;在調查詢問他們實際使用的工具后&#xff0c;制作了一張信息圖&#xff0c;如下。 這張信息圖覆蓋10個方面的工具&#xff1a;Bug 追蹤、數據庫、開發框架、集成開發環境&#xff08;IDE&#xff09;、…

class特性

每個HTML元素都可以附帶一個class特性。有時候&#xff0c;你希望有一種方法可以指定多個元素并將這些元素和頁面上的其他元素區分出來&#xff0c;而不是單獨指定文檔中的某個元素。 <!DOCTYPE html> <!-- To change this license header, choose License Headers in…

Xcode代碼提示聯想功能失效,按command鍵點不進去類庫,提示“?”

一大早電腦重啟了下&#xff0c;打開項目之后出現了一堆問號&#xff0c;懷疑是Xcode 抽風了&#xff0c;本著懷疑的態度&#xff0c;新建了項目&#xff0c;一波操作下來是正常的&#xff0c;代碼能聯想&#xff0c;command也好使。于是在網上找答案&#xff0c;終于在這里找到…

12-- 缺失的第一個正數

文章目錄1.問題描述2.解題代碼1.問題描述 給你一個未排序的整數數組&#xff0c;請你找出其中沒有出現的最小的正整數。 示例 1: 輸入: [1,2,0] 輸出: 3 示例 2: 輸入: [3,4,-1,1] 輸出: 2 示例 3: 輸入: [7,8,9,11,12] 輸出: 1 提示&#xff1a; 你的算法的時間復雜度應…

java中的private public protected

1、public&#xff1a;public表明該數據成員、成員函數是對所有用戶開放的&#xff0c;所有用戶都可以直接進行調用 2、private&#xff1a;private表示私有&#xff0c;私有的意思就是除了class自己之外&#xff0c;任何人都不可以直接使用&#xff0c;私有財產神圣不可侵…

7款最流行的在線項目管理工具推薦

本文介紹一些非常流行的在線項目管理工具&#xff0c;希望你喜歡。 1. Apptivo 如果你是一個創業的或自由開發人員&#xff0c;或者屬于一個小型專業團隊&#xff0c;Apptivo這個項目管理軟件很值得你你研究。實質上&#xff0c;它是一個基于Web的項目管理應用&#xff0c;讓你…

VR全景看年評!PConline年度評測盛典等你來體驗

【PConline 2016年度評測】又是一年春草綠&#xff0c;馬上還有十天扒拉月2016年就快過完了。每年到這個時候&#xff0c;我們不禁都會拷問自己&#xff1a;你存到錢了么&#xff1f;娶到媳婦了么&#xff1f;買到房了么&#xff1f;答案是都沒有&#xff01;哈哈&#xff0c;這…

swagger詳解

1快速環境搭建 pom.xml文件中添加如下內容(看清楚再復制&#xff0c;此處不是全部內容) 1 <properties>2 ...3 <swagger.version>2.2.2</swagger.version>4 ...5 </properties>6 7 <dependency>8 …

13--長度最小的子數組

文章目錄1.題目要求2.解題代碼1.題目要求 給定一個含有 n 個正整數的數組和一個正整數 s &#xff0c;找出該數組中滿足其和 ≥ s 的長度最小的連續子數組&#xff0c;并返回其長度。如果不存在符合條件的連續子數組&#xff0c;返回 0。 示例&#xff1a; 輸入&#xff1a;…