{"id":18365323,"url":"https://github.com/ballcat-projects/ballcat-codegen","last_synced_at":"2025-10-12T03:34:41.906Z","repository":{"id":38317234,"uuid":"353001198","full_name":"ballcat-projects/ballcat-codegen","owner":"ballcat-projects","description":"🛠 一款支持在线修改模板的代码生成器","archived":false,"fork":false,"pushed_at":"2025-03-29T04:14:47.000Z","size":6904,"stargazers_count":73,"open_issues_count":2,"forks_count":51,"subscribers_count":8,"default_branch":"master","last_synced_at":"2025-03-29T05:20:19.819Z","etag":null,"topics":["code-generator","spring-boot","typescript","vue3"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ballcat-projects.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-03-30T12:56:29.000Z","updated_at":"2025-03-29T04:14:51.000Z","dependencies_parsed_at":"2023-10-11T14:03:04.314Z","dependency_job_id":"38dd7fe2-8c98-43c1-a2aa-158d9b85e973","html_url":"https://github.com/ballcat-projects/ballcat-codegen","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ballcat-projects%2Fballcat-codegen","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ballcat-projects%2Fballcat-codegen/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ballcat-projects%2Fballcat-codegen/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ballcat-projects%2Fballcat-codegen/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ballcat-projects","download_url":"https://codeload.github.com/ballcat-projects/ballcat-codegen/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247767234,"owners_count":20992547,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["code-generator","spring-boot","typescript","vue3"],"created_at":"2024-11-05T23:13:10.569Z","updated_at":"2025-10-12T03:34:36.853Z","avatar_url":"https://github.com/ballcat-projects.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# BallCat-Codegen\n\n执行启动脚本后，运行启动类\n\n```java\ncom/hccake/ballcat/codegen/GeneratorApplication.java\n```\n\n- 启动地址：http://localhost:7777/\n- 预览地址：http://codegen.ballcat.cn/\n- 文档地址：http://www.ballcat.cn/codegen/\n\n## SQL 脚本的执行\n\n从 v1.1.0 版本开始，sql 表结构以及部分基本数据交由 flyway 管理。\n\n用户只需修改 ballcat-codegen-backend/src/main/resources/application-dev.yml 中的数据源配置，项目启动后即可自动生成数据库和表结构。\n\n\u003e 注意：自动生成数据库依赖 jdbc 的连接参数：createDatabaseIfNotExist=true\n\u003e 建议使用一个全新的数据库，如果使用的数据库中已经存在其他表，则需要添加配置 spring.flyway.baseline-version=0 再进行启动\n\n## 模板管理\n\n模板组的 sql 不在 flyway 的管理之下，用户自己按需构建模板组。\n**欢迎大家 pr 来共享自己创建的模板组**\n\n目前在根目录下的 `template` 文件夹下，提供了一些默认模板的 SQL 文件，用户按需选择对应的 SQL 进行初始化：\n\n### Ballcat Admin 单体项目骨架 (ballcat-admin-boot)\n一键生成基于 Ballcat Admin 的单体后台管理应用\n\n### Ballcat 业务增删改查模板 (ballcat-bussines-crud)\n快速生成基于 ballcat framework 的增删改查的基础代码，包含前后端\n\n\n## 如何在不启动前端项目的情况下使用\n\n**必须先在父工程 ballcat-codegen 处执行 `mvn clean package` 打包命令**  \n\n此命令会将前端进行 build，并将打包好的代码 copy 入后端项目的 resource 资源下。\n\n第一次打包时会下载 node 以及前端项目依赖，耗时较久，可以先 cd 进 ballcat-codegen-frontend 前端项目处自行执行 npm install，切换使用淘宝镜像源以加快依赖下载速度。\n\n\n\n##### Docker打包\n\n采用 dockerfile-maven-plugin 插件生成 docker 镜像，所在路径 ballcat-codegen-backend/pom.xml\n\n```\n\u003cplugin\u003e\n  \u003cgroupId\u003ecom.spotify\u003c/groupId\u003e\n  \u003cartifactId\u003edockerfile-maven-plugin\u003c/artifactId\u003e\n  \u003cexecutions\u003e\n    \u003cexecution\u003e\n      \u003cid\u003edefault\u003c/id\u003e\n      \u003cgoals\u003e\n        \u003c!-- 如果package时不想用docker打包,就注释掉这个goal --\u003e\n        \u003cgoal\u003ebuild\u003c/goal\u003e\n      \u003c/goals\u003e\n    \u003c/execution\u003e\n  \u003c/executions\u003e\n  \u003cconfiguration\u003e\n    \u003crepository\u003eballcat-codegen\u003c/repository\u003e\n    \u003ctag\u003elatest\u003c/tag\u003e\n    \u003cbuildArgs\u003e\n      \u003cJAR_FILE\u003e${project.build.finalName}.jar\u003c/JAR_FILE\u003e\n    \u003c/buildArgs\u003e\n  \u003c/configuration\u003e\n\u003c/plugin\u003e\n```\n\n执行 `mvn clean package` 打包命令时会根据 ballcat-codegen-backend 根目录下的 Dockerfile 自动构建 docker 镜像。\n\n\n\n##### docker-compose部署\n\n打开 ballcat-codegen-backend 根目录下的 docker-compose.yml文件，修改环境变量配置你的数据库连接信息\n\n```\nversion: \"3.9\"\n\nservices:\n  codegen:\n    image: ballcat-codegen:latest\n    container_name: ballcat-codegen\n    restart: always\n    ports:\n      - \"7777:7777\"\n    volumes:\n      - \"./logs:/workspace/logs\"\n    environment:\n      - TZ=Asia/Shanghai\n      - LANG=en_US.UTF-8\n      - JAVA_OPTS=-Xmx256m -Xms256m -Xmn256m -Xss1m\n      - DB_HOST=192.168.1.66\n      - DB_PORT=3306\n      - DB_NAME=ballcat_codegen\n      - DB_USER=root\n      - DB_PASSWORD=root\n\n```\n\n终端切换到 docker-compose.yml 所在目录，执行 `docker-compose up -d` 一键部署。\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fballcat-projects%2Fballcat-codegen","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fballcat-projects%2Fballcat-codegen","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fballcat-projects%2Fballcat-codegen/lists"}