使用PageHelper插件分页
public ServerResponse<PageInfo> getGoodsList (int pageNum, int pageSize){
PageHelper.startPage(pageNum,pageSize);
List<Goods> goodsList = goodsMapper.selectList();
List<GoodsListVo> goodsListVoList = Lists.newArrayList();
for (Goods goodsItem : goodsList){
GoodsListVo goodsListVo = assembleGoodsListVo(goodsItem);
goodsListVoList.add(goodsListVo);
}
PageInfo pageResult = new PageInfo(goodsList);
pageResult.setList(goodsListVoList);
return ServerResponse.createBySuccess(pageResult);
}
递归获取商品结点及子元素节点
public ServerResponse< List < Category>> selectParalleCategory(Integer parentId){
if (parentId== null ){
return ServerResponse. createByErrorMessage("品类参数错误" );
}
List < Category> categoyList= categoryMapper. selectParalleCategoryByParentId(parentId);
if (CollectionUtils. isEmpty(categoyList)){
logger. info("未找到当前分类的子分类" );
}
return ServerResponse. createBySuccess(categoyList);
}
public ServerResponse selectCategoryAndChildren(Integer categoryId){
Set < Category> categorySet= Sets. newHashSet();
findChildCategory(categorySet,categoryId);
List < Integer > categoryIdList= Lists. newArrayList();
if (categoryId!= null ){
for(Category categoryItem:categorySet){
categoryIdList. add(categoryItem. getId());
}
}
return ServerResponse. createBySuccess(categoryIdList);
}
private Set < Category> findChildCategory(Set < Category> categorySet,Integer categoryId){
Category category= categoryMapper. selectByPrimaryKey(categoryId);
if (category!= null ){
categorySet. add(category);
}
List < Category> categoryList= categoryMapper. selectParalleCategoryByParentId(categoryId);
for(Category categoryItem:categoryList){
findChildCategory(categorySet,categoryItem. getId());
}
return categorySet;
}
mybaits查询技巧
<delete id="deleteByUserIdGoodsIds" parameterType="map" >
delete from cart
where uid =
<if test="goodsIdList != null" >
and goods_id in
<foreach collection="goodsIdList" item ="item" index="index" open ="(" separator="," close =")" >
</foreach>
</if >
</delete >
/**/
<select id="selectLogin" parameterType="map" resultType="com.xiaoyitao.entity.User" >
SELECT <include refid="Base_Column_List" />
FROM user
WHERE uid=#{uid} and password=#{password}
</select >
<select id="selectByNameAndGoodsId" resultMap="BaseResultMap" parameterType="map" >
SELECT
<include refid="Base_Column_List" />
FROM goods
<where >
<if test="goodsName != null" >
goods_name like #{goodsName}
</if >
<if test="goodsId != null" >
and id = #{goodsId}
</if >
</where >
</select >
public ServerResponse<PageInfo> getGoodsList(int pageNum, int pageSize){
//startPage--start
PageHelper.startPage (pageNum,pageSize)
//填充自己的sql查询逻辑
List<Goods> goodsList = goodsMapper.selectList ()
//遍历goodsList,使其转为VO的list
List<GoodsListVo> goodsListVoList = Lists.newArrayList ()
for(Goods goodsItem : goodsList){
GoodsListVo goodsListVo = assembleGoodsListVo(goodsItem)
goodsListVoList.add (goodsListVo)
}
//pageHelper-收尾
PageInfo pageResult = new PageInfo(goodsList)
pageResult.setList (goodsListVoList)
return ServerResponse.createBySuccess (pageResult)
}
//pojo -> VO 的组装方法
private GoodsListVo assembleGoodsListVo(Goods goods){
GoodsListVo goodsListVo = new GoodsListVo()
goodsListVo.setId (goods.getId ())
goodsListVo.setGoodsName (goods.getGoodsName ())
goodsListVo.setStatus (goods.getStatus ())
goodsListVo.setPrice (goods.getPrice ())
goodsListVo.setCategory (goods.getCategory ())
goodsListVo.setGoodsAddress (goods.getGoodsAddress ())
goodsListVo.setUid (goods.getUid ())
goodsListVo.setAmount (goods.getAmount ())
goodsListVo.setMainImage (goods.getMainImage ())
goodsListVo.setImageHost (PropertiesUtil.getProperty ("ftp.server.http.prefix" ,"http://img.happymmall.com/" ))
return goodsListVo
}
controller控制器的写法
@Controller
@RequestMapping ("/manage/category" )
@Autowired
private IUserService iUserService;
@Autowired
private ICategoryService iCategoryService;
@RequestMapping(value ="upload.do" ,method = RequestMethod.POST)
@ResponseBody
public ServerResponse upload (HttpSession session, @RequestParam (value = "upload_file" ,required = false ) MultipartFile file, HttpServletRequest request){
if (file.getSize() <= 0 ) {
return ServerResponse.createByErrorCodeMessage(ResponseCode.ERROR.getCode(),"上传失败:文件为空" );
}
User user = (User)session.getAttribute(Const.CURRENT_USER);
if (user == null ){
return ServerResponse.createByErrorCodeMessage(ResponseCode.NEED_LOGIN.getCode(),"用户未登录,请登录管理员" );
}
if (iUserService.checkAdminRole(user).isSuccess()){
String path = request.getSession().getServletContext().getRealPath("upload" );
String targetFileName = iFileService.goodsImgUpload(file,path,user.getUid());
if (StringUtils.isBlank(targetFileName)){
return ServerResponse.createByErrorCodeMessage(ResponseCode.ERROR.getCode(),"上传文件异常或不支持的图片文件格式" );
}
String url = PropertiesUtil.getProperty("ftp.server.http.prefix" )+targetFileName;
Map fileMap = Maps.newHashMap();
fileMap.put("uri" ,targetFileName);
fileMap.put("url" ,url);
return ServerResponse.createBySuccess(fileMap);
}else {
return ServerResponse.createByErrorMessage("无权限操作" );
}
}