Spring-SpringMVC-Mybatis框架下的 省市区 三级联动 第二版

一年前写过一篇关于省市区三级联动的,当时的那篇  省  市  区 分为了三张表,但现实工作中,往往是单张表 ,然后自己查自己.

现在我以这样的情况重写写一篇.

先看看表结构

Spring-SpringMVC-Mybatis框架下的 省市区 三级联动 第二版_第1张图片

这里我们关注主键Id,名称以及父级Id

在这里我们能看到,我们表中 将 省 市 区/县   都写在了一张表内,通过父级Id建立连接.

实体类根据Mybatis逆向工程来生成,除了表中属性外  添加一个额外的属性  List childrenList;

public class ShoppingArea {
	//主键Id
    private Long id;
    private Date addtime;
    private Boolean deletestatus;
    private String areaname;
    private Integer level;
    private Integer sequence;
    //父级Id
    private Long parentId;
    private Boolean common;

    //子级列表   非表属性
    private List childrenList;
    //getter
    //setter
}

在逆向工程生成的Dao层接口mapper.java如下:

public interface ShoppingAreaMapper {
    int deleteByPrimaryKey(Long id);

    int insert(ShoppingArea record);

    int insertSelective(ShoppingArea record);

    ShoppingArea selectByPrimaryKey(Long id);

    int updateByPrimaryKeySelective(ShoppingArea record);

    int updateByPrimaryKey(ShoppingArea record);
    
    //根据父级id找子级
    List selectByParentId(Long parentId);
    
    //查询所有
    List selectAll();
    
}

mapper.xml如下:



	
	    
	    
	    
	    
	    
	    
	    
	    
	

  
	
		 
	    
	    
	    
	    
	    
	    
	    
  	
  
  
  
	
		 
	    
	    
	    
	    
	    
	    
	    
  	
  
  
  
  
  
  
    id, addTime, deleteStatus, areaName, level, sequence, parent_id, common
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  

Spring-SpringMVC-Mybatis框架下的 省市区 三级联动 第二版_第2张图片

 

看上图即可.

测试代码:

Spring-SpringMVC-Mybatis框架下的 省市区 三级联动 第二版_第3张图片

Spring-SpringMVC-Mybatis框架下的 省市区 三级联动 第二版_第4张图片

 

结果如下:

打断点,直接看生成的结果

查询所有:

Spring-SpringMVC-Mybatis框架下的 省市区 三级联动 第二版_第5张图片

获取单个省级实体

Spring-SpringMVC-Mybatis框架下的 省市区 三级联动 第二版_第6张图片

 

你可能感兴趣的:(问题,框架)