java的递归查询大体思路

Posted 敲代码的卡卡罗特

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java的递归查询大体思路相关的知识,希望对你有一定的参考价值。

场景:递归查询是我们开发中很常见的,如果没有一个比较好的思路,这将会让我们很头疼。

我这里介绍一个查询部门的例子,希望能给你一些启发

 

部门sql

技术分享图片
-- ----------------------------
--  Table structure for `sys_dept`
-- ----------------------------
DROP TABLE IF EXISTS `sys_dept`;
CREATE TABLE `sys_dept` (
  `id` int(11) NOT NULL AUTO_INCREMENT COMMENT ‘部门id‘,
  `name` varchar(20) NOT NULL DEFAULT ‘‘ COMMENT ‘部门名称‘,
  `parent_id` int(11) NOT NULL DEFAULT ‘0‘ COMMENT ‘上级部门id‘,
  `level` varchar(200) NOT NULL DEFAULT ‘‘ COMMENT ‘部门层级‘,
  `seq` int(11) NOT NULL DEFAULT ‘0‘ COMMENT ‘部门在当前层级下的顺序,由小到大‘,
  `remark` varchar(200) DEFAULT ‘‘ COMMENT ‘备注‘,
  `operator` varchar(20) NOT NULL DEFAULT ‘‘ COMMENT ‘操作者‘,
  `operate_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT ‘最后一次操作时间‘,
  `operate_ip` varchar(20) NOT NULL DEFAULT ‘‘ COMMENT ‘最后一次更新操作者的ip地址‘,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=13 DEFAULT CHARSET=utf8mb4;

-- ----------------------------
--  Records of `sys_dept`
-- ----------------------------
BEGIN;
INSERT INTO `sys_dept` VALUES (‘1‘, ‘技术部‘, ‘0‘, ‘0‘, ‘1‘, ‘技术部‘, ‘system‘, ‘2017-10-11 07:21:40‘, ‘127.0.0.1‘), (‘2‘, ‘后端开发‘, ‘1‘, ‘0.1‘, ‘1‘, ‘后端‘, ‘system-update‘, ‘2017-10-12 07:56:16‘, ‘127.0.0.1‘), (‘3‘, ‘前端开发‘, ‘1‘, ‘0.1‘, ‘2‘, ‘‘, ‘system-update‘, ‘2017-10-14 11:29:45‘, ‘127.0.0.1‘), (‘4‘, ‘UI设计‘, ‘1‘, ‘0.1‘, ‘3‘, ‘‘, ‘system‘, ‘2017-10-12 07:55:43‘, ‘127.0.0.1‘), (‘11‘, ‘产品部‘, ‘0‘, ‘0‘, ‘2‘, ‘‘, ‘Admin‘, ‘2017-10-16 22:52:29‘, ‘0:0:0:0:0:0:0:1‘), (‘12‘, ‘客服部‘, ‘0‘, ‘0‘, ‘4‘, ‘‘, ‘Admin‘, ‘2017-10-17 00:22:55‘, ‘0:0:0:0:0:0:0:1‘);
COMMIT;
View Code

 

以上是关于java的递归查询大体思路的主要内容,如果未能解决你的问题,请参考以下文章

在 Java 的 GraphQL 查询中添加片段

使用MyBatis轻松实现递归查询与存储过程调用

大体思路

Huawei_Netconf_Ncclient

php递归查询

Time系列四查询当月日历