国产亚洲精品福利在线无卡一,国产精久久一区二区三区,亚洲精品无码国模,精品久久久久久无码专区不卡

當(dāng)前位置: 首頁(yè) > news >正文

直裝模板源碼搜索引擎優(yōu)化自然排名的優(yōu)點(diǎn)

直裝模板源碼,搜索引擎優(yōu)化自然排名的優(yōu)點(diǎn),互聯(lián)網(wǎng)包括哪些方面,水泥公司網(wǎng)站建設(shè)需求分析 在后臺(tái)中,通過(guò)新增功能來(lái)添加一個(gè)新的菜品,在添加菜品時(shí)需要選擇當(dāng)前菜品所屬的菜品分類,并且需要上傳的菜品圖片。 代碼開發(fā) 需要添加的類和基本接口:實(shí)體類DishFlavor、Mapper接口DishFlavorMapper、業(yè)務(wù)層接口Dish…

需求分析

在后臺(tái)中,通過(guò)新增功能來(lái)添加一個(gè)新的菜品,在添加菜品時(shí)需要選擇當(dāng)前菜品所屬的菜品分類,并且需要上傳的菜品圖片。

代碼開發(fā)

需要添加的類和基本接口:實(shí)體類DishFlavor、Mapper接口DishFlavorMapper、業(yè)務(wù)層接口DishFlavorService、業(yè)務(wù)層實(shí)現(xiàn)類DishFlavorServiceImpl、控制層DishController

  • 頁(yè)面發(fā)送ajax請(qǐng)求,請(qǐng)求服務(wù)器端獲取菜品分類數(shù)據(jù)并展示到下拉框
  • 頁(yè)面發(fā)送請(qǐng)求進(jìn)行圖片上傳,請(qǐng)求服務(wù)端將圖片保存到服務(wù)器
  • 頁(yè)面發(fā)送請(qǐng)求進(jìn)行圖片下載,將上傳的圖片進(jìn)行回顯
  • 點(diǎn)擊保存按鈕,發(fā)送ajax請(qǐng)求,將菜品相關(guān)數(shù)據(jù)以json形式提交到服務(wù)端

獲取菜品分類列表(下拉框)

// 獲取菜品分類列表
const getCategoryList = (params) => {return $axios({url: '/category/list',method: 'get',params})
}

前端發(fā)送aiax請(qǐng)求的地址是'/category/list',所以應(yīng)該在CategoryController中寫這個(gè)方法
添加菜品功能,通過(guò)調(diào)試前端發(fā)現(xiàn)查看菜品分類沒(méi)有報(bào)錯(cuò)。
在這里插入圖片描述在這里插入圖片描述

 /*** 根據(jù)條件,獲取菜品分類列表* @param category* @return*/@GetMapping("/list")public R<List<Category>> list(Category category){//條件構(gòu)造器LambdaQueryWrapper<Category> queryWrapper = new LambdaQueryWrapper<>();//添加條件queryWrapper.eq(category.getType() != null,Category::getType,category.getType());//添加排序條件 優(yōu)先使用sort排序 當(dāng)sort相同的情況下 使用更新時(shí)間進(jìn)行排序queryWrapper.orderByAsc(Category::getSort).orderByDesc(Category::getUpdateTime);List<Category> list = categoryService.list(queryWrapper);return R.success(list);}

排序也是正確的
在這里插入圖片描述

上傳圖片

這里我上傳了兩次,第一次上傳的圖片超過(guò)了2MB,所以報(bào)錯(cuò)了,然后我只能上傳大笨狗,上傳成功了。下圖分別是上傳和瀏覽請(qǐng)求成功的提示。
在這里插入圖片描述在這里插入圖片描述在這里插入圖片描述

接受頁(yè)面提交的數(shù)據(jù)

在這里插入圖片描述數(shù)據(jù)格式:
在這里插入圖片描述此時(shí)save()的參數(shù)不能直接使用Dish dish,因?yàn)橥ㄟ^(guò)前端傳送的數(shù)據(jù)格式可以看到有flavors這個(gè)參數(shù)。
在這里插入圖片描述解決辦法:導(dǎo)入DishDto,用于封裝頁(yè)面提交的數(shù)據(jù)
檢查封裝的數(shù)據(jù)是否有問(wèn)題:
在這里插入圖片描述

2023-08-01 10:18:03.969  INFO 8552 --- [nio-8060-exec-2] c.s.reggie.controller.DishController     : DishDto(flavors=[DishFlavor(id=null, dishId=null, name=甜味, value=["無(wú)糖","少糖","半糖","多糖","全糖"], createTime=null, updateTime=null, createUser=null, updateUser=null, isDeleted=null), DishFlavor(id=null, dishId=null, name=溫度, value=["熱飲","常溫","去冰","少冰","多冰"], createTime=null, updateTime=null, createUser=null, updateUser=null, isDeleted=null)], categoryName=null, copies=null)

測(cè)試代碼:

 @PostMappingpublic R<String> save(@RequestBody DishDto dishDto)//記得封裝要加RequestBody注解{log.info(dishDto.toString());return null;}

在這里插入圖片描述新增大笨狗成功。

/*** 菜品管理*/
@RestController
@RequestMapping("/dish")
@Slf4j
public class DishController {@Autowiredprivate DishService dishService;//菜品服務(wù)@Autowiredprivate DishFlavorService dishFlavorService;//菜品口味@PostMappingpublic R<String> save(@RequestBody DishDto dishDto)//記得封裝要加RequestBody注解{log.info(dishDto.toString());dishService.saveWithFlavor(dishDto);return R.success("新增菜品成功...");}
package com.springboot.reggie.service.impl;import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.springboot.reggie.dto.DishDto;
import com.springboot.reggie.entity.Dish;
import com.springboot.reggie.entity.DishFlavor;
import com.springboot.reggie.mapper.DishMapper;
import com.springboot.reggie.service.DishFlavorService;
import com.springboot.reggie.service.DishService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;import java.util.List;
import java.util.stream.Collectors;@Service
@Slf4jpublic class DishServiceImpl extends ServiceImpl<DishMapper, Dish> implements DishService {@Autowiredprivate DishFlavorService dishFlavorService;/*** 新增菜品 同時(shí)保存對(duì)應(yīng)的口味* @param dishDto*/@Transactional //需要加上事務(wù)控制 因?yàn)樯婕暗蕉鄰埍淼牟僮?/span>public void saveWithFlavor(DishDto dishDto){//保存菜品的基本信息到菜品表this.save(dishDto);Long dishId = dishDto.getId();//給菜品id賦值//菜品口味List<DishFlavor> flavors = dishDto.getFlavors();flavors =  flavors.stream().map((item)->{item.setDishId(dishId);return  item;}).collect(Collectors.toList());//保存菜品口味數(shù)據(jù)到菜品口味表dishFlavorService.saveBatch(flavors);}}
http://m.aloenet.com.cn/news/1156.html

相關(guān)文章:

  • 成都建設(shè)銀行社會(huì)招聘網(wǎng)站今日熱點(diǎn)新聞大事件
  • 用dw制作個(gè)介紹家鄉(xiāng)網(wǎng)站煙臺(tái)網(wǎng)站建設(shè)
  • 做網(wǎng)站賺錢嗎?pageadmin建站系統(tǒng)
  • 免費(fèi)建站網(wǎng)站網(wǎng)站開發(fā)需要的技術(shù)
  • 制作百度移動(dòng)網(wǎng)站每日一則新聞?wù)?/a>
  • 慈利做網(wǎng)站在哪里sem和seo有什么區(qū)別
  • 微信手機(jī)網(wǎng)站開發(fā)外貿(mào)網(wǎng)站外鏈平臺(tái)
  • 蘋果電腦做網(wǎng)站的步驟seo課程培訓(xùn)中心
  • 手機(jī)移動(dòng)網(wǎng)絡(luò)限制網(wǎng)站武漢電腦培訓(xùn)學(xué)校有哪些
  • 鄉(xiāng)鎮(zhèn)網(wǎng)站建設(shè)工作計(jì)劃國(guó)際新聞最新消息
  • wordpress mysql 配置關(guān)鍵詞優(yōu)化難度查詢
  • share poine 戶做網(wǎng)站百度網(wǎng)址大全 舊版本
  • 自己怎么做個(gè)網(wǎng)站數(shù)據(jù)分析方法
  • 成都網(wǎng)站建設(shè)公司官網(wǎng)服務(wù)營(yíng)銷策劃方案
  • 長(zhǎng)沙建網(wǎng)站的公司多少錢優(yōu)化網(wǎng)站關(guān)鍵詞優(yōu)化
  • 聯(lián)系我們網(wǎng)頁(yè)設(shè)計(jì)圖片百度seo推廣方案
  • wordpress 無(wú)法上傳文件外匯seo公司
  • 溫州外貿(mào)網(wǎng)站建設(shè)seo數(shù)據(jù)分析哪些方面
  • 校園網(wǎng)站設(shè)計(jì)與實(shí)現(xiàn)優(yōu)化seo深圳
  • 自己做的電商網(wǎng)站要多少錢如何制作網(wǎng)頁(yè)鏈接
  • 醫(yī)院網(wǎng)站HTML5辦公軟件速成培訓(xùn)班
  • 高端網(wǎng)站seo搜索引擎招聘
  • 網(wǎng)站編輯器失效無(wú)錫百度推廣開戶
  • 網(wǎng)站注冊(cè)頁(yè)面跳出怎么做移動(dòng)廣告平臺(tái)
  • 百度站長(zhǎng)查詢工具網(wǎng)站制作建設(shè)
  • 重慶奉節(jié)網(wǎng)站建設(shè)公司哪家好適合推廣的app有哪些
  • wordpress隨機(jī)彈窗插件網(wǎng)站seo站群軟件
  • 辦公室裝修設(shè)計(jì)圖片信息流優(yōu)化師簡(jiǎn)歷怎么寫
  • 網(wǎng)站沒(méi)有域名設(shè)置嗎騰訊會(huì)議開始收費(fèi)
  • kotlin做網(wǎng)站谷歌瀏覽器下載手機(jī)版