Java應(yīng)用開發(fā)(中、高級)課件 任務(wù)3.3 實現(xiàn)菜品管理模塊_第1頁
Java應(yīng)用開發(fā)(中、高級)課件 任務(wù)3.3 實現(xiàn)菜品管理模塊_第2頁
Java應(yīng)用開發(fā)(中、高級)課件 任務(wù)3.3 實現(xiàn)菜品管理模塊_第3頁
Java應(yīng)用開發(fā)(中、高級)課件 任務(wù)3.3 實現(xiàn)菜品管理模塊_第4頁
Java應(yīng)用開發(fā)(中、高級)課件 任務(wù)3.3 實現(xiàn)菜品管理模塊_第5頁
已閱讀5頁,還剩27頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

任務(wù)3.實現(xiàn)菜品管理模塊任務(wù)描述本任務(wù)將實現(xiàn)菜品(菜品)管理模塊,分別完成菜品列表、菜品詳情、添加菜品、修改菜品、刪除菜品等功能。知識準(zhǔn)備1.前端開發(fā)流程需求->原型->開發(fā)->測試->上線2.前端目錄結(jié)構(gòu)(1)模塊化JS模塊化:AMD、CommonJS、UMD、ES6ModuleCSS模塊化:less、sass、stylus、postCSS、cssmodule資源模塊化(2)組件化項目組定制化ui組件公共功能組件,如404,無權(quán)限公共插件模塊間共用組件(3)靜態(tài)資源管理非模塊化資源模塊化資源--與模塊一起進行統(tǒng)一管理(4)規(guī)范化編碼規(guī)范接口規(guī)范

git使用規(guī)范CodeReviewUI元素規(guī)范(5)國際化:減少層級引用,提高復(fù)用性3.測試(1)SIT測試環(huán)境

測試環(huán)境,前后端分離,后臺CORS,前臺通過代理跨域。最好采用sourcemap方式,利于追蹤bug。一般測試通過,bug單清零,會轉(zhuǎn)UAT測試。(2)UAT測試環(huán)境

用戶驗收測試,一般通過后,就準(zhǔn)備部署上線。4.部署webpack進行打包后,發(fā)布到服務(wù)器上,項目上線。當(dāng)然,上線前,要進行性能優(yōu)化,例如配置緩存,靜態(tài)資源CDN部署。任務(wù)實施步驟1:實現(xiàn)菜品管理模塊后臺(1)在“com.chinasofti.ordersys.model”包中,新建DishesInfo類,用于實現(xiàn)菜品信息視圖對象。?代碼如下:/***Copyright2015ChinaSoftInternationalLtd.Allrightsreserved.*/packagecom.chinasofti.ordersys.model;

/***<p>*Title:DishesInfo*</p>*<p>*Description:菜品信息VO*</p>*<p>*Copyright:Copyright(c)2015*</p>*<p>*Company:ChinaSoftInternationalLtd.*</p>**@authoretc*@version1.0*/publicclassDishesInfo{ /** *菜品ID **/ privateintdishesId; /** *菜品名稱 **/ privateStringdishesName; /** *菜品描述 **/ privateStringdishesDiscript; /** *菜品圖片 **/ privateStringdishesImg; /** *菜品詳細描述文本 **/ privateStringdishesTxt; /** *是否推薦菜品標(biāo)識 **/ privateintrecommend; /** *菜品單價 **/ privatefloatdishesPrice; privatefloatdishesPrice;

publicintgetDishesId(){ returndishesId; }

publicvoidsetDishesId(intdishesId){ this.dishesId=dishesId; }

publicStringgetDishesName(){ returndishesName; }

publicvoidsetDishesName(StringdishesName){ this.dishesName=dishesName; }

publicStringgetDishesDiscript(){ returndishesDiscript; }

publicvoidsetDishesDiscript(StringdishesDiscript){ this.dishesDiscript=dishesDiscript; }

publicStringgetDishesImg(){ returndishesImg; } publicvoidsetDishesImg(StringdishesImg){ this.dishesImg=dishesImg; }

publicStringgetDishesTxt(){ returndishesTxt; }

publicvoidsetDishesTxt(StringdishesTxt){ this.dishesTxt=dishesTxt; }

publicintgetRecommend(){ returnrecommend; }

publicvoidsetRecommend(intrecommend){ this.recommend=recommend; }

publicfloatgetDishesPrice(){ returndishesPrice; }

publicvoidsetDishesPrice(floatdishesPrice){ this.dishesPrice=dishesPrice; }}(2)在“com.chinasofti.ordersys.api.admin”包中,新建AdminDishesController類,用于實現(xiàn)菜品管理模塊接口。?

代碼如下:packagecom.chinasofti.ordersys.api.admin;

importmon.result.PageResults;importmon.result.Results;importcom.chinasofti.ordersys.model.DishesInfo;importcom.chinasofti.ordersys.service.admin.DishesService;importorg.springframework.beans.factory.annotation.Autowired;importorg.springframework.security.access.prepost.PreAuthorize;importorg.springframework.web.bind.annotation.GetMapping;importorg.springframework.web.bind.annotation.RequestMapping;importorg.springframework.web.bind.annotation.RestController;

importjava.util.List;@PreAuthorize("hasRole('1')")@RestController@RequestMapping("/admin/dishes")publicclassAdminDishesController{ @AutowiredDishesServiceservice;

publicDishesServicegetService(){ returnservice; }

publicvoidsetService(DishesServiceservice){ this.service=service; }

@RequestMapping("/adddishes") publicResults<DishesInfo>addDishes(DishesInfoinfo){ //執(zhí)行添加菜品操作 service.addDishes(info);

returnResults.success(info); } @RequestMapping("/deletedishes") publicResults<DishesInfo>deleteDishes(IntegerdishesId){ service.deleteDishesById(dishesId); returnResults.success(); }

@GetMapping("/get") publicResults<DishesInfo>getDishes(IntegerdishesId){ returnResults.success(service.getDishesById(dishesId)); }

@RequestMapping("/getdishesbypage") publicPageResults<DishesInfo>getDishesInfoByPage(intpage){

//獲取最大頁碼數(shù) intmaxPage=service.getMaxPage(8); //對當(dāng)前的頁碼數(shù)進行糾錯,如果小于1,則直接顯示第一頁的內(nèi)容 page=page<1?1:page; //對當(dāng)前的頁碼數(shù)進行糾錯,如果大于最大頁碼,則直接顯示最后一頁的內(nèi)容 page=page>maxPage?maxPage:page; //進行分頁數(shù)據(jù)查詢 List<DishesInfo>list=service.getDishesInfoByPage(page,8); //嘗試將結(jié)果結(jié)構(gòu)化 returnPageResults.success(list,page,maxPage); }

@RequestMapping("/modifydishes") publicResults<DishesInfo>modifyDishes(DishesInfoinfo){

//執(zhí)行菜品信息修改工作 service.modifyDishes(info);

//跳轉(zhuǎn)到菜品管理界面 returnResults.success(info);

}

@RequestMapping("/toprecommend") publicResults<List<DishesInfo>>getTop4RecommendDishes(){

//獲取頭4條推薦菜品信息列表 List<DishesInfo>list=service.getTop4RecommendDishes(); //嘗試將結(jié)果結(jié)構(gòu)化 returnResults.success(list); }}(3)在“com.chinasofti.ordersys.service.admin”包中,新建DishesService類,用于實現(xiàn)菜品管理服務(wù)對象。?代碼如下:/***Copyright2015ChinaSoftInternationalLtd.Allrightsreserved.*/packagecom.chinasofti.ordersys.service.admin;

importcom.chinasofti.ordersys.mapper.DishesInfoMapper;importcom.chinasofti.ordersys.model.DishesInfo;importorg.springframework.beans.factory.annotation.Autowired;importorg.springframework.stereotype.Service;

importjava.util.List;/***<p>*Title:DishesService*</p>*<p>*Description:菜品管理服務(wù)對象*</p>*<p>*Copyright:Copyright(c)2015*</p>*<p>*Company:ChinaSoftInternationalLtd.*</p>**@authoretc*@version1.0*/@ServicepublicclassDishesService{ @AutowiredDishesInfoMappermapper;

publicDishesInfoMappergetMapper(){ returnmapper; }

publicvoidsetMapper(DishesInfoMappermapper){ this.mapper=mapper; }

/** *分頁獲取菜品數(shù)據(jù)的方法 * *@parampage *要獲取數(shù)據(jù)的頁號 *@parampageSize *每頁顯示的條目數(shù) *@return當(dāng)前頁的菜品數(shù)據(jù)列表 **/ publicList<DishesInfo>getDishesInfoByPage(intpage,intpageSize){ //獲取帶有連接池的數(shù)據(jù)庫模版操作工具對象 intfirst=(1)*pageSize; //返回結(jié)果 returnmapper.getDishesInfoByPage(first,pageSize);

}

/** *獲取菜品信息的最大頁數(shù) * *@parampageSize *每頁顯示的條目數(shù) *@return當(dāng)前數(shù)據(jù)庫中數(shù)據(jù)的最大頁數(shù) **/ publicintgetMaxPage(intpageSize){

Longrows=mapper.getMaxPage(); //返回最大頁數(shù) return(int)((rows.longValue()-1)/pageSize+1); } /** *根據(jù)菜品ID值刪除菜品信息的方法 * *@paramdishesId *要刪除的菜品Id **/ publicvoiddeleteDishesById(IntegerdishesId){ //獲取帶有連接池的數(shù)據(jù)庫模版操作工具對象 mapper.deleteDishesById(dishesId); }

/** *添加菜品的方法 * *@paraminfo *需要添加的菜品信息 **/ publicvoidaddDishes(DishesInfoinfo){ mapper.addDishes(info);

} /** *根據(jù)dishesId獲取菜品詳細信息的方法 * *@paramdishesId *要獲取信息的特定菜品Id *@return返回該id的菜品詳細信息 **/ publicDishesInfogetDishesById(IntegerdishesId){

returnmapper.getDishesById(dishesId); }

/** *修改菜品信息的方法 * *@paramInfo *要修改的菜品信息,其中dishesId為修改依據(jù),其余信息為修改的目標(biāo)值 **/

publicvoidmodifyDishes(DishesInfoinfo){ mapper.modifyDishes(info); } /** *獲取頭4條推薦菜品的信息 * *@return頭4條推薦菜品列表 **/ publicList<DishesInfo>getTop4RecommendDishes(){

returnmapper.getTop4RecommendDishes();

}}(4)在“com.chinasofti.ordersys.mapper”包中,新建DishesInfoMapper類,用于實現(xiàn)菜品模塊映射類。?代碼如下:packagecom.chinasofti.ordersys.mapper;

importcom.chinasofti.ordersys.model.DishesInfo;importorg.apache.ibatis.annotations.*;

importjava.util.List;

@MapperpublicinterfaceDishesInfoMapper{

@Select("select*fromdishesinfoorderbyrecommenddesc,dishesIdlimit#{first},#{max}") publicList<DishesInfo>getDishesInfoByPage(@Param("first")intfirst,@Param("max")intmax);

@Select("selectcount(*)fromdishesinfo") publicLonggetMaxPage();

@Delete("deletefromdishesinfowheredishesId=#{dishesId}") publicvoiddeleteDishesById(@Param("dishesId")IntegerdishesId); @Insert("insertintodishesinfo(dishesName,dishesDiscript,dishesTxt,dishesImg,recommend,dishesPrice)values(#{info.dishesName},#{info.dishesDiscript},#{info.dishesTxt},#{info.dishesImg},#{info.recommend},#{info.dishesPrice})") publicvoidaddDishes(@Param("info")DishesInfoinfo);

@Select("select*fromdishesinfowheredishesId=#{dishesId}") publicDishesInfogetDishesById(@Param("dishesId")IntegerdishesId);

@Update("updatedishesinfosetdishesName=#{info.dishesName},dishesDiscript=#{info.dishesDiscript},dishesTxt=#{info.dishesTxt},dishesImg=#{info.dishesImg},recommend=#{info.recommend},dishesPrice=#{info.dishesPrice}wheredishesId=#{info.dishesId}") publicvoidmodifyDishes(@Param("info")DishesInfoinfo);

@Select("select*fromdishesinfowhererecommend=1orderbydishesId") pu

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論