Repository: qabin/kb-dms
Branch: master
Commit: 345938816135
Files: 540
Total size: 14.2 MB
Directory structure:
gitextract_eiqufxd7/
├── .idea/
│ ├── compiler.xml
│ ├── encodings.xml
│ ├── libraries/
│ │ ├── Maven__ch_qos_logback_logback_classic_1_1_11.xml
│ │ ├── Maven__ch_qos_logback_logback_core_1_1_11.xml
│ │ ├── Maven__com_alibaba_druid_1_1_10.xml
│ │ ├── Maven__com_alibaba_druid_spring_boot_starter_1_1_10.xml
│ │ ├── Maven__com_alibaba_fastjson_1_2_46.xml
│ │ ├── Maven__com_fasterxml_classmate_1_3_4.xml
│ │ ├── Maven__com_fasterxml_jackson_core_jackson_annotations_2_8_0.xml
│ │ ├── Maven__com_fasterxml_jackson_core_jackson_core_2_8_10.xml
│ │ ├── Maven__com_fasterxml_jackson_core_jackson_databind_2_8_10.xml
│ │ ├── Maven__com_github_jsqlparser_jsqlparser_1_4.xml
│ │ ├── Maven__com_google_protobuf_protobuf_java_2_6_0.xml
│ │ ├── Maven__com_jayway_jsonpath_json_path_2_2_0.xml
│ │ ├── Maven__com_microsoft_sqlserver_sqljdbc4_4_1.xml
│ │ ├── Maven__com_vaadin_external_google_android_json_0_0_20131108_vaadin1.xml
│ │ ├── Maven__commons_beanutils_commons_beanutils_1_9_3.xml
│ │ ├── Maven__commons_codec_commons_codec_1_10.xml
│ │ ├── Maven__commons_collections_commons_collections_3_2_2.xml
│ │ ├── Maven__javax_validation_validation_api_1_1_0_Final.xml
│ │ ├── Maven__junit_junit_4_12.xml
│ │ ├── Maven__mysql_mysql_connector_java_8_0_11.xml
│ │ ├── Maven__net_minidev_accessors_smart_1_1.xml
│ │ ├── Maven__net_minidev_json_smart_2_2_1.xml
│ │ ├── Maven__net_sf_ehcache_ehcache_core_2_5_3.xml
│ │ ├── Maven__org_apache_commons_commons_lang3_3_8_1.xml
│ │ ├── Maven__org_apache_httpcomponents_httpclient_4_5_5.xml
│ │ ├── Maven__org_apache_httpcomponents_httpclient_4_5_8.xml
│ │ ├── Maven__org_apache_httpcomponents_httpcore_4_4_9.xml
│ │ ├── Maven__org_apache_shiro_shiro_core_1_3_2.xml
│ │ ├── Maven__org_apache_shiro_shiro_ehcache_1_3_2.xml
│ │ ├── Maven__org_apache_shiro_shiro_spring_1_3_2.xml
│ │ ├── Maven__org_apache_shiro_shiro_web_1_3_2.xml
│ │ ├── Maven__org_apache_tomcat_embed_tomcat_embed_core_8_5_27.xml
│ │ ├── Maven__org_apache_tomcat_embed_tomcat_embed_el_8_5_27.xml
│ │ ├── Maven__org_apache_tomcat_embed_tomcat_embed_websocket_8_5_27.xml
│ │ ├── Maven__org_apache_tomcat_tomcat_annotations_api_8_5_27.xml
│ │ ├── Maven__org_apache_tomcat_tomcat_jdbc_8_5_27.xml
│ │ ├── Maven__org_apache_tomcat_tomcat_juli_8_5_27.xml
│ │ ├── Maven__org_aspectj_aspectjweaver_1_8_13.xml
│ │ ├── Maven__org_aspectj_aspectjweaver_1_8_3.xml
│ │ ├── Maven__org_assertj_assertj_core_2_6_0.xml
│ │ ├── Maven__org_hamcrest_hamcrest_core_1_3.xml
│ │ ├── Maven__org_hamcrest_hamcrest_library_1_3.xml
│ │ ├── Maven__org_hibernate_hibernate_validator_5_3_6_Final.xml
│ │ ├── Maven__org_jboss_logging_jboss_logging_3_3_1_Final.xml
│ │ ├── Maven__org_mockito_mockito_core_1_10_19.xml
│ │ ├── Maven__org_mybatis_mybatis_3_4_5.xml
│ │ ├── Maven__org_mybatis_mybatis_spring_1_3_1.xml
│ │ ├── Maven__org_mybatis_spring_boot_mybatis_spring_boot_autoconfigure_1_3_1.xml
│ │ ├── Maven__org_mybatis_spring_boot_mybatis_spring_boot_starter_1_3_1.xml
│ │ ├── Maven__org_objenesis_objenesis_2_1.xml
│ │ ├── Maven__org_ow2_asm_asm_5_0_3.xml
│ │ ├── Maven__org_projectlombok_lombok_1_16_20.xml
│ │ ├── Maven__org_skyscreamer_jsonassert_1_4_0.xml
│ │ ├── Maven__org_slf4j_jcl_over_slf4j_1_7_25.xml
│ │ ├── Maven__org_slf4j_jul_to_slf4j_1_7_25.xml
│ │ ├── Maven__org_slf4j_log4j_over_slf4j_1_7_25.xml
│ │ ├── Maven__org_slf4j_slf4j_api_1_7_25.xml
│ │ ├── Maven__org_springframework_boot_spring_boot_1_5_10_RELEASE.xml
│ │ ├── Maven__org_springframework_boot_spring_boot_1_5_19_RELEASE.xml
│ │ ├── Maven__org_springframework_boot_spring_boot_autoconfigure_1_5_10_RELEASE.xml
│ │ ├── Maven__org_springframework_boot_spring_boot_starter_1_5_10_RELEASE.xml
│ │ ├── Maven__org_springframework_boot_spring_boot_starter_jdbc_1_5_10_RELEASE.xml
│ │ ├── Maven__org_springframework_boot_spring_boot_starter_logging_1_5_10_RELEASE.xml
│ │ ├── Maven__org_springframework_boot_spring_boot_starter_test_1_5_10_RELEASE.xml
│ │ ├── Maven__org_springframework_boot_spring_boot_starter_tomcat_1_5_10_RELEASE.xml
│ │ ├── Maven__org_springframework_boot_spring_boot_starter_web_1_5_10_RELEASE.xml
│ │ ├── Maven__org_springframework_boot_spring_boot_test_1_5_10_RELEASE.xml
│ │ ├── Maven__org_springframework_boot_spring_boot_test_autoconfigure_1_5_10_RELEASE.xml
│ │ ├── Maven__org_springframework_spring_aop_4_3_14_RELEASE.xml
│ │ ├── Maven__org_springframework_spring_beans_4_3_14_RELEASE.xml
│ │ ├── Maven__org_springframework_spring_context_4_3_14_RELEASE.xml
│ │ ├── Maven__org_springframework_spring_core_4_3_14_RELEASE.xml
│ │ ├── Maven__org_springframework_spring_expression_4_3_14_RELEASE.xml
│ │ ├── Maven__org_springframework_spring_jdbc_5_1_9_RELEASE.xml
│ │ ├── Maven__org_springframework_spring_test_4_3_14_RELEASE.xml
│ │ ├── Maven__org_springframework_spring_tx_4_3_14_RELEASE.xml
│ │ ├── Maven__org_springframework_spring_web_4_3_14_RELEASE.xml
│ │ ├── Maven__org_springframework_spring_webmvc_4_3_14_RELEASE.xml
│ │ └── Maven__org_yaml_snakeyaml_1_17.xml
│ ├── misc.xml
│ ├── modules.xml
│ ├── uiDesigner.xml
│ ├── vcs.xml
│ └── workspace.xml
├── README.md
├── kb-dms-backend/
│ ├── .gitignore
│ ├── contract/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ └── java/
│ │ └── com/
│ │ └── bin/
│ │ └── kong/
│ │ └── dms/
│ │ └── contract/
│ │ ├── common/
│ │ │ ├── BaseResponse.java
│ │ │ ├── BaseSearch.java
│ │ │ ├── GenericResponse.java
│ │ │ ├── PaginationResponse.java
│ │ │ ├── ResponseState.java
│ │ │ └── SearchListAndCountDO.java
│ │ ├── config/
│ │ │ └── response/
│ │ │ ├── DatasourceForSearchResponse.java
│ │ │ ├── DatasourcePermissionMemberResponse.java
│ │ │ ├── DbResponse.java
│ │ │ └── TableResponse.java
│ │ ├── permission/
│ │ │ └── response/
│ │ │ └── SqlOptionsResponse.java
│ │ ├── statistics/
│ │ │ └── response/
│ │ │ ├── GeneralBizCountResponse.java
│ │ │ └── GeneralMonthTimelineResponse.java
│ │ ├── user/
│ │ │ ├── entity/
│ │ │ │ └── RequestUserInfo.java
│ │ │ └── request/
│ │ │ ├── LoginRequest.java
│ │ │ ├── RegisterRequest.java
│ │ │ ├── SqlEditorShareRequest.java
│ │ │ └── UpdateUserInfoRequest.java
│ │ └── utils/
│ │ └── SqlExeRequest.java
│ ├── core/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ └── java/
│ │ └── com/
│ │ └── bin/
│ │ └── kong/
│ │ └── dms/
│ │ └── core/
│ │ ├── config/
│ │ │ └── ThreadPoolConfig.java
│ │ ├── constants/
│ │ │ ├── CookieConstants.java
│ │ │ ├── ResponseConstants.java
│ │ │ └── UserInfoConstants.java
│ │ ├── dynamicdatasource/
│ │ │ ├── DynamicDataExeUtils.java
│ │ │ ├── DynamicDataSourceContextHolder.java
│ │ │ ├── DynamicDataSourceUtils.java
│ │ │ ├── DynamicSqlOptionTypeEntity.java
│ │ │ ├── DynamicSqlOptionTypeWithDruidControl.java
│ │ │ └── DynamicSqlSyntaxCheck.java
│ │ ├── entity/
│ │ │ ├── MetaIndexEntity.java
│ │ │ ├── Result.java
│ │ │ ├── SqlExeResult.java
│ │ │ ├── TableColumnAndIndexEntity.java
│ │ │ ├── TableFieldEntity.java
│ │ │ ├── TableIndexEntity.java
│ │ │ └── TableInfoEntity.java
│ │ ├── enums/
│ │ │ ├── BusGroupStatusEnum.java
│ │ │ ├── DataSourceStatusEnum.java
│ │ │ ├── DatasourceSearchTypeEnum.java
│ │ │ ├── DatasourceTypeEnum.java
│ │ │ ├── GroupSearchTypeEnum.java
│ │ │ ├── SqlEditorActiveStatusEnum.java
│ │ │ ├── SqlEditorOpenStatusEnum.java
│ │ │ ├── SqlEditorStatusEnum.java
│ │ │ ├── SqlExeRecordStatusEnum.java
│ │ │ ├── SqlExeResultCountTypeForStatisticsEnum.java
│ │ │ ├── SqlExeResultSearchByEnum.java
│ │ │ ├── SqlExeResultSearchTypeEnum.java
│ │ │ ├── SqlExeResultStatusEnum.java
│ │ │ ├── SqlOptionTypeEnum.java
│ │ │ ├── SqlOptionTypeEnumForPermission.java
│ │ │ ├── SqlQuerySwitchEnum.java
│ │ │ ├── SqlSyntaxCheckResultEnum.java
│ │ │ └── SqlSyntaxErrorCountTypeForStatisticsEnum.java
│ │ ├── exception/
│ │ │ ├── UserNotExistException.java
│ │ │ └── UserStatusException.java
│ │ ├── mybatis/
│ │ │ ├── DataSourceConfig.java
│ │ │ └── MybatisConfigDms.java
│ │ └── utils/
│ │ ├── DbUtils.java
│ │ ├── HttpUtils.java
│ │ ├── PPAesUtils.java
│ │ └── PPStringUtils.java
│ ├── dao/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── bin/
│ │ │ └── kong/
│ │ │ └── dms/
│ │ │ └── dao/
│ │ │ └── mapper/
│ │ │ ├── config/
│ │ │ │ ├── CfAdminConfigMapper.java
│ │ │ │ ├── CfBusGroupMapper.java
│ │ │ │ ├── CfBusGroupOwnersMapper.java
│ │ │ │ ├── CfBusGroupUsersMapper.java
│ │ │ │ ├── CfDatasourceMapper.java
│ │ │ │ ├── CfDatasourceOwnersMapper.java
│ │ │ │ ├── CfDatasourcePermissionMemberMapper.java
│ │ │ │ └── CfDatasourcePermissionSqlOptionsMapper.java
│ │ │ ├── join/
│ │ │ │ ├── BusGroupJoinOwnerMapper.java
│ │ │ │ ├── DatasourceJoinGroupJoinOwnerMapper.java
│ │ │ │ ├── DatasourceJoinGroupMapper.java
│ │ │ │ └── SqlEditorTabJoinDatasourceMapper.java
│ │ │ ├── result/
│ │ │ │ ├── RsSqlExeRecordMapper.java
│ │ │ │ └── RsSqlExeResultMapper.java
│ │ │ ├── statistics/
│ │ │ │ ├── StSqlExeBizTotalMapper.java
│ │ │ │ ├── StSqlExeResultCountDayMapper.java
│ │ │ │ ├── StSqlExeResultCountTimelineMapper.java
│ │ │ │ ├── StSqlSyntaxErrorCountDayMapper.java
│ │ │ │ └── StSqlSyntaxErrorCountTimelineMapper.java
│ │ │ └── user/
│ │ │ ├── UsActiveSqlEditorTabMapper.java
│ │ │ ├── UsFavoriteDatasourceMapper.java
│ │ │ ├── UsFavoriteDbMapper.java
│ │ │ ├── UsFavoriteGroupMapper.java
│ │ │ ├── UsFavoriteTableMapper.java
│ │ │ ├── UsSqlEditorTabMapper.java
│ │ │ └── UserInfoMapper.java
│ │ └── resources/
│ │ ├── generatorConfig.xml
│ │ └── mybatis/
│ │ ├── configMapping/
│ │ │ ├── CfAdminConfigMapper.xml
│ │ │ ├── CfBusGroupMapper.xml
│ │ │ ├── CfBusGroupOwnersMapper.xml
│ │ │ ├── CfBusGroupUsersMapper.xml
│ │ │ ├── CfDatasourceMapper.xml
│ │ │ ├── CfDatasourceOwnersMapper.xml
│ │ │ ├── CfDatasourcePermissionMemberMapper.xml
│ │ │ └── CfDatasourcePermissionSqlOptionsMapper.xml
│ │ ├── joinMapping/
│ │ │ ├── BusGroupJoinOwnerMapper.xml
│ │ │ ├── DatasourceJoinGroupJoinOwnerMapper.xml
│ │ │ ├── DatasourceJoinGroupMapper.xml
│ │ │ └── SqlEditorTabJoinDatasourceMapper.xml
│ │ ├── resultMapping/
│ │ │ ├── RsSqlExeRecordMapper.xml
│ │ │ └── RsSqlExeResultMapper.xml
│ │ ├── statisticsMapping/
│ │ │ ├── StSqlExeBizTotalMapper.xml
│ │ │ ├── StSqlExeResultCountDayMapper.xml
│ │ │ ├── StSqlExeResultCountTimelineMapper.xml
│ │ │ ├── StSqlSyntaxErrorCountDayMapper.xml
│ │ │ └── StSqlSyntaxErrorCountTimelineMapper.xml
│ │ └── userMapping/
│ │ ├── UsActiveSqlEditorTabMapper.xml
│ │ ├── UsFavoriteDatasourceMapper.xml
│ │ ├── UsFavoriteDbMapper.xml
│ │ ├── UsFavoriteGroupMapper.xml
│ │ ├── UsFavoriteTableMapper.xml
│ │ ├── UsSqlEditorTabMapper.xml
│ │ └── UserInfoMapper.xml
│ ├── model/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ └── java/
│ │ └── com/
│ │ └── bin/
│ │ └── kong/
│ │ └── dms/
│ │ └── model/
│ │ ├── config/
│ │ │ ├── entity/
│ │ │ │ ├── CfAdminConfig.java
│ │ │ │ ├── CfBusGroup.java
│ │ │ │ ├── CfBusGroupOwners.java
│ │ │ │ ├── CfBusGroupUsers.java
│ │ │ │ ├── CfDatasource.java
│ │ │ │ ├── CfDatasourceOwners.java
│ │ │ │ ├── CfDatasourcePermissionMember.java
│ │ │ │ └── CfDatasourcePermissionSqlOptions.java
│ │ │ └── search/
│ │ │ ├── AdminSearch.java
│ │ │ ├── BusGroupSearch.java
│ │ │ ├── BusGroupUsersSearch.java
│ │ │ └── DatasourceSearch.java
│ │ ├── join/
│ │ │ ├── entity/
│ │ │ │ ├── BusGroupJoinOwner.java
│ │ │ │ ├── DatasourceJoinGroup.java
│ │ │ │ ├── DatasourceJoinGroupJoinOwner.java
│ │ │ │ ├── DdlOptionJoinTask.java
│ │ │ │ └── SqlEditorTabJoinDatasource.java
│ │ │ └── search/
│ │ │ ├── BusGroupJoinOwnerSearch.java
│ │ │ ├── DatasourceJoinGroupJoinOwnerSearch.java
│ │ │ ├── DatasourceJoinGroupSearch.java
│ │ │ ├── DdlOptionsJoinTaskSearch.java
│ │ │ └── SqlEditorTabJoinDatasourceSearch.java
│ │ ├── result/
│ │ │ ├── entity/
│ │ │ │ ├── RsSqlExeRecord.java
│ │ │ │ └── RsSqlExeResult.java
│ │ │ └── search/
│ │ │ ├── SqlExeResultForStatisticsSearch.java
│ │ │ └── SqlExeResultSearch.java
│ │ ├── statistics/
│ │ │ ├── entity/
│ │ │ │ ├── StSqlExeBizTotal.java
│ │ │ │ ├── StSqlExeResultCountDay.java
│ │ │ │ ├── StSqlExeResultCountTimeline.java
│ │ │ │ ├── StSqlSyntaxErrorCountDay.java
│ │ │ │ └── StSqlSyntaxErrorCountTimeline.java
│ │ │ └── search/
│ │ │ ├── StSqlExeResultCountDaySearch.java
│ │ │ ├── StSqlExeResultCountTimelineSearch.java
│ │ │ ├── StSqlSyntaxErrorCountDaySearch.java
│ │ │ └── StSqlSyntaxErrorCountTimelineSearch.java
│ │ └── user/
│ │ ├── entity/
│ │ │ ├── UsActiveSqlEditorTab.java
│ │ │ ├── UsFavoriteDatasource.java
│ │ │ ├── UsFavoriteDb.java
│ │ │ ├── UsFavoriteGroup.java
│ │ │ ├── UsFavoriteTable.java
│ │ │ ├── UsSqlEditorTab.java
│ │ │ ├── UserInfo.java
│ │ │ └── UserInfoDTO.java
│ │ └── search/
│ │ └── SqlEditorTabSearch.java
│ ├── pom.xml
│ └── server/
│ ├── .gitignore
│ ├── .mvn/
│ │ └── wrapper/
│ │ ├── MavenWrapperDownloader.java
│ │ ├── maven-wrapper.jar
│ │ └── maven-wrapper.properties
│ ├── mvnw
│ ├── mvnw.cmd
│ ├── pom.xml
│ └── src/
│ ├── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── bin/
│ │ │ └── kong/
│ │ │ └── dms/
│ │ │ └── sever/
│ │ │ ├── SeverApplication.java
│ │ │ ├── config/
│ │ │ │ └── ShiroConfig.java
│ │ │ ├── controller/
│ │ │ │ ├── common/
│ │ │ │ │ └── BaseController.java
│ │ │ │ ├── config/
│ │ │ │ │ ├── AdminController.java
│ │ │ │ │ ├── BusGroupController.java
│ │ │ │ │ ├── BusGroupOwnersController.java
│ │ │ │ │ ├── BusGroupUsersController.java
│ │ │ │ │ ├── DatasourceController.java
│ │ │ │ │ ├── DatasourceOwnersController.java
│ │ │ │ │ ├── DatasourcePermissionMemberController.java
│ │ │ │ │ └── DatasourcePermissionSqlOptionsController.java
│ │ │ │ ├── permission/
│ │ │ │ │ └── PermissionController.java
│ │ │ │ ├── result/
│ │ │ │ │ └── SqlExeResultController.java
│ │ │ │ ├── statistics/
│ │ │ │ │ └── GeneralStatisticsController.java
│ │ │ │ ├── user/
│ │ │ │ │ ├── ActiveSqlEditorTabController.java
│ │ │ │ │ ├── LoginController.java
│ │ │ │ │ ├── RegisterController.java
│ │ │ │ │ ├── SqlEditorTabController.java
│ │ │ │ │ ├── UserFavoriteController.java
│ │ │ │ │ └── UserInfoController.java
│ │ │ │ └── utils/
│ │ │ │ ├── SqlEditorUtilsController.java
│ │ │ │ └── SqlExeController.java
│ │ │ ├── filter/
│ │ │ │ └── UrlFilter.java
│ │ │ ├── job/
│ │ │ │ ├── SqlExeResultCountForDayJob.java
│ │ │ │ ├── SqlExeResultCountForTimelineJob.java
│ │ │ │ ├── SqlExeSyntaxErrorCountForDayJob.java
│ │ │ │ └── SqlExeSyntaxErrorCountForTimelineJob.java
│ │ │ ├── runner/
│ │ │ │ └── DataSourceInitRunner.java
│ │ │ ├── service/
│ │ │ │ ├── ISqlExeService.java
│ │ │ │ ├── ISqlOptionsTypePermissionService.java
│ │ │ │ ├── IStSqlExeBizTotalService.java
│ │ │ │ └── impl/
│ │ │ │ ├── SqlExeServiceImpl.java
│ │ │ │ ├── SqlOptionsTypePermissionServiceImpl.java
│ │ │ │ └── StSqlExeBizTotalServiceImpl.java
│ │ │ └── shiro/
│ │ │ ├── MyCredentialsMatcher.java
│ │ │ ├── MyExceptionHandler.java
│ │ │ ├── MyShiroRealm.java
│ │ │ └── PaoSessionManager.java
│ │ └── resources/
│ │ ├── application-dev.yml
│ │ ├── application.yml
│ │ ├── banner.txt
│ │ ├── db/
│ │ │ ├── 1_database.sql
│ │ │ ├── 2_tables.sql
│ │ │ └── 3_init_data.sql
│ │ ├── logback-spring.xml
│ │ └── static/
│ │ ├── index.html
│ │ └── static/
│ │ ├── css/
│ │ │ ├── app.a75ebbd0f55ebb297798f6129fc54248.css
│ │ │ └── app.a75ebbd0f55ebb297798f6129fc54248.css.map
│ │ └── js/
│ │ ├── 0.adcbbedf1bc97e8c5a86.js
│ │ ├── 0.adcbbedf1bc97e8c5a86.js.map
│ │ ├── 1.17872d9c9558aa7b47a8.js
│ │ ├── 1.17872d9c9558aa7b47a8.js.map
│ │ ├── 2.f9dfc16198ee234c2eb8.js
│ │ ├── 2.f9dfc16198ee234c2eb8.js.map
│ │ ├── 3.c32696bce67f93ff9efe.js
│ │ ├── 3.c32696bce67f93ff9efe.js.map
│ │ ├── 4.cd83619a6b427be7d142.js
│ │ ├── 4.cd83619a6b427be7d142.js.map
│ │ ├── 5.a638a404fc2f3fb94a64.js
│ │ ├── 5.a638a404fc2f3fb94a64.js.map
│ │ ├── 6.8f273453121ae60f153f.js
│ │ ├── 6.8f273453121ae60f153f.js.map
│ │ ├── 7.5526581747961aef2581.js
│ │ ├── 7.5526581747961aef2581.js.map
│ │ ├── 8.3a774218aaed1aec2b73.js
│ │ ├── 8.3a774218aaed1aec2b73.js.map
│ │ ├── app.efe01cc3dc95d8a05618.js
│ │ ├── app.efe01cc3dc95d8a05618.js.map
│ │ ├── manifest.34de0bce1187b89041d6.js
│ │ ├── manifest.34de0bce1187b89041d6.js.map
│ │ ├── vendor.5404de12be6487c3db8e.js
│ │ └── vendor.5404de12be6487c3db8e.js.map
│ └── test/
│ └── java/
│ └── com/
│ └── bin/
│ └── kong/
│ └── dms/
│ └── sever/
│ └── SeverApplicationTests.java
├── kb-dms-web/
│ ├── .babelrc
│ ├── .editorconfig
│ ├── .gitignore
│ ├── .postcssrc.js
│ ├── README.md
│ ├── build/
│ │ ├── build.js
│ │ ├── check-versions.js
│ │ ├── utils.js
│ │ ├── vue-loader.conf.js
│ │ ├── webpack.base.conf.js
│ │ ├── webpack.dev.conf.js
│ │ └── webpack.prod.conf.js
│ ├── config/
│ │ ├── dev.env.js
│ │ ├── index.js
│ │ ├── prod.env.js
│ │ └── test.env.js
│ ├── index.html
│ ├── jsonlint.js
│ ├── jsonlint.l
│ ├── jsonlint.y
│ ├── package.json
│ ├── src/
│ │ ├── App.vue
│ │ ├── api/
│ │ │ ├── config/
│ │ │ │ ├── admin_api.js
│ │ │ │ ├── bus_group_api.js
│ │ │ │ ├── bus_group_owners_api.js
│ │ │ │ ├── bus_group_users_api.js
│ │ │ │ ├── datasource_api.js
│ │ │ │ ├── datasource_owners_api.js
│ │ │ │ ├── datasource_permission_member_api.js
│ │ │ │ └── datasource_permission_sql_options_api.js
│ │ │ ├── permission/
│ │ │ │ └── sql_options_api.js
│ │ │ ├── result/
│ │ │ │ └── sql_exe_result_api.js
│ │ │ ├── statistics/
│ │ │ │ └── general_statistics_api.js
│ │ │ ├── user/
│ │ │ │ ├── sql_editor_tab_api.js
│ │ │ │ ├── user_favorite_api.js
│ │ │ │ ├── user_info_api.js
│ │ │ │ ├── user_login_api.js
│ │ │ │ └── user_register_api.js
│ │ │ └── utils/
│ │ │ ├── sql_editor_utils_api.js
│ │ │ └── sql_exe_utils_api.js
│ │ ├── components/
│ │ │ ├── GenericFormUI.js
│ │ │ ├── catalog/
│ │ │ │ ├── ComponentGenericFilter.js
│ │ │ │ ├── ComponentLazyInput.js
│ │ │ │ ├── ComponentSelectorCatalog.js
│ │ │ │ ├── MixinCatalogBase.js
│ │ │ │ ├── MixinCatalogBaseNoPage.js
│ │ │ │ └── MixinExpandableCatalogBase.js
│ │ │ ├── datePicker/
│ │ │ │ ├── DatePicker.js
│ │ │ │ ├── hour_selector.js
│ │ │ │ ├── minute_selector.js
│ │ │ │ ├── style.css
│ │ │ │ └── utils.js
│ │ │ ├── echarts/
│ │ │ │ └── echarts_tools.js
│ │ │ ├── editor/
│ │ │ │ ├── Editor.js
│ │ │ │ └── componentFontsColorCard.js
│ │ │ ├── elements/
│ │ │ │ ├── PpSection.js
│ │ │ │ ├── clear_btn.js
│ │ │ │ ├── favorite-btn.js
│ │ │ │ ├── icon_btn.js
│ │ │ │ ├── icon_btn_improve.js
│ │ │ │ ├── pp_field.js
│ │ │ │ ├── pp_navigator.js
│ │ │ │ ├── pp_section.css
│ │ │ │ ├── pp_section.js
│ │ │ │ ├── pp_section_card.js
│ │ │ │ └── side_navigator.js
│ │ │ ├── modal/
│ │ │ │ └── MixinsBaseModal.js
│ │ │ ├── selector/
│ │ │ │ ├── BusGroupSelector.js
│ │ │ │ ├── ComponentDatePicker.js
│ │ │ │ ├── ComponentMultiPersonSelector.js
│ │ │ │ ├── ComponentPersonSelector.js
│ │ │ │ ├── Datasource.js
│ │ │ │ ├── DatasourceDB.js
│ │ │ │ ├── DatasourceDbSelector.js
│ │ │ │ ├── DatasourceSelector.js
│ │ │ │ ├── DatasourceTypeSelector.js
│ │ │ │ ├── MixinSelectorBase.js
│ │ │ │ ├── MySqlEditorSelector.js
│ │ │ │ ├── MysqlCharsetSelector.js
│ │ │ │ ├── PluginMultiSelector.js
│ │ │ │ ├── PluginSelectorOptionsQueryFilter.js
│ │ │ │ ├── PpPopover.js
│ │ │ │ ├── TableDataTypeInputSelector.js
│ │ │ │ ├── TableIndexTypeInputSelector.js
│ │ │ │ └── TableSelector.js
│ │ │ └── upload/
│ │ │ └── button_upload_file.js
│ │ ├── css/
│ │ │ ├── materialdesignicons.css
│ │ │ ├── overwrite.css
│ │ │ ├── style.css
│ │ │ └── theme.css
│ │ ├── layouts/
│ │ │ ├── footer-menu.vue
│ │ │ ├── header-menu.vue
│ │ │ ├── header_data.js
│ │ │ ├── index.vue
│ │ │ ├── left-menu-item.vue
│ │ │ ├── left-menu.vue
│ │ │ ├── left_menu_data.js
│ │ │ └── path_bar.vue
│ │ ├── main.js
│ │ ├── pages/
│ │ │ ├── config/
│ │ │ │ ├── admin/
│ │ │ │ │ ├── comp_admin_catalog.js
│ │ │ │ │ └── index.js
│ │ │ │ ├── datasource/
│ │ │ │ │ ├── comp_datasource_catalog.js
│ │ │ │ │ ├── comp_datasource_detail.js
│ │ │ │ │ ├── index.js
│ │ │ │ │ ├── modal_datasource_create.js
│ │ │ │ │ └── section_datasource_permission.js
│ │ │ │ ├── group_config/
│ │ │ │ │ ├── comp_group_catalog.js
│ │ │ │ │ ├── comp_group_detail.js
│ │ │ │ │ ├── comp_group_users.js
│ │ │ │ │ └── index.js
│ │ │ │ ├── layouts/
│ │ │ │ │ ├── footer-menu.vue
│ │ │ │ │ ├── header-menu.vue
│ │ │ │ │ └── index.vue
│ │ │ │ └── system_config.js
│ │ │ ├── history/
│ │ │ │ ├── comp_sql_exe_result_catalog.js
│ │ │ │ ├── comp_sql_exe_result_tool_bar.js
│ │ │ │ ├── index.js
│ │ │ │ ├── modal_sql_exe_result_detail.js
│ │ │ │ └── sql_exe_result_search_by_selector.js
│ │ │ ├── home/
│ │ │ │ ├── comp_exe_result.js
│ │ │ │ ├── comp_exe_result_catalog.js
│ │ │ │ ├── comp_field_catalog.js
│ │ │ │ ├── comp_sql_editor.js
│ │ │ │ ├── comp_sql_editor_tabs.js
│ │ │ │ ├── comp_table_catalog.js
│ │ │ │ ├── comp_table_column_type_input.js
│ │ │ │ ├── comp_table_content_catalog.js
│ │ │ │ ├── comp_table_data_menu.js
│ │ │ │ ├── comp_table_edit_catalog.js
│ │ │ │ ├── comp_table_edit_field_type_input.js
│ │ │ │ ├── comp_table_edit_row_menu.js
│ │ │ │ ├── comp_table_folder.js
│ │ │ │ ├── comp_table_folder_menu.js
│ │ │ │ ├── comp_table_index_field_type_input.js
│ │ │ │ ├── comp_table_index_row_menu.js
│ │ │ │ ├── comp_table_info.js
│ │ │ │ ├── comp_table_info_columns_catalog.js
│ │ │ │ ├── comp_table_info_ddl.js
│ │ │ │ ├── index.js
│ │ │ │ ├── modal_sql_confirm.js
│ │ │ │ ├── pp_navigator_table_info.js
│ │ │ │ ├── utils_ddl_sql_check.js
│ │ │ │ ├── utils_ddl_sql_command_builder.js
│ │ │ │ ├── utils_dml_sql_command_builder.js
│ │ │ │ └── utils_edit_ddl_sql_command_builder.js
│ │ │ ├── statistics/
│ │ │ │ ├── comp_dash_card_simple.js
│ │ │ │ └── index.js
│ │ │ └── user/
│ │ │ ├── info/
│ │ │ │ └── index.js
│ │ │ ├── login/
│ │ │ │ └── index.js
│ │ │ └── register/
│ │ │ └── index.js
│ │ ├── plugins/
│ │ │ ├── PpDialog.js
│ │ │ ├── PpNotify.css
│ │ │ ├── PpNotify.js
│ │ │ ├── axios.js
│ │ │ ├── clipboard.js
│ │ │ ├── easy-table/
│ │ │ │ └── kb-easytable.js
│ │ │ ├── quasar.js
│ │ │ ├── sql_exe_editor/
│ │ │ │ ├── editor.js
│ │ │ │ └── style.css
│ │ │ ├── theme_ctl.js
│ │ │ ├── vue-editor/
│ │ │ │ ├── vkbeautify.js
│ │ │ │ ├── vue-editor.css
│ │ │ │ ├── vue-editor.js
│ │ │ │ └── vue-eidtor-data-format.js
│ │ │ ├── vuelidate.js
│ │ │ └── vuetouch.js
│ │ ├── router/
│ │ │ ├── index.js
│ │ │ └── routes.js
│ │ ├── store/
│ │ │ ├── home/
│ │ │ │ ├── actions.js
│ │ │ │ ├── getters.js
│ │ │ │ ├── index.js
│ │ │ │ ├── mutations.js
│ │ │ │ └── state.js
│ │ │ ├── index.js
│ │ │ ├── main/
│ │ │ │ ├── actions.js
│ │ │ │ ├── getters.js
│ │ │ │ ├── index.js
│ │ │ │ ├── mutations.js
│ │ │ │ └── state.js
│ │ │ └── user/
│ │ │ ├── actions.js
│ │ │ ├── getters.js
│ │ │ ├── index.js
│ │ │ ├── mutations.js
│ │ │ └── state.js
│ │ └── utils/
│ │ ├── Optional.js
│ │ ├── clipboard.js
│ │ ├── config_dictionary.js
│ │ ├── data_format_utils.js
│ │ ├── data_utils.js
│ │ ├── date_format_utils.js
│ │ ├── edit_ddl_dictionary.js
│ │ ├── favorite_selection.js
│ │ ├── favorite_user_selection.js
│ │ ├── local_storage_utils.js
│ │ ├── mysql_charset_dictionary.js
│ │ ├── regExp.js
│ │ ├── render_field_helper.js
│ │ ├── request_dictionary.js
│ │ ├── result_dictionary.js
│ │ ├── sql_editor_dictionary.js
│ │ ├── user_dictionary.js
│ │ └── utils_mysql_keywords_check.js
│ ├── static/
│ │ └── .gitkeep
│ └── test/
│ └── e2e/
│ ├── custom-assertions/
│ │ └── elementCount.js
│ ├── nightwatch.conf.js
│ ├── runner.js
│ └── specs/
│ └── test.js
└── kb-dms.iml
================================================
FILE CONTENTS
================================================
================================================
FILE: .idea/compiler.xml
================================================
================================================
FILE: .idea/encodings.xml
================================================
================================================
FILE: .idea/libraries/Maven__ch_qos_logback_logback_classic_1_1_11.xml
================================================
================================================
FILE: .idea/libraries/Maven__ch_qos_logback_logback_core_1_1_11.xml
================================================
================================================
FILE: .idea/libraries/Maven__com_alibaba_druid_1_1_10.xml
================================================
================================================
FILE: .idea/libraries/Maven__com_alibaba_druid_spring_boot_starter_1_1_10.xml
================================================
================================================
FILE: .idea/libraries/Maven__com_alibaba_fastjson_1_2_46.xml
================================================
================================================
FILE: .idea/libraries/Maven__com_fasterxml_classmate_1_3_4.xml
================================================
================================================
FILE: .idea/libraries/Maven__com_fasterxml_jackson_core_jackson_annotations_2_8_0.xml
================================================
================================================
FILE: .idea/libraries/Maven__com_fasterxml_jackson_core_jackson_core_2_8_10.xml
================================================
================================================
FILE: .idea/libraries/Maven__com_fasterxml_jackson_core_jackson_databind_2_8_10.xml
================================================
================================================
FILE: .idea/libraries/Maven__com_github_jsqlparser_jsqlparser_1_4.xml
================================================
================================================
FILE: .idea/libraries/Maven__com_google_protobuf_protobuf_java_2_6_0.xml
================================================
================================================
FILE: .idea/libraries/Maven__com_jayway_jsonpath_json_path_2_2_0.xml
================================================
================================================
FILE: .idea/libraries/Maven__com_microsoft_sqlserver_sqljdbc4_4_1.xml
================================================
================================================
FILE: .idea/libraries/Maven__com_vaadin_external_google_android_json_0_0_20131108_vaadin1.xml
================================================
================================================
FILE: .idea/libraries/Maven__commons_beanutils_commons_beanutils_1_9_3.xml
================================================
================================================
FILE: .idea/libraries/Maven__commons_codec_commons_codec_1_10.xml
================================================
================================================
FILE: .idea/libraries/Maven__commons_collections_commons_collections_3_2_2.xml
================================================
================================================
FILE: .idea/libraries/Maven__javax_validation_validation_api_1_1_0_Final.xml
================================================
================================================
FILE: .idea/libraries/Maven__junit_junit_4_12.xml
================================================
================================================
FILE: .idea/libraries/Maven__mysql_mysql_connector_java_8_0_11.xml
================================================
================================================
FILE: .idea/libraries/Maven__net_minidev_accessors_smart_1_1.xml
================================================
================================================
FILE: .idea/libraries/Maven__net_minidev_json_smart_2_2_1.xml
================================================
================================================
FILE: .idea/libraries/Maven__net_sf_ehcache_ehcache_core_2_5_3.xml
================================================
================================================
FILE: .idea/libraries/Maven__org_apache_commons_commons_lang3_3_8_1.xml
================================================
================================================
FILE: .idea/libraries/Maven__org_apache_httpcomponents_httpclient_4_5_5.xml
================================================
================================================
FILE: .idea/libraries/Maven__org_apache_httpcomponents_httpclient_4_5_8.xml
================================================
================================================
FILE: .idea/libraries/Maven__org_apache_httpcomponents_httpcore_4_4_9.xml
================================================
================================================
FILE: .idea/libraries/Maven__org_apache_shiro_shiro_core_1_3_2.xml
================================================
================================================
FILE: .idea/libraries/Maven__org_apache_shiro_shiro_ehcache_1_3_2.xml
================================================
================================================
FILE: .idea/libraries/Maven__org_apache_shiro_shiro_spring_1_3_2.xml
================================================
================================================
FILE: .idea/libraries/Maven__org_apache_shiro_shiro_web_1_3_2.xml
================================================
================================================
FILE: .idea/libraries/Maven__org_apache_tomcat_embed_tomcat_embed_core_8_5_27.xml
================================================
================================================
FILE: .idea/libraries/Maven__org_apache_tomcat_embed_tomcat_embed_el_8_5_27.xml
================================================
================================================
FILE: .idea/libraries/Maven__org_apache_tomcat_embed_tomcat_embed_websocket_8_5_27.xml
================================================
================================================
FILE: .idea/libraries/Maven__org_apache_tomcat_tomcat_annotations_api_8_5_27.xml
================================================
================================================
FILE: .idea/libraries/Maven__org_apache_tomcat_tomcat_jdbc_8_5_27.xml
================================================
================================================
FILE: .idea/libraries/Maven__org_apache_tomcat_tomcat_juli_8_5_27.xml
================================================
================================================
FILE: .idea/libraries/Maven__org_aspectj_aspectjweaver_1_8_13.xml
================================================
================================================
FILE: .idea/libraries/Maven__org_aspectj_aspectjweaver_1_8_3.xml
================================================
================================================
FILE: .idea/libraries/Maven__org_assertj_assertj_core_2_6_0.xml
================================================
================================================
FILE: .idea/libraries/Maven__org_hamcrest_hamcrest_core_1_3.xml
================================================
================================================
FILE: .idea/libraries/Maven__org_hamcrest_hamcrest_library_1_3.xml
================================================
================================================
FILE: .idea/libraries/Maven__org_hibernate_hibernate_validator_5_3_6_Final.xml
================================================
================================================
FILE: .idea/libraries/Maven__org_jboss_logging_jboss_logging_3_3_1_Final.xml
================================================
================================================
FILE: .idea/libraries/Maven__org_mockito_mockito_core_1_10_19.xml
================================================
================================================
FILE: .idea/libraries/Maven__org_mybatis_mybatis_3_4_5.xml
================================================
================================================
FILE: .idea/libraries/Maven__org_mybatis_mybatis_spring_1_3_1.xml
================================================
================================================
FILE: .idea/libraries/Maven__org_mybatis_spring_boot_mybatis_spring_boot_autoconfigure_1_3_1.xml
================================================
================================================
FILE: .idea/libraries/Maven__org_mybatis_spring_boot_mybatis_spring_boot_starter_1_3_1.xml
================================================
================================================
FILE: .idea/libraries/Maven__org_objenesis_objenesis_2_1.xml
================================================
================================================
FILE: .idea/libraries/Maven__org_ow2_asm_asm_5_0_3.xml
================================================
================================================
FILE: .idea/libraries/Maven__org_projectlombok_lombok_1_16_20.xml
================================================
================================================
FILE: .idea/libraries/Maven__org_skyscreamer_jsonassert_1_4_0.xml
================================================
================================================
FILE: .idea/libraries/Maven__org_slf4j_jcl_over_slf4j_1_7_25.xml
================================================
================================================
FILE: .idea/libraries/Maven__org_slf4j_jul_to_slf4j_1_7_25.xml
================================================
================================================
FILE: .idea/libraries/Maven__org_slf4j_log4j_over_slf4j_1_7_25.xml
================================================
================================================
FILE: .idea/libraries/Maven__org_slf4j_slf4j_api_1_7_25.xml
================================================
================================================
FILE: .idea/libraries/Maven__org_springframework_boot_spring_boot_1_5_10_RELEASE.xml
================================================
================================================
FILE: .idea/libraries/Maven__org_springframework_boot_spring_boot_1_5_19_RELEASE.xml
================================================
================================================
FILE: .idea/libraries/Maven__org_springframework_boot_spring_boot_autoconfigure_1_5_10_RELEASE.xml
================================================
================================================
FILE: .idea/libraries/Maven__org_springframework_boot_spring_boot_starter_1_5_10_RELEASE.xml
================================================
================================================
FILE: .idea/libraries/Maven__org_springframework_boot_spring_boot_starter_jdbc_1_5_10_RELEASE.xml
================================================
================================================
FILE: .idea/libraries/Maven__org_springframework_boot_spring_boot_starter_logging_1_5_10_RELEASE.xml
================================================
================================================
FILE: .idea/libraries/Maven__org_springframework_boot_spring_boot_starter_test_1_5_10_RELEASE.xml
================================================
================================================
FILE: .idea/libraries/Maven__org_springframework_boot_spring_boot_starter_tomcat_1_5_10_RELEASE.xml
================================================
================================================
FILE: .idea/libraries/Maven__org_springframework_boot_spring_boot_starter_web_1_5_10_RELEASE.xml
================================================
================================================
FILE: .idea/libraries/Maven__org_springframework_boot_spring_boot_test_1_5_10_RELEASE.xml
================================================
================================================
FILE: .idea/libraries/Maven__org_springframework_boot_spring_boot_test_autoconfigure_1_5_10_RELEASE.xml
================================================
================================================
FILE: .idea/libraries/Maven__org_springframework_spring_aop_4_3_14_RELEASE.xml
================================================
================================================
FILE: .idea/libraries/Maven__org_springframework_spring_beans_4_3_14_RELEASE.xml
================================================
================================================
FILE: .idea/libraries/Maven__org_springframework_spring_context_4_3_14_RELEASE.xml
================================================
================================================
FILE: .idea/libraries/Maven__org_springframework_spring_core_4_3_14_RELEASE.xml
================================================
================================================
FILE: .idea/libraries/Maven__org_springframework_spring_expression_4_3_14_RELEASE.xml
================================================
================================================
FILE: .idea/libraries/Maven__org_springframework_spring_jdbc_5_1_9_RELEASE.xml
================================================
================================================
FILE: .idea/libraries/Maven__org_springframework_spring_test_4_3_14_RELEASE.xml
================================================
================================================
FILE: .idea/libraries/Maven__org_springframework_spring_tx_4_3_14_RELEASE.xml
================================================
================================================
FILE: .idea/libraries/Maven__org_springframework_spring_web_4_3_14_RELEASE.xml
================================================
================================================
FILE: .idea/libraries/Maven__org_springframework_spring_webmvc_4_3_14_RELEASE.xml
================================================
================================================
FILE: .idea/libraries/Maven__org_yaml_snakeyaml_1_17.xml
================================================
================================================
FILE: .idea/misc.xml
================================================
================================================
FILE: .idea/modules.xml
================================================
================================================
FILE: .idea/uiDesigner.xml
================================================
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
================================================
FILE: .idea/vcs.xml
================================================
================================================
FILE: .idea/workspace.xml
================================================
nick_name
login_name
status
setname
getaccount
setaccount
Us
getname
ajax_search_user
like
huaju
external
/request/by/server/_map
by/server
ppdai.qa.tianshu.
ddl_save_check
home_ddl_dictionary
utils_home_ddl_sql_command_builder
audit
DMS
数据库在线管理平台
us_register
user_gre
user_regi
UNIQUE
PRIMARY
tianshu
kongbin
CREATE
ppd
DMS
数据库在线管理平台
bin.kong.dms
name
account
navigate_to_csdn
setName
getAccount
getName
dms
home
edit
kb-dms
bin.kong.dms.
$PROJECT_DIR$/kb-dms-web/src/api
$PROJECT_DIR$/kb-dms-web/src/components/selector
1576741015663
1576741015663
Spring
1.8
contract
1.8
Maven: ch.qos.logback:logback-classic:1.1.11
================================================
FILE: README.md
================================================
# WEB数据库管理平台简介
给大家推荐一个自研的开源WEB版数据库管理工具:**kb-dms**
开源项目地址: [kb-dms](https://github.com/qabin/kb-dms) ,如果能帮到你,请帮忙点个星。谢谢~
本工具主要有以下特点:
- **权限控制**:
避免数据源权限不可控的风险,避免数据、库表被无故修改。
- **误操作拦截**:
SQL语句不小心写错,不用担心,该工具将阻断相应SQL的执行,保障数据的安全。
- **记录可追踪**:
所有的SQL执行记录都会被该工具记录,方便数据的恢复和定责。
- **操作体验**:
该工具的操作体验与客户端基本无异,而且还开发了很多新功能,方便大家使用。
- **建表规范**
平台推出了很多建表及索引相关的规范,并且从前端图形化页面上实现了相应误操作的拦截,帮助用户更好的规范库表。
**kb-dms** 是一个WEB版的数据库管理平台,此平台支持权限可控、执行记录追踪、数据源配置管理、在线库表查询+编辑+新增等操作。
## 使用教程
[WEB数据库管理平台kb-dms:功能简介【一】](https://blog.csdn.net/a787373009/article/details/104301721)
[WEB数据库管理平台kb-dms:本地安装与启动教程【二】](https://blog.csdn.net/a787373009/article/details/104306595)
[WEB数据库管理平台kb-dms:注册与登录【三】
](https://blog.csdn.net/a787373009/article/details/104306679)
[WEB数据库管理平台kb-dms:团队管理【四】
](https://blog.csdn.net/a787373009/article/details/104306729)
[WEB数据库管理平台kb-dms:数据源配置【五】
](https://blog.csdn.net/a787373009/article/details/104307094)
[WEB数据库管理平台kb-dms:数据库查询+更新+删除操作【六】
](https://blog.csdn.net/a787373009/article/details/104307459)
[WEB数据库管理平台kb-dms:创建表+编辑表+编辑索引【七】
](https://blog.csdn.net/a787373009/article/details/104308275)
[WEB数据库管理平台kb-dms:数据源权限配置【八】
](https://blog.csdn.net/a787373009/article/details/104309385)
[WEB数据库管理平台kb-dms:表的右键操作介绍【九】
](https://blog.csdn.net/a787373009/article/details/104309811)
[WEB数据库管理平台kb-dms:执行记录查询【十】
](https://blog.csdn.net/a787373009/article/details/104309958)
[WEB数据库管理平台kb-dms:误操作拦截+越权操作拦截【十一】
](https://blog.csdn.net/a787373009/article/details/104310223)
[WEB数据库管理平台kb-dms:数据统计【十二】
](https://blog.csdn.net/a787373009/article/details/104310479)
## 功能简介
##### 数据查询更新

##### 库表操作

##### 权限控制

================================================
FILE: kb-dms-backend/.gitignore
================================================
HELP.md
target/
!.mvn/wrapper/maven-wrapper.jar
!**/src/main/**
!**/src/test/**
### STS ###
.apt_generated
.classpath
.factorypath
.project
.settings
.springBeans
.sts4-cache
### IntelliJ IDEA ###
.idea
*.iws
*.iml
*.ipr
### NetBeans ###
/nbproject/private/
/nbbuild/
/dist/
/nbdist/
/.nb-gradle/
build/
### VS Code ###
.vscode/
================================================
FILE: kb-dms-backend/contract/pom.xml
================================================
dms-backend
com.bin.kong.dms
0.0.1-SNAPSHOT
../pom.xml
4.0.0
com.bin.kong.dms
contract
0.0.1-SNAPSHOT
contract
jar
================================================
FILE: kb-dms-backend/contract/src/main/java/com/bin/kong/dms/contract/common/BaseResponse.java
================================================
package com.bin.kong.dms.contract.common;
import lombok.Getter;
import lombok.Setter;
import org.springframework.util.StringUtils;
@Getter
@Setter
public class BaseResponse {
private int status;
private String message;
public void addMessage(String msg) {
if (StringUtils.hasText(msg)) {
if (StringUtils.hasText(this.message)) {
this.message += ";" + msg;
} else {
this.message = msg;
}
}
}
}
================================================
FILE: kb-dms-backend/contract/src/main/java/com/bin/kong/dms/contract/common/BaseSearch.java
================================================
package com.bin.kong.dms.contract.common;
import lombok.*;
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
public class BaseSearch {
private String kw;
}
================================================
FILE: kb-dms-backend/contract/src/main/java/com/bin/kong/dms/contract/common/GenericResponse.java
================================================
package com.bin.kong.dms.contract.common;
import lombok.Getter;
import lombok.Setter;
@Setter
@Getter
public class GenericResponse extends BaseResponse implements ResponseState {
private T data;
@Override
public boolean isSuccess() {
return getStatus() == 1;
}
}
================================================
FILE: kb-dms-backend/contract/src/main/java/com/bin/kong/dms/contract/common/PaginationResponse.java
================================================
package com.bin.kong.dms.contract.common;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
public class PaginationResponse {
private T data;
private Integer count;
}
================================================
FILE: kb-dms-backend/contract/src/main/java/com/bin/kong/dms/contract/common/ResponseState.java
================================================
package com.bin.kong.dms.contract.common;
public interface ResponseState {
boolean isSuccess();
}
================================================
FILE: kb-dms-backend/contract/src/main/java/com/bin/kong/dms/contract/common/SearchListAndCountDO.java
================================================
package com.bin.kong.dms.contract.common;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
public class SearchListAndCountDO {
private Integer count;
private T data;
}
================================================
FILE: kb-dms-backend/contract/src/main/java/com/bin/kong/dms/contract/config/response/DatasourceForSearchResponse.java
================================================
package com.bin.kong.dms.contract.config.response;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
public class DatasourceForSearchResponse {
private Integer id;
private String name;
private String description;
private Integer group_id;
private String group_name;
private Integer type;
private String db;
private Integer status;
@Builder.Default
private Boolean group_favorite = false;
@Builder.Default
private Boolean datasource_favorite = false;
@Builder.Default
private Boolean is_my_group=false;
}
================================================
FILE: kb-dms-backend/contract/src/main/java/com/bin/kong/dms/contract/config/response/DatasourcePermissionMemberResponse.java
================================================
package com.bin.kong.dms.contract.config.response;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.List;
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
public class DatasourcePermissionMemberResponse {
private String account;
private String name;
private Integer datasource_id;
private List auth_list;
}
================================================
FILE: kb-dms-backend/contract/src/main/java/com/bin/kong/dms/contract/config/response/DbResponse.java
================================================
package com.bin.kong.dms.contract.config.response;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
public class DbResponse {
private String name;
@Builder.Default
private Boolean favorite = false;
}
================================================
FILE: kb-dms-backend/contract/src/main/java/com/bin/kong/dms/contract/config/response/TableResponse.java
================================================
package com.bin.kong.dms.contract.config.response;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
public class TableResponse {
private String name;
@Builder.Default
private Boolean favorite = false;
}
================================================
FILE: kb-dms-backend/contract/src/main/java/com/bin/kong/dms/contract/permission/response/SqlOptionsResponse.java
================================================
package com.bin.kong.dms.contract.permission.response;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
public class SqlOptionsResponse {
private String name;
private String desc;
private Integer type;
}
================================================
FILE: kb-dms-backend/contract/src/main/java/com/bin/kong/dms/contract/statistics/response/GeneralBizCountResponse.java
================================================
package com.bin.kong.dms.contract.statistics.response;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
public class GeneralBizCountResponse {
private Integer bus_count;
private Integer datasource_count;
private Integer sql_exe_result_total;
private Integer sql_syntax_no_permission_total;
private Integer sql_syntax_other_error_total;
}
================================================
FILE: kb-dms-backend/contract/src/main/java/com/bin/kong/dms/contract/statistics/response/GeneralMonthTimelineResponse.java
================================================
package com.bin.kong.dms.contract.statistics.response;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
public class GeneralMonthTimelineResponse {
private String date;
private Integer sql_exe_result_total;
private Integer sql_exe_result_success_total;
private Integer sql_exe_result_running_total;
private Integer sql_exe_result_fail_total;
private Integer sql_syntax_no_permission_total;
private Integer sql_syntax_no_limit_total;
private Integer sql_syntax_no_where_total;
private Integer sql_syntax_error_total;
}
================================================
FILE: kb-dms-backend/contract/src/main/java/com/bin/kong/dms/contract/user/entity/RequestUserInfo.java
================================================
package com.bin.kong.dms.contract.user.entity;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
public class RequestUserInfo {
private String name;
private String account;
}
================================================
FILE: kb-dms-backend/contract/src/main/java/com/bin/kong/dms/contract/user/request/LoginRequest.java
================================================
package com.bin.kong.dms.contract.user.request;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
public class LoginRequest {
private String account;
private String login_pwd;
}
================================================
FILE: kb-dms-backend/contract/src/main/java/com/bin/kong/dms/contract/user/request/RegisterRequest.java
================================================
package com.bin.kong.dms.contract.user.request;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class RegisterRequest {
private String account;
private String login_pwd;
private String name;
}
================================================
FILE: kb-dms-backend/contract/src/main/java/com/bin/kong/dms/contract/user/request/SqlEditorShareRequest.java
================================================
package com.bin.kong.dms.contract.user.request;
import com.bin.kong.dms.contract.user.entity.RequestUserInfo;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.List;
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
public class SqlEditorShareRequest {
private List users;
}
================================================
FILE: kb-dms-backend/contract/src/main/java/com/bin/kong/dms/contract/user/request/UpdateUserInfoRequest.java
================================================
package com.bin.kong.dms.contract.user.request;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class UpdateUserInfoRequest {
private String name;
private Integer port;
private String new_pwd;
private String old_pwd;
}
================================================
FILE: kb-dms-backend/contract/src/main/java/com/bin/kong/dms/contract/utils/SqlExeRequest.java
================================================
package com.bin.kong.dms.contract.utils;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
public class SqlExeRequest {
private String sql;
}
================================================
FILE: kb-dms-backend/core/pom.xml
================================================
dms-backend
com.bin.kong.dms
0.0.1-SNAPSHOT
../pom.xml
4.0.0
com.bin.kong.dms
core
0.0.1-SNAPSHOT
org.springframework.boot
spring-boot
1.5.19.RELEASE
org.aspectj
aspectjweaver
1.8.3
org.apache.httpcomponents
httpclient
4.5.8
core
jar
================================================
FILE: kb-dms-backend/core/src/main/java/com/bin/kong/dms/core/config/ThreadPoolConfig.java
================================================
package com.bin.kong.dms.core.config;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.core.task.AsyncTaskExecutor;
import org.springframework.scheduling.annotation.EnableAsync;
import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor;
import java.util.concurrent.ThreadPoolExecutor;
@Configuration
@EnableAsync
public class ThreadPoolConfig {
private int corePoolSize = 10;//线程池维护线程的最少数量
private int maxPoolSize = 50;//线程池维护线程的最大数量
private int queueCapacity = 20; //缓存队列
private int keepAlive = 120;//允许的空闲时间
@Bean
public AsyncTaskExecutor threadExecutor() {
ThreadPoolTaskExecutor executor = new ThreadPoolTaskExecutor();
executor.setCorePoolSize(corePoolSize);
executor.setMaxPoolSize(maxPoolSize);
executor.setQueueCapacity(queueCapacity);
executor.setThreadNamePrefix("threadExecutor-");
executor.setRejectedExecutionHandler(new ThreadPoolExecutor.CallerRunsPolicy()); //对拒绝task的处理策略
executor.setKeepAliveSeconds(keepAlive);
executor.initialize();
return executor;
}
}
================================================
FILE: kb-dms-backend/core/src/main/java/com/bin/kong/dms/core/constants/CookieConstants.java
================================================
package com.bin.kong.dms.core.constants;
public class CookieConstants {
public final static String KB_MDS_SESSIONID = "KB-dms-SESSIONID";
}
================================================
FILE: kb-dms-backend/core/src/main/java/com/bin/kong/dms/core/constants/ResponseConstants.java
================================================
package com.bin.kong.dms.core.constants;
public class ResponseConstants {
public final static Integer SUCCESS_CODE = 1;
public final static Integer FAIL_CODE = 0;
//未登录
public final static Integer STATUS_UNLOGIN = 1001;
//Token异常
public final static Integer STATUS_TOKEN_ERROR = 1002;
//无权限
public final static Integer STATUS_NO_AUTH = 1003;
//用户名密码错误
public final static Integer STATUS_WRONG_PWD = 1004;
public final static Integer STATUS_OTHER = 1005;
}
================================================
FILE: kb-dms-backend/core/src/main/java/com/bin/kong/dms/core/constants/UserInfoConstants.java
================================================
package com.bin.kong.dms.core.constants;
public class UserInfoConstants {
public final static String CURRENT_USER_NAME="CURRENT_USER_NAME";
public final static String CURRENT_USER="CURRENT_USER";
}
================================================
FILE: kb-dms-backend/core/src/main/java/com/bin/kong/dms/core/dynamicdatasource/DynamicDataExeUtils.java
================================================
package com.bin.kong.dms.core.dynamicdatasource;
import com.bin.kong.dms.core.entity.SqlExeResult;
import com.bin.kong.dms.core.enums.DatasourceTypeEnum;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.util.CollectionUtils;
import java.util.*;
public class DynamicDataExeUtils {
/**
* 执行DQL queryForList
*
* @param datasource
* @param sql
* @return
*/
private static SqlExeResult>> queryForList(String datasource, String sql) {
SqlExeResult>> result = SqlExeResult.>>builder().sql(sql).start_time(new Date()).build();
JdbcTemplate jdbcTemplate = DynamicDataSourceContextHolder.getJdbcTemplate(datasource);
try {
List