语言: English | 简体中文
一个围绕职业测评、求职画像、招聘数据和岗位推荐流程构建的 Java 后端练习项目。
| 方向 | 已包含模块 |
|---|---|
| 用户身份 | 用户模型、角色、拦截器和通用返回结构 |
| 求职画像 | 应聘者简历、教育经历、工作经历、意向职业、技能标签和资格证书 |
| 招聘方 | 公司、招聘方、招聘信息、招聘评论和点赞记录 |
| 推荐数据 | 学校、专业、行业、职位、省市表和求职状态枚举 |
| 基础设施 | MyBatis/MyBatis-Plus mapper、Redis/Redisson、Knife4j 文档、腾讯云 COS 集成 |
- Java 8
- Spring Boot 2.7
- Spring Web
- MyBatis / MyBatis-Plus
- MySQL
- Redis / Redisson
- Knife4j
- 腾讯云 COS SDK
- Maven
前置要求:
- JDK 8 或更高版本
- Maven 3.8 或更高版本
- 如需完整运行服务,需要 MySQL
- 如使用登录/缓存相关流程,需要 Redis
运行默认测试:
mvn test构建项目:
mvn package数据库建表脚本:
db/create_table.sql
设置环境变量后本地启动:
set JOB_DB_PASSWORD=your-local-password
set COS_ACCESS_KEY=your-local-access-key
set COS_SECRET_KEY=your-local-secret-key
mvn spring-boot:runPowerShell 环境请使用 $env:JOB_DB_PASSWORD = "..."。
运行配置在 src/main/resources/application.properties,但密钥类配置已经改成环境变量驱动。不要提交真实值。
| 变量 | 用途 | 默认值 |
|---|---|---|
JOB_DB_URL |
MySQL JDBC 地址 | 本地 career 数据库 |
JOB_DB_USERNAME |
MySQL 用户名 | root |
JOB_DB_PASSWORD |
MySQL 密码 | 空 |
JOB_REDIS_HOST |
Redis 地址 | localhost |
JOB_REDIS_PORT |
Redis 端口 | 6379 |
JOB_REDIS_DATABASE |
Redis 数据库编号 | 1 |
COS_ACCESS_KEY |
腾讯云 COS access key | 空 |
COS_SECRET_KEY |
腾讯云 COS secret key | 空 |
COS_REGION |
腾讯云 COS 地域 | ap-nanjing |
COS_BUCKET |
腾讯云 COS 存储桶 | example-bucket |
如果真实凭据曾经提交到公开分支,请先在服务商控制台轮换后再继续使用。
job-backend/
├─ db/create_table.sql
├─ src/main/java/com/ice/job/
│ ├─ common/ # 通用请求/响应结构
│ ├─ config/ # CORS、JSON、MyBatis、Knife4j、Redis、COS
│ ├─ controller/ # REST 控制器
│ ├─ mapper/ # mapper 接口
│ ├─ model/ # entity、DTO、VO、enum
│ ├─ service/ # service 接口和实现
│ └─ utils/ # 工具类
├─ src/main/resources/mapper/
├─ src/test/java/com/ice/job/
└─ pom.xml
这是一个学习和作品集后端项目,不是生产就绪服务。它适合用来查看 Spring Boot 分层、MyBatis mapper 结构、职业推荐领域建模,以及公开仓库配置安全治理。
请阅读 CONTRIBUTING.md。优先欢迎补充脱敏配置示例、controller/service 测试、数据库结构说明和更安全的部署默认值。
如果这个项目帮你节省了时间,可以在这里支持后续维护:Buy Me a Coffee。
MIT