# OneTable AI **Repository Path**: wb04307201/one-table-ai ## Basic Information - **Project Name**: OneTable AI - **Description**: 这是一个基于Spring Boot和AI技术的一键生成单表维护界面的应用。用户只需描述业务需求,系统会自动分析需求并生成相应的Java实体类和Web界面。 - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-08-20 - **Last Updated**: 2025-09-10 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 一键生成单表维护界面AI项目 这是一个基于Spring Boot和AI技术的一键生成单表维护界面的应用。用户只需描述业务需求,系统会自动分析需求并生成相应的Java实体类和Web界面。 ![img_7.gif](img_7.gif) ## 功能特点 - **AI驱动**: 利用大语言模型根据自然语言描述生成Java实体类代码 - **自动化界面生成**: 根据生成的实体类自动构建完整的CRUD操作界面 - **注解规范**: 生成的代码遵循特定的注解规范,包括@Table、@Key、@Column等 - **多种字段类型支持**: 支持文本、数字、日期等多种字段类型 - **灵活配置**: 支持下拉选择、复选框等多种输入控件 - **搜索功能**: 自动生成基于字段的搜索功能 - **响应式界面**: 提供现代化的聊天式交互界面 ## 技术栈 - Spring Boot - Spring AI (Ollama集成) - FreeMarker模板引擎 - H2数据库 - Lombok - [Entity SQL - Java ORM 库](https://gitee.com/wb04307201/entity-sql) - [Dynamic Loader Utility - 动态加载器工具包](https://gitee.com/wb04307201/dynamic-loader-utility) ## 快速开始 ### 环境要求 - Java 17+ - Maven 3.6+ - Ollama服务 (需要运行qwen3模型) ### 安装步骤 1. 启动Ollama服务并拉取qwen3模型: ```bash ollama run qwen3 ``` 2. 克隆项目并编译: ```bash git clone <项目地址> cd one-table-ai mvn clean install ``` 3. 运行应用: ```bash java -jar target/one-table-ai.jar ``` 4. 访问应用: http://localhost:8080/chat ## 使用说明 1. 打开聊天界面 (http://localhost:8080/chat) 2. 描述您的业务需求,例如: ``` 我需要一个学生基本信息管理功能,包含用姓名、性别(男/女)、生日、年龄、年级(一到六)、班级(一到三) ``` 3. 系统会自动生成实体类代码和Web界面 4. 点击返回的链接即可访问生成的维护界面 ## 代码生成规范 生成的实体类遵循以下注解规范: ### @Table 注解 - 用于类级别,指定数据库表名 - 包含init属性用于控制是否自动初始化表结构 ### @Key 注解 - 用于字段级别,标识主键字段 - 默认使用UUID生成策略 ### @Column 注解 - 用于字段级别,映射数据库列 - 支持多种字段类型和配置选项 ### 其他注解 - @Item: 定义枚举或下拉选项 - @View: 配置列表视图显示行为 - @Edit: 配置编辑表单行为 - @Search: 配置搜索功能行为 ## 配置文件 主要配置项在 [application.yml](file://D:\developer\IdeaProjects\one-table-ai\target\classes\application.yml) 中: - Spring AI Ollama配置 - FreeMarker模板配置 - H2数据库配置 ## 项目结构 ``` src/main/java/cn/wubo/one/table/ai ├── config/ # 配置类 ├── service/ # 业务逻辑层 │ └── impl/ # 服务实现 ├── OneTableAiApplication.java # 启动类 ├── OneTableAiController.java # REST控制器 └── PageController.java # 页面控制器 ``` ## API接口 - `GET /chat` - 聊天界面 - `GET /oneTableAi/buildWeb?requirement={描述}` - 根据需求生成Web界面 ## 注意事项 1. 需要预先启动Ollama服务并下载qwen3模型 2. 生成的代码会自动编译并加载到运行时 3. 数据存储使用H2内存数据库,重启后数据会丢失 4. 生成的界面链接为临时链接,仅在当前会话有效 ## 扩展性 该项目具有良好的扩展性,可以: - 更换不同的AI模型 - 自定义注解规范 - 扩展支持更多的字段类型 - 集成其他数据库系统 ![img.png](img.png) ![img_1.png](img_1.png) ![img_2.png](img_2.png) ![img_3.png](img_3.png) ![img_4.png](img_4.png) ![img_5.png](img_5.png) ![img_6.png](img_6.png)