본문 바로가기

Java

[IT국비지원교육_코딩_비전공자] vo&테이블 설계

// 회원제 게시판
vo 설계

// 클래스 정의

// Member
// Board
// Reply

// Criteria

======================================================================

- 비회원과 회원으로 구분
Value Object (고유값)

- 비회원은 회원가입을 할 수 있다
- 회원은 로그인을 할 수 있다
- 회원은 로그아웃을 할 수 있다
- 회원은 본인 정보를 수정할 수 있다

class Member  : id, pw , name

======================================================================

Board 
- 회원은 글을 작성할 수 있다. C
- 회원은 (자신의) 글을 수정할 수 있다 U
- 회원은 (자신의) 글을 삭제할 수 있다 D 
- 모든 사용자는 목록을 조회할 수 있다 R
- 모든 사용자는 게시글 세부 조회 할 수 있다 R

class Board : bno, title, content, hitcount, regDate ,writer(작성자 id)

Reply 
- 회원은 댓글을 작성할 수 있다. C
- 회원은 (자신의) 댓글을 삭제할 수 있다 D 
- 모든 사용자는 목록을 조회할 수 있다 R

class Reply : rno, content, writer, regDate, bno

회원 : 글 = 1 : N
회원 : 댓글 = 1 : N
글 : 댓글 = 1 : N

 
vo 
> 과목코드, 이름, 교수, 강의점수, 강의시간 
> 제일 중요한 고유키가 1번 데이터
> 코스타입에 배열, 여러 타입에 배열
> 학원 시스템 같은 개념

1) 강의평가 (강의평가 클래스 별도 생성)
**하기 세개의 필드 사용하는 클래스 추가 생성 
: 사용자 아이디 (누가 평가 했나)
: 어떤 과목을 몇점 주었나
: 강의평가 번호별로 수정(고유번호 부여)
: 강의평가 시간 (평가를 제출한 시간)
: 강의 평가가 하나일리가 없음 / 여러개의 강의 평가 리스트를 배열로 만들어서 관리


2) 수강신청
개설과목코드가 주요코드
: 수강신청 리스트를 배열로 만들어서 관리
: 수강목록 리스트 관리 (목록 등록하고 crud 작업)
> 사전에 만들어놓고 사용자가 로그인 후 그 다음 볼 메뉴에서 내가 만든 메서드 호출
> 여러타입의 리스트를 쓰더라도 그 타입의 배열 만들어서 해당 타입의 crud를 한다
: 조회기능 / 수정기능


============================================================


패키지는 > 클래스를 묶어놓은 것
** 정석: 클래스의 묶음으로 구성되어 있는 하나의 디렉토리(폴더)이다 
 ex) java.lang.system은 java디렉토리 밑의 lang디렉토리 밑의 System.class 파일 이다

클래스는 > 설계도 > 인스턴스를 생성하기 위해서는 설계도가 필요
그안에 메서드는 > 각 기능들

vo : 객체를 값처럼 쓸 수 있고 객체의 인스턴스 변수가 생성자를 통해 초기화된 후에는 절대 변하지 않음을 보장함