모집공고 카테고리(JobCode) 기능 정리
1. 데이터 구조
@Entity
@Table(name = "job_code")
public class JobCode {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long jobCodeId;
@Column(nullable = false, unique = true)
private String jobCode; // 직종 코드
@Column(nullable = false)
private String jobName; // 직종 이름
@Column(nullable = false)
private String jobCategory; // 직종 카테고리
}
2. API 엔드포인트
- 전체 카테고리 조회:
GET /job-codes
- 특정 카테고리 조회:
GET /job-codes/{jobCodeId}
- 카테고리별 모집공고 조회:
GET /job-codes/{jobCodeId}/job-posts
3. 주요 기능
- 직종 코드 관리
- 직종 카테고리 관리
- 카테고리별 모집공고 필터링
- 모집공고 작성 시 카테고리 지정
4. 카테고리 구조
4.1 대분류
4.2 세부 직종
5. 예시 요청/응답
5.1 카테고리 조회
// GET /job-codes
{
"success": true,
"message": "카테고리 목록을 성공적으로 조회했습니다.",
"categories": [
{
"jobCodeId": 1,
"jobCode": "CONST_001",
"jobName": "건설기계조작원",
"jobCategory": "건설업"
},
{
"jobCodeId": 2,
"jobCode": "IT_001",
"jobName": "백엔드 개발자",
"jobCategory": "IT/소프트웨어"
}
]
}
5.2 카테고리별 모집공고 조회
// GET /job-codes/{jobCodeId}/job-posts
{
"success": true,
"message": "카테고리별 모집공고를 성공적으로 조회했습니다.",
"jobPosts": [
{
"jobPostId": 1,
"companyName": "테크 컴퍼니",
"jobName": "백엔드 개발자",
"jobPostDescription": "공고 설명...",
"jobPeriod": "6개월",
"deadline": "2024-12-31T23:59:59",
"careerType": "EXPERIENCED"
}
]
}
6. 제약사항
- 모집공고 작성 시 반드시 카테고리 지정 필요
- 카테고리 코드는 중복 불가
- 카테고리 이름은 중복 가능
7. 관련 기능
- 모집공고 검색 시 카테고리 필터링
- AI 매칭 시 카테고리 기반 추천
- 통계 및 분석 데이터 제공
8. 향후 개선사항
- 카테고리 계층 구조 개선
- 카테고리별 통계 기능 추가
- 카테고리 자동 분류 기능
- 카테고리 검색 기능 강화
- 카테고리별 추천 알고리즘 개선
모집공고 카테고리(JobCode) 기능 정리
1. 데이터 구조
2. API 엔드포인트
GET /job-codesGET /job-codes/{jobCodeId}GET /job-codes/{jobCodeId}/job-posts3. 주요 기능
4. 카테고리 구조
4.1 대분류
4.2 세부 직종
5. 예시 요청/응답
5.1 카테고리 조회
5.2 카테고리별 모집공고 조회
6. 제약사항
7. 관련 기능
8. 향후 개선사항