JeecgBoot企业级AI低代码平台全面解析
JeecgBoot作为一款革命性的企业级AI低代码开发平台,代表了当前Java企业应用开发领域的技术前沿。该项目由北京国炬软件团队精心打造,基于Spring Boot技术栈构建,集成了AI应用平台功能,旨在为开发者提供从传统业务系统到智能化AI应用的全方位解决方案。平台采用前后端分离架构,后端基于Spring Boot 2.7.18,前端采用Vue3.0 + TypeScript + Vite6 + Ant Design Vue4等最新技术栈,确保了技术先进性和长期可维护性。其技术愿景可以概括为"AI生成->OnlineCoding->代码生成->手工MERGE"的开发模式,巧妙地将AI智能生成、在线配置开发、自动化代码生成和人工精细化调整有机结合,既保证了开发效率,又确保了代码质量和灵活性。
JeecgBoot项目概述与核心特性
JeecgBoot作为一款革命性的企业级AI低代码开发平台,代表了当前Java企业应用开发领域的技术前沿。该项目由北京国炬软件团队精心打造,基于Spring Boot技术栈构建,集成了AI应用平台功能,旨在为开发者提供从传统业务系统到智能化AI应用的全方位解决方案。
项目定位与技术愿景
JeecgBoot定位于"企业级AI低代码平台",其核心理念是通过AI技术与低代码开发模式的深度融合,实现开发效率的指数级提升。平台采用前后端分离架构,后端基于Spring Boot 2.7.18,前端采用Vue3.0 + TypeScript + Vite6 + Ant Design Vue4等最新技术栈,确保了技术先进性和长期可维护性。
平台的技术愿景可以概括为"AI生成->OnlineCoding->代码生成->手工MERGE"的开发模式,这一模式巧妙地将AI智能生成、在线配置开发、自动化代码生成和人工精细化调整有机结合,既保证了开发效率,又确保了代码质量和灵活性。
核心架构特性
JeecgBoot采用模块化架构设计,主要包含以下核心模块:
技术栈深度解析
后端技术生态
JeecgBoot后端技术栈体现了现代Java企业开发的精华:
技术组件 | 版本 | 主要功能 | 技术优势 |
---|---|---|---|
Spring Boot | 2.7.18 | 基础框架 | 快速开发、自动配置 |
MybatisPlus | 3.5.3.2 | ORM增强 | 简化数据库操作 |
Spring Cloud Alibaba | 2021.0.6.2 | 微服务治理 | 完整的微服务解决方案 |
Apache Shiro | 1.13.0 | 安全认证 | 灵活的权限控制 |
Druid | 1.1.24 | 连接池 | 强大的监控功能 |
前端技术革新
前端技术栈采用最新Vue3生态:
// 典型的前端组件结构示例
import { defineComponent, ref } from 'vue'
import { useRouter } from 'vue-router'
import { message } from 'ant-design-vue'
export default defineComponent({
name: 'AIChatComponent',
setup() {
const router = useRouter()
const chatMessages = ref<ChatMessage[]>([])
const isLoading = ref(false)
const sendMessage = async (content: string) => {
isLoading.value = true
try {
const response = await aiService.chat(content)
chatMessages.value.push(response)
} catch (error) {
message.error('发送消息失败')
} finally {
isLoading.value = false
}
}
return { chatMessages, isLoading, sendMessage }
}
})
AI低代码核心能力
JeecgBoot的AI低代码能力是其最大亮点,主要体现在以下几个方面:
1. AI流程编排引擎
平台内置强大的AI流程设计器,支持可视化编排复杂的AI工作流程:
2. 多模型AI支持
JeecgBoot支持多种主流AI大模型,为企业提供灵活的AI能力选择:
AI模型类型 | 支持情况 | 典型应用场景 |
---|---|---|
DeepSeek | ✅ 完全支持 | 代码生成、文本处理 |
ChatGPT | ✅ 完全支持 | 智能对话、内容创作 |
智普AI | ✅ 完全支持 | 中文自然语言处理 |
Ollama本地模型 | ✅ 完全支持 | 私有化部署 |
通义千问 | ✅ 完全支持 | 多模态AI应用 |
3. RAG知识库系统
平台实现了完整的RAG(检索增强生成)管道,支持多种文档格式的知识库构建:
// 知识库文档处理示例
public class KnowledgeService {
@Autowired
private EmbeddingHandler embeddingHandler;
@Autowired
private TikaDocumentParser documentParser;
public void processDocument(File document, String knowledgeId) {
// 解析文档内容
Document parsedDoc = documentParser.parse(document);
// 生成向量嵌入
List<Embedding> embeddings = embeddingHandler.generateEmbeddings(
parsedDoc.getContent(), knowledgeId);
// 存储到向量数据库
vectorStore.saveEmbeddings(embeddings);
}
}
企业级特性保障
JeecgBoot具备完整的企业级特性,确保在生产环境中的稳定运行:
安全体系
- RBAC权限控制:基于角色的精细化权限管理
- JWT令牌认证:无状态的安全认证机制
- 数据权限控制:行级、字段级的数据访问控制
- 接口安全:AK/SK认证的OpenAPI接口
高可用架构
- 微服务支持:支持单体与微服务架构自由切换
- 分布式事务:集成Seata实现分布式事务管理
- 服务治理:完整的服务注册发现、配置中心、熔断降级
- 监控体系:集成Skywalking链路追踪、SpringBootAdmin监控
信创兼容
平台全面支持国产化环境:
- 操作系统:麒麟、银河麒麟等国产Linux系统
- 数据库:达梦、人大金仓、TiDB等国产数据库
- 中间件:东方通TongWeb、宝兰德AppServer
开发效率提升机制
JeecgBoot通过多种机制显著提升开发效率:
代码生成器能力
平台提供强大的代码生成器,支持:
- 单表、树列表、一对多等数据模型
- 四套风格模板自定义
- 在线配置生成前后端代码
- 自动生成增删改查功能
Online开发模式
- 零代码配置:简单功能无需编码即可实现
- 在线表单设计:所见即所得的23种控件支持
- 流程设计器:基于Flowable的可视化流程设计
- 报表设计:拖拉拽方式制作复杂报表和大屏
典型应用场景
JeecgBoot适用于多种企业级应用场景:
应用领域 | 典型功能 | 技术优势 |
---|---|---|
SaaS平台 | 多租户管理、套餐配置 | 完善的SaaS架构支持 |
企业MIS | 流程审批、数据管理 | 强大的工作流引擎 |
OA系统 | 协同办公、任务管理 | 丰富的业务组件 |
CRM系统 | 客户管理、销售跟踪 | 灵活的数据权限 |
AI知识库 | 智能问答、文档管理 | 完整的RAG解决方案 |
平台通过将传统业务开发与AI技术深度融合,为企业数字化转型提供了强有力的技术支撑。其模块化设计、灵活的扩展能力和丰富的功能组件,使得开发者可以快速构建从简单业务系统到复杂智能化应用的全系列解决方案。
前后端分离架构技术栈详解
JeecgBoot采用现代化的前后端分离架构设计,将前端展示层与后端业务逻辑层完全解耦,通过RESTful API进行数据交互。这种架构模式不仅提升了开发效率,还增强了系统的可维护性和扩展性。
前端技术栈体系
JeecgBoot前端采用Vue3全家桶技术栈,构建了现代化、高性能的企业级应用界面。
核心框架与技术
前端技术栈的具体配置如下:
技术组件 | 版本 | 主要功能 |
---|---|---|
Vue3 | 3.5.13 | 核心框架,提供响应式数据绑定和组件化开发 |
TypeScript | 4.9.5 | 类型安全的JavaScript超集,提升代码质量 |
Vite6 | 6.0.7 | 下一代前端构建工具,提供极速的开发体验 |
Ant Design Vue4 | 4.2.6 | 企业级UI设计语言和React实现 |
Pinia | 2.1.7 | Vue的下一代状态管理库,替代Vuex |
Vxe-Table | 4.13.31 | 高性能的Vue表格组件,支持复杂业务场景 |
API通信机制
前端通过Axios库与后端进行HTTP通信,实现了完整的请求拦截、响应处理和错误管理机制:
// API调用示例 - 用户管理模块
export const list = (params) => defHttp.get({ url: Api.list, params });
export const saveOrUpdateUser = (params, isUpdate) => {
let url = isUpdate ? Api.edit : Api.save;
return defHttp.post({ url: url, params });
};
export const deleteUser = (params, handleSuccess) => {
return defHttp.delete({ url: Api.deleteUser, params }, { joinParamsToUrl: true })
.then(() => { handleSuccess(); });
};
请求拦截器自动处理Token认证、租户隔离、请求签名等安全机制:
requestInterceptors: (config: Recordable, options) => {
const token = getToken();
let tenantId: string | number = getTenantId();
// JWT Token认证
if (token) {
config.headers.Authorization = token;
config.headers[ConfigEnum.TOKEN] = token;
}
// 租户隔离支持
config.headers[ConfigEnum.TENANT_ID] = tenantId || 0;
// 请求签名防篡改
config.headers[ConfigEnum.TIMESTAMP] = signMd5Utils.getTimestamp();
config.headers[ConfigEnum.Sign] = signMd5Utils.getSign(
config.url, cloneDeep(config.params), cloneDeep(config.data)
);
return config;
}
开发环境配置
前端开发环境通过环境变量进行灵活配置:
# 开发环境配置
VITE_PORT = 3100
VITE_GLOB_API_URL = /jeecgboot
VITE_GLOB_DOMAIN_URL = http://localhost:8080/jeecg-boot
VITE_PROXY = [["/jeecgboot","http://localhost:8080/jeecg-boot"]]
后端技术栈体系
JeecgBoot后端基于Spring Boot构建,提供了完整的RESTful API服务和业务逻辑处理。
核心框架与技术
后端主要技术组件配置:
技术组件 | 版本 | 主要功能 |
---|---|---|
Spring Boot | 2.7.18 | 微服务基础框架,提供自动配置和快速开发 |
MyBatis-Plus | 3.5.12 | 增强的MyBatis框架,简化数据库操作 |
Spring Cloud Alibaba | 2021.0.6.2 | 微服务全家桶,提供服务治理能力 |
Shiro | 1.13.0 | 安全认证框架,提供权限控制 |
Druid | 1.2.24 | 阿里巴巴数据库连接池,提供监控功能 |
RESTful API设计
后端采用标准的RESTful API设计规范,每个控制器都遵循统一的接口风格:
@Slf4j
@RestController
@RequestMapping("/sys/user")
public class SysUserController {
@Autowired
private ISysUserService sysUserService;
@PermissionData(pageComponent = "system/UserList")
@RequestMapping(value = "/list", method = RequestMethod.GET)
public Result<IPage<SysUser>> queryPageList(SysUser user,
@RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
HttpServletRequest req) {
QueryWrapper<SysUser> queryWrapper = QueryGenerator.initQueryWrapper(user, req.getParameterMap());
return sysUserService.queryPageList(req, queryWrapper, pageSize, pageNo);
}
@RequiresPermissions("system:user:add")
@RequestMapping(value = "/add", method = RequestMethod.POST)
public Result<SysUser> add(@RequestBody JSONObject jsonObject) {
Result<SysUser> result = new Result<SysUser>();
try {
SysUser user = JSON.parseObject(jsonObject.toJSONString(), SysUser.class);
sysUserService.saveUser(user, selectedRoles, selectedDeparts, relTenantIds);
result.success("添加成功!");
} catch (Exception e) {
log.error(e.getMessage(), e);
result.error500("操作失败");
}
return result;
}
}
跨域处理与安全配置
后端通过CORS过滤器处理跨域请求,确保前后端分离架构的正常运行:
@Bean
@Conditional(CorsFilterCondition.class)
public CorsFilter corsFilter() {
final UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource();
final CorsConfiguration config = new CorsConfiguration();
config.setAllowCredentials(true);
config.addAllowedOriginPattern("*");
config.addAllowedHeader("*");
config.addAllowedMethod("*");
source.registerCorsConfiguration("/**", config);
return new CorsFilter(source);
}
前后端交互协议
JeecgBoot定义了统一的前后端数据交互协议,确保通信的规范性和一致性。
请求响应格式
所有API响应都遵循统一的JSON格式:
{
"success": true,
"code": 200,
"message": "操作成功",
"result": {
"data": [...],
"total": 100,
"current": 1,
"size": 10
},
"timestamp": 1640995200000
}
错误处理机制
系统定义了完整的错误码体系,前端根据不同的错误码进行相应的处理:
错误码 | 含义 | 处理方式 |
---|---|---|
200 | 成功 | 正常业务处理 |
401 | 未授权 | 跳转到登录页面 |
403 | 禁止访问 | 显示权限不足提示 |
500 | 服务器错误 | 显示系统错误信息 |
503 | 服务不可用 | 显示服务维护提示 |
微服务架构支持
JeecgBoot支持单体架构和微服务架构的灵活切换,通过配置即可实现架构模式的转换。
微服务组件
graph TB
A[微服务架构] --> B[服务注册发现 Nacos]
A --> C[API网关 Gateway]
A --> D[配置中心 Nacos]
A --> E[熔断降级 Sentinel]
A --> F[链路追踪 Skywalking]
B --> B1[服务治理]
B --> B2[健康检查]
C --> C1[路由转发]
C --> C2[权限验证]
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考