private void insertResourceBatch(final List<String> pluginNameList) {

        if (CollectionUtils.isEmpty(pluginNameList)) {
            return;
        }
        List<ResourceDO> resourceList = pluginNameList.stream()
                .filter(StringUtils::isNotEmpty)
                .map(pluginName -> ResourceDTO.builder()
                        .parentId(RESOURCE_PLUGIN_ID)
                        .id(UUIDUtils.getInstance().generateShortUuid())
                        .title(pluginName)
                        .name(pluginName)
                        .url(RESOURCE_PLUGIN_URL_PREFIX + pluginName)
                        .component(pluginName)
                        .resourceType(AdminResourceEnum.SECOND_MENU.getCode())
                        .sort(0)
                        .icon(ICONS.get(rand.nextInt(ICONS.size())))
                        .isLeaf(false)
                        .isRoute(ROUTE)
                        .perms(StringUtils.EMPTY)
                        .status(STATUS)
                        .build())
                .map(ResourceDO::buildResourceDO)
                .collect(Collectors.toList());
        resourceService.createResourceBatch(resourceList);
        List<ResourceDO> resourceChildren = resourceList.stream()
                .filter(resourceDO -> Objects.nonNull(resourceDO) && StringUtils.isNotEmpty(resourceDO.getId()))
                .map(resourceDO -> this.prepareChildrenResource(resourceDO.getId(), resourceDO.getTitle()))
                .flatMap(Collection::stream)
                .collect(Collectors.toList());
        resourceService.createResourceBatch(resourceChildren);
    }
insert Resource for pluginName.
@param pluginNameList list of pluginNames
shenyu-admin/src/main/java/org/apache/shenyu/admin/spring/ResourcePermissionDataSourceLoader.java