使用IDEA进行JAVA Maven开发–学习笔记1

一个地区查询类例子

1、数据库实体类

在核心分包增加数据库定义类 UtilAreaEntity.java

@TableName("m_area")
public class UtilAreaEntity {

    /**
     * 地区名
     */
    private String name;

    /**
     * 上级地区ID, 一级地区为0
     */
    private Long parentId;

    /**
     * 地区ID
     */
    private Integer codeId;

}

2、服务器类

在服务器目录建立UtilAreaService.java

public interface UtilAreaService extends BaseService<UtilAreaEntity> {



    /**
     * 查询地区
     *
     * @return 部门树
     */
    List<?> getList(Long parentId);

}

3、服务器类实现

在服务器类的实现目录建立UtilAreaServiceImpl.java

@Service
@RequiredArgsConstructor(onConstructor = @__(@Autowired))
public class UtilAreaServiceImpl extends BaseServiceImpl<UtilAreaMapper, UtilAreaEntity> implements UtilAreaService {

    private final UtilAreaMapper utilAreaMapper;
    /**
     * @param parentId
     * @desc 地区编码
     * @return
     */
    @Override
    public List<?> getList(Long parentId) {
        List<UtilAreaEntity> areaList = baseMapper.selectList(new LambdaQueryWrapper<UtilAreaEntity>().eq(UtilAreaEntity::getParentId,parentId));
        return areaList;
    }

    /**
     * @param entity
     * @return
     */
    public boolean save(UtilAreaEntity entity) {
        return super.save(entity);
    }
}

4、定义请求参数列表

在param目录创建AreaParam.java文件

@Data
@Schema(name = "地区参数")
public class AreaParam {
    @NotNull
    @Schema(description = "地区ID", defaultValue = "0", example = "0")
    private Long parentId = NumberUtils.LONG_ZERO;

}

5、控制器文件

在控制器目录建立控制器UtilAreaController.java文件

@Slf4j
@Validated
@RestController
@RequestMapping("/util/area")
@RequiredArgsConstructor(onConstructor = @__(@Autowired))
@Tag(name = "地区查询")
public class UtilAreaController {

    private final UtilAreaService utilAreaService;

    @GetMapping("/getList")
    @Operation(summary = "查询地区")
    public CommonResult<?> getList(@RequestParam Long parentId) {
        return CommonResult.success(utilAreaService.getList(parentId));
    }
}