java从零到企业级电商项目实战_从零到企业级SSM电商项目实战教程(二十九)后台商品搜索功能开发...

该代码片段展示了在SpringBoot环境下,ProductManageController通过Session获取用户并判断权限,调用IProductService的searchProduct方法进行商品搜索。ProductServiceImpl中使用PageHelper进行分页,并根据productName和productId查询ProductMapper,将结果转换为ProductListVo并返回。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

ProductManageController.java

@RequestMapping("search.do")

public ServerResponse productSearch(HttpSession session,String productName,Integer productId, @RequestParam(value = "pageNum",defaultValue = "1") int pageNum,@RequestParam(value = "pageSize",defaultValue = "10") int pageSize){

User user = (User)session.getAttribute(Const.CURRENT_USER);

if(user == null){

return ServerResponse.createByErrorCodeMessage(ResponseCode.NEED_LOGIN.getCode(),"用户未登录,请登录管理员");

}

if(iUserService.checkAdminRole(user).isSuccess()){

//填充业务

return iProductService.searchProduct(productName,productId,pageNum,pageSize);

}else{

return ServerResponse.createByErrorMessage("无权限操作");

}

}

IProductService.java

ServerResponsesearchProduct(String productName,Integer productId,int pageNum,int pageSize);

ProductServiceImpl.java

public ServerResponsesearchProduct(String productName,Integer productId,int pageNum,int pageSize){

PageHelper.startPage(pageNum,pageSize);

if(StringUtils.isNotBlank(productName)){

productName = new StringBuilder().append("%").append(productName).append("%").toString();

}

ListproductList = productMapper.selectByNameAndProductId(productName,productId);

ListproductListVoList = Lists.newArrayList();

for(Product productItem : productList){

ProductListVo productListVo = assembleProductListVo(productItem);

productListVoList.add(productListVo);

}

PageInfo pageResult = new PageInfo(productList);

pageResult.setList(productListVoList);

return ServerResponse.createBySuccess(pageResult);

}

ProductMapper.java

ListselectByNameAndProductId(@Param("productName")String productName,@Param("productId") Integer productId);

ProductMapper.xml

SELECT

from mmall_product

and name like #{productName}

and id = #{productId}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值