微服务电商的学习
一,框架的搭建
基础框架
-  
创建一个一级父工程,可以删除src,作为父工程都不需要写代码,
 -  
pom文件的添加
 -  
熟悉使用通用mapper在引入基础框架
- 需要的依赖:(只是针对一张表进行增删改查)
 
 
<!--通用mapper起步依赖-->
        <dependency>
            <groupId>tk.mybatis</groupId>
            <artifactId>mapper-spring-boot-starter</artifactId>
            <version>2.0.4</version>
        </dependency>
 
根据条件查询添加的知识点:在将条件封装在Map或者对象中时,
Example example = new Example(Brand.class);
Example.Criteria criteria = example.createCriteria();
if(map != null){
    // 品牌名称 ,判断map或者对象的值是否含有此条件,再添加至实例中
    if(searchMap.get("name")!=null && !"".equals(searchMap.get("name"))){
        criteria.andLike("name","%"+searchMap.get("name")+"%");
    }
    if(brand.getName()!=null && !"".equals(brand.getName())){
        criteria.andLike("name","%"+searchMap.get("name")+"%");
    }
}
brandMapper.SelectByExample(example);//通过条件查询
 
根据分页查询:参数为page,size
PageHelper.startPage(page,size);
brandMapper.selectAll();
 
根据条件查询出的列表进行分页
- 统一异常处理类
 
@ControllerActive
public class BaseExceptionHandler{
    @ExceptionHandler(value = Exception.class)
    @ResponseBody
    public Result error(Exception e){
        e.printStackTrace();
        return new Result(false, StatusCode.ERROR, "执行出错");
    }
}
 
- 导入了基础框架之后,需要熟悉针对多表操作的添加
 
  @Select("select name,image from tb_brand where id in (select brand_id from tb_category_brand where category_id in (select id from tb_category where name=#{categoryName}))")
    List<Map> findBrandListByCategoryName(@Param("categoryName") String categoryName);










