当前位置: 首页 > news >正文

企业网站功能模块创新的微商城网站建设

企业网站功能模块,创新的微商城网站建设,装修设计平台,wordpress增强编辑器结构性模式-外观模式 门面模式 适用场景#xff1a;如果你需要一个指向复杂子系统的直接接口#xff0c; 且该接口的功能有限#xff0c; 则可以使用外观模式。 不用关心后面的查询具体操作 /*** 聚合查询接口*/ RestController RequestMapping(/search) Slf…结构性模式-外观模式 门面模式 适用场景如果你需要一个指向复杂子系统的直接接口 且该接口的功能有限 则可以使用外观模式。 不用关心后面的查询具体操作 /*** 聚合查询接口*/ RestController RequestMapping(/search) Slf4j public class SearchController {Resourceprivate SearchFacade searchFacade;PostMapping(/all)public BaseResponseSearchVo searchAll(RequestBody SearchQueryRequest searchQueryRequest, HttpServletRequest httpServletRequest) {SearchVo searchVo searchFacade.searchAll(searchQueryRequest, httpServletRequest);return ResultUtils.success(searchVo);} }复杂查询逻辑放在SearchFacade里面 package com.xiaofei.site.search.controller;import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.xiaofei.site.search.common.BaseResponse; import com.xiaofei.site.search.common.ResultUtils; import com.xiaofei.site.search.model.dto.image.ImageQueryRequest; import com.xiaofei.site.search.model.dto.post.PostQueryRequest; import com.xiaofei.site.search.model.dto.search.SearchQueryRequest; import com.xiaofei.site.search.model.dto.user.UserQueryRequest; import com.xiaofei.site.search.model.entity.Image; import com.xiaofei.site.search.model.enums.SearchTypeEnum; import com.xiaofei.site.search.model.vo.PostVO; import com.xiaofei.site.search.model.vo.SearchVo; import com.xiaofei.site.search.model.vo.UserVO; import com.xiaofei.site.search.service.ImageService; import com.xiaofei.site.search.service.PostService; import com.xiaofei.site.search.service.UserService; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor; import org.springframework.stereotype.Component; import org.springframework.web.bind.annotation.RequestBody;import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; import java.util.concurrent.CompletableFuture; import java.util.concurrent.ExecutionException;/*** author tuaofei* description 查询-门面模式* date 2024/11/29*/ Component Slf4j public class SearchFacade {Resourceprivate PostService postService;Resourceprivate UserService userService;Resourceprivate ImageService imageService;ResourceThreadPoolTaskExecutor threadPoolTaskExecutor;public SearchVo searchAll(RequestBody SearchQueryRequest searchQueryRequest, HttpServletRequest httpServletRequest) {SearchVo searchVo new SearchVo();if (searchQueryRequest null) {return searchVo;}String searchText searchQueryRequest.getSearchText();String searchType searchQueryRequest.getSearchType();if (StringUtils.isBlank(searchType)) {CompletableFuturePagePostVO postTask CompletableFuture.supplyAsync(() - {PostQueryRequest postQueryRequest new PostQueryRequest();postQueryRequest.setSearchText(searchText);PagePostVO postVOPage postService.listPostVoPage(postQueryRequest, httpServletRequest);return postVOPage;}, threadPoolTaskExecutor);CompletableFuturePageUserVO userTask CompletableFuture.supplyAsync(() - {UserQueryRequest userQueryRequest new UserQueryRequest();userQueryRequest.setUserName(searchText);PageUserVO userVOPage userService.listUserVoPage(userQueryRequest);return userVOPage;}, threadPoolTaskExecutor);CompletableFuturePageImage imageTask CompletableFuture.supplyAsync(() - {ImageQueryRequest imageQueryRequest new ImageQueryRequest();imageQueryRequest.setSearchText(searchText);PageImage imagePage imageService.getImageByPage(imageQueryRequest);return imagePage;}, threadPoolTaskExecutor);CompletableFuture.allOf(postTask, userTask, imageTask);try {PagePostVO postVOPage postTask.get();searchVo.setPostList(postVOPage.getRecords());PageUserVO userVOPage userTask.get();searchVo.setUserList(userVOPage.getRecords());PageImage imagePage imageTask.get();searchVo.setImageList(imagePage.getRecords());} catch (InterruptedException | ExecutionException e) {e.printStackTrace();}} else {SearchTypeEnum searchTypeEnum SearchTypeEnum.getEnumByValue(searchType);switch (searchTypeEnum) {case POST:PostQueryRequest postQueryRequest new PostQueryRequest();postQueryRequest.setSearchText(searchText);PagePostVO postVOPage postService.listPostVoPage(postQueryRequest, httpServletRequest);searchVo.setPostList(postVOPage.getRecords());break;case USER:UserQueryRequest userQueryRequest new UserQueryRequest();userQueryRequest.setUserName(searchText);PageUserVO userVOPage userService.listUserVoPage(userQueryRequest);searchVo.setUserList(userVOPage.getRecords());break;case IMAGE:ImageQueryRequest imageQueryRequest new ImageQueryRequest();imageQueryRequest.setSearchText(searchText);PageImage imagePage imageService.getImageByPage(imageQueryRequest);searchVo.setImageList(imagePage.getRecords());break;default:break;}}return searchVo;} }
http://www.w-s-a.com/news/795267/

相关文章:

  • 商业网站网站建设wordpress关闭前端公共库
  • 打开山东城市建设职业学院网站下载了wordpress后
  • 四川网站建设设计城乡建设网站证件查询系统
  • 企业邮箱哪里买栾城seo整站排名
  • 长沙网站建设zh68网页制作技术实训报告
  • 电商网站的功能手机广告设计与制作软件
  • 做网站前端需要编程基础吗杭州市住房和城乡建设局
  • 网站开发一般学多久网站建设投标方案
  • 北京网站建设报价表制作短视频的软件有哪些
  • 长沙企业网站开发西安建设公司网站
  • 做图的兼职网站网站开发用了哪些知识要点
  • php网站怎么做静态化微慕wordpress插件
  • 电商营业执照wordpress利于seo
  • 那些网站主做玄幻小说营销策略都有哪些方面
  • 同一源代码再建设一个网站建立网站免费
  • 网站更换服务器影响做seo必须有网站吗
  • 免费网页模板网站php微信微网站怎么做
  • 网站的优点和缺点腾讯企点是什么软件
  • 谷歌英文网站推广网页设计好看的网站
  • 衡水网站建设集团各大网站注册
  • 违法网站开发做注册任务网站源码
  • 帝国cms仿站工具淮南寿县
  • 深圳网站建设方案外包手机怎样使用域名访问网站
  • 安陆市建设局网站磐安做网站
  • 梧州市建设局官方网站商旅100网页版
  • 好的宝安网站建设中企动力的网站开发语言
  • flash网站模板怎么用怎么套模板 网站
  • 建设二手商品网站总结石景山安保服务公司电话
  • 网站建设对于企业的重要性龙岗企业网站设计公司
  • 网站搭建在线支付数码产品网站模板