本文介绍了一个基于 Java 的 AI 图片生成网站的开发过程。
一、项目背景
项目初衷源于对最新模型绘画效果的认可,尝试自行实现。设计思路如下:
- 熟悉 Java 后端技术栈
- AI 绘画 API 已成熟
- 市面上的工具要么太贵,要么太复杂
- 目标是做一个简单好用的工具
二、技术选型
后端技术
- Spring Boot 3.2 - 主框架,快速开发
- MyBatis Plus - 数据库操作
- Redis - 缓存和队列
- MySQL 8.0 - 数据存储
- WebSocket - 实时推送生成进度
前端技术
- Vue 3 - 前端框架
- Element Plus - UI 组件库
- Axios - HTTP 请求
AI 服务
- Stable Diffusion API - 图片生成
- 对象存储 - 图片存储(云服务)
部署
- Docker - 容器化部署
- Nginx - 反向代理
- 云服务器 - 2 核 4G 配置
三、核心功能实现
1. 用户系统
常规注册登录功能。
关键代码思路:
// 用户注册
@PostMapping("/register")
public Result register(@RequestBody UserDTO userDTO) {
// 1. 校验邮箱格式
// 2. 检查邮箱是否已注册
// 3. 密码加密(BCrypt)
// 4. 生成 token
// 5. 返回用户信息
}
// 用户登录
@PostMapping("/login")
public Result login(@RequestBody LoginDTO loginDTO) {
// 1. 验证邮箱密码
// 2. 生成 JWT token
// 3. 存入 Redis(设置过期时间)
}


