Skip to content

openingo/contree

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

51 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ConTree

contree 发音与country,意为:乡间美,乡间树多。

maven中央仓库 LTS版本

特性

  • 树节点添加、修改;
  • 树节点级联删除、含有子节点的校验删除(有子节点时不可删除);
  • 树数据获取,指定rootNodeId,模糊nodeName,指定获取数据模式fetchType:仅第一级子节点或全部;
  • 变动通知,便于其他业务处理其他事务。

使用方式

  • 添加依赖
<dependency>
    <groupId>org.openingo.kits</groupId>
    <artifactId>contree</artifactId>
    <version>${contree.version}</version>
</dependency>
  • 在启动类上加入@EnableTree
/**
 * App
 *
 * @author Qicz
 */
@EnableExtension
@EnableTree
@SpringBootApplication
public class App {
    public static void main(String[] args) {
        SpringApplicationX.run(App.class, args);
    }
}
  • 监听变动implements IConTreeObserver即可
/**
 * ConTreeObserverComponent
 *
 * @author Qicz
 */
@Component
@Slf4j
public class ConTreeObserverComponent implements IConTreeObserver {

    /**
     * 删除处理响应
     * <note>
     * 1. 这处理与树删除在同一个事务中;
     * 2. 业务端收到onTreeNodeDelete消息后,处理完成业务逻辑;
     * 3. 以上都无异常,则事务正常提交。
     * </note>
     *
     * @param treeCode 树编码
     * @param nodes    删除的node信息
     */
    @Override
    public void onTreeNodeDelete(String treeCode, List<ConTreeNode> nodes) {
        log.info("😃 treeCode = {}, nodes = {}", treeCode, nodes);
    }
}

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages