프로젝트 진행하면서 같이 작성했던 글이라 내용이 엉망진창에 뭔 말인지 이해하기 어려워서
순서랑 빠진 것들도 채우고 다시 정리해 본다.
비슷한 작업을 하면서 느낀 점은 시작이 중요하다.
난 다시 하라고 해도 대충 정해놓고 하면서 고쳐나가긴 하겠지만...
일단 만드려고 하는 페이지 구성과 테이블 구조만이라도 명확하게 정해야 코딩하면서 헤매는 일이 줄어든다.
기존에 만들었던 도서관리 시스템웹을 기준으로 재정리하면서 작성
사용자는 도서관의 도서 담당자가 되겠고 하는 일은
1. 새 책이 들어오면 책 정보를 등록하고
도서정보 등록, 삭제, 수정
2. 대여자가 책을 빌리려고 하면 승인과 함께 대출 정보를 등록하고 반납 시 반납 확인을 해준다.
대출정보 등록, 삭제, 수정, 대출이력 조회, 삭제, 반납 정보 등록, 조회, 삭제
그리고 이용자
3. 회원은 도서를 빌리 기 전에 웹페이지에서 도서의 대출가능 여부와 본인의 대출 이력을 조회한다. (회원가입 필요)
대출 현황 조회, 도서 대여, 회원가입
4. 기타 도서대출정보 top 3, 신규 입고 도서 top 3을 이용자가 확인 가능하도록 제공한다.
5. 추가는 안할거지만 추가하고 싶은 것은
도서의 위치정보 책장번호와 층수 정도를 입력해주면 좀 더 편안할 수 있을 것
회원용 한줄게시판- 도서 평점이나 후기 등록
웹페이지는 위에 나온 것들이 돌아갈 수 있도록 구성
인덱스 초기페이지 (로그인/회원가입)
회원가입 페이지(가입)
도서정보 페이지(등록/조회)
대출정보 페이지(등록/조회)
제작환경은 spring boot / mybatis
DB는 Oracle (유틸 sql developer)
배포는 Oracle cloud
그림을 대충 그렸다면 이제 DB차례
1. 테이틀 구성
책정보가 담길 book테이블
회원정보가 담길 member테이블
대출 정보가 담길 borrow테이블
admin 계정을 담으려던 admin 테이블은 회원 테이블을 이용하기로 하고 삭제함

대충 생각나는 컬럼만 넣어서 만들어서 나중에 계속 수정하면
필요한 테이블과 컬럼을 잘 결정하자.
위치 정보를 담으려면 도서 테이블에 location 1, location 2 정도 추가하여 책장 번호, 층 번호를 넣어주면 될 것 같고
게시판을 만드려면 게시판 테이블을 하나 추가하여 글 번호, 글, 책 번호, 대출일, 회원명, 평점 등 만들어주면 되겠다.
2. 웹화면 구성도 미리 그림을 그려둔다.
헤드에 페이지 간 이동 가능한 메뉴바를 고정시켜두고 푸터에 간단한 정보들을 넣고 고정
웹 화면_1(인덱스)
인덱스 화면 로그인 한 사용자만 이용 가능하게 만들 것이라 로그인과 회원가입만 접근 가능하도록 구성

관리자 로그인 후 홈 화면 모든 메뉴 접근 가능하도록 만들어 줄 것

웹 화면_2(입력부)
도서정보 입력/ 대출정보 입력/ 회원가입 칼럼만 바꿔서 그대로 이용

3. 웹 화면_3(출력부)
게시판 구성과 비슷하게 만들어주고 필요한 정보들을 출력해 주는 모양

결과적으로 이러한 모양을 만들어 갈 것이다.
여기까지 사전 계획은 끝났다.
지금부터는 파일을 작성하고 저장하고 본격적으로 시작
오라클 계정 생성 권한 부여 및 SQL developer를 통한 연결
먼저 오라클에 테이블을 생성 Oracle SQL Developer 이용하여 테이블을 만들 것이다.
오라클 설치는 기본으로 완료되었다는 전제로 계정 생성부터 진행하자
cmd창을 열고 sqlplus 엔터로 진입
Enter user-name : system
Enter password: pw(설치 시 설정한 비번, 입력 시 화면에 보이지 않으니 당황하지 말고 진행)
sql> create user tester(id) identified by testpw(pw);
sql> grant connect, resource to tester(id);
하면 게정 생성과 접속 권한 부여까지 끝

sql developer를 열고 새 접속창을 열고 사용자 이름과 비밀번호를 넣고 접속을 한다

접속에 성공하면 창 왼쪽에 test(연결 설정 시 입력한 Name)으로 DB가 생긴다
테이블에 오른쪽 마우스 클릭 테이블 생성창을 열고 위에서 생각해둔 테이블과 칼럼들을 만들어 준다.

다음 편에 계속...