Skip to content

JAVA 프로젝트 콘솔 알바 게시판 출력하기

Notifications You must be signed in to change notification settings

eeeunhey/AlbaItProject

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

31 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ALBAIT logo

ALBAIT

💻 Java Console 기반 IT 단기 아르바이트 · 프로젝트 매칭


📌 프로젝트 개요

ALBAIT은 기업과 개인 회원을 연결해 단기 IT 아르바이트/프로젝트 채용을 지원하는 콘솔 기반 플랫폼입니다.

  • 기업: 공고 등록/관리, 지원자 목록 조회, 상태 변경
  • 개인: 이력서 등록, 공고 검색 및 지원, 지원 현황 확인

핵심 아이디어: 텍스트 기반 콘솔 환경에서도 실제 구인·구직 과정을 최대한 현실적으로 모사하도록 설계
목표:
IT 직무 실습 프로젝트로, 데이터베이스 설계·DAO/VO 구현·UI 분리 패턴을 통해 실제 구직 서비스 구조를 간접적으로 경험


🖥️ 주요 기능

🔑 로그인

기업 로그인
기업 로그인 화면
개인 로그인
개인 로그인 화면

설명

  • 기업/개인/관리자 계정 유형에 따라 다른 메뉴 제공
  • 로그인 후 각자의 권한에 맞는 기능만 접근 가능
  • 잘못된 로그인 시도에 대한 예외 처리 포함

📝 채용 공고 등록 (job_post)

채용 공고 작성
기업 회원 – 공고 작성
채용 공고 목록
채용 공고 목록

설명

  • 기업 회원은 공고를 등록/수정/삭제할 수 있습니다.
  • 공고에는 마감일, 급여, 근무 형태(정규/알바/인턴), 지역 등의 속성이 포함됩니다.
  • 모든 사용자는 공고 리스트를 열람할 수 있습니다.

📂 지원 내역 관리 (apply)

지원자 목록
기업 회원 - 지원자 조회
지원 내역 확인
개인 회원 – 지원 및 상태 확인

설명

  • 개인 회원: 자신의 지원 현황/결과를 확인할 수 있습니다.
  • 기업 회원: 공고별 지원자 목록을 보고, 지원 상태를 변경할 수 있습니다.
  • 지원 상태(코드 → 의미)
    • APPLIED → 지원 완료
    • UNDER_REVIEW → 검토 중
    • INTERVIEW → 면접
    • PASSED → 합격
    • REJECTED → 불합격
    • WITHDRAWN → 지원 취소

🔄 동작 흐름(요약)

  1. 기업 회원job_post에 공고를 등록
  2. 개인 회원이 공고에 지원 → apply에 (user_no, post_id) 저장
  3. 기업은 apply를 통해 지원자 목록을 확인하고 상태 변경
  4. 개인은 자신의 지원 현황을 조회

🗂️ 데이터베이스 구조

AlbaITDB

  • 설계 목적: 회원, 공고, 지원 정보를 분리하여 중복을 최소화하고, 일관된 데이터를 유지합니다.
  • 핵심 개념: apply는 “누가 어떤 공고에 지원했는가”만 저장하며, 상세 정보는 JOIN으로 조회합니다.

테이블 요약

  • user_table: 회원 기본 정보
    (user_no, user_id, name, nickname, user_type, reg_date)
  • job_post: 채용 공고 정보
    (post_id, title, user_id(기업 계정), deadline, …)
  • apply: 지원 내역(관계 테이블)
    (apply_id, user_no(FK), post_id(FK), status, apply_date)
    • 상태: APPLIED / UNDER_REVIEW / INTERVIEW / PASSED / REJECTED / WITHDRAWN
    • 중복 방지: (user_no, post_id) 유니크 제약

💡 학습 후 배운점

  • 단순히 기능을 구현하는 것을 넘어, DB 설계–Java 객체 매핑–UI 흐름까지 전체 개발 프로세스를 경험할 수 있습니다.
  • 관계형 데이터베이스 학습: 회원/공고/지원 테이블을 통해 1:N 관계, FK 제약, 중복 방지(Unique 제약) 같은 개념을 실습
  • 객체지향 프로그래밍 학습: VO(Value Object), DAO(Data Access Object) 패턴을 직접 구현하면서 캡슐화, 데이터 추상화의 개념을 익힘
  • UI/로직 분리 학습: 콘솔 UI를 단순 출력에 그치지 않고, 로직과 분리해 유지보수가 가능한 구조로 구현 → MVC 패턴의 기초 체험
  • 프로젝트 경험: 협업, Git 브랜치 관리, 요구사항 기반 기능 분리 경험을 통해 실제 팀 프로젝트와 유사한 흐름을 연습

About

JAVA 프로젝트 콘솔 알바 게시판 출력하기

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published