1. 程式人生 > >java的遞歸查詢大體思路

java的遞歸查詢大體思路

部門 code src 當前 pos per sql mit ui設計

場景:遞歸查詢是我們開發中很常見的,如果沒有一個比較好的思路,這將會讓我們很頭疼。

我這裏介紹一個查詢部門的例子,希望能給你一些啟發

部門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的遞歸查詢大體思路