게시판 프로그램(데이터베이스 연동)
과제 목적
1. 자바와 데이터베이스 연동에 대한 이해 증진
2. 프로젝트 수행 전 미니 과제를 통한 시스템 개발에 대한 이해와 경험 체득
3. 깃과 노션을 이용한 협업 환경에 대한 이해와 협업 경험 체득
프로그램 목적
회원가입과 로그인을 통해 게시판 프로그램에 진입할 수 있다.
게시물의 생성, 조회, 수정, 삭제할 수 있다.
회원탈퇴를 통해 회원정보를 삭제하고 프로그램을 종료할 수 있다.
프로그램을 종료하면 DB와 연결을 끊고 프로그램을 종료한다.
나의 역할
데이터베이스와 연동되지 않은 Board프로그램 코드 작성
데이터베이스와 연동된 게시물 생성 기능
플로우차트 작성
게시판 프로그램 플로우 차트
1. 회원가입을 통해 유저로 등록할 수 있다. 기존에 이미 등록된 유저라면 아이디와 비밀번호를 입력하고 로그인하여 메인 메뉴로 진입할 수 있다.
2. 아이디와 비밀번호가 일치하지 않는다면 다시 로그인 화면으로 돌아간다.
3. 회원가입을 선택하면 아이디, 비밀번호, 생년월일, 전화번호를 입력하고 회원가입을 진행 할 수 있다.
4. 아이디와 비밀번호, 생년월일, 전화번호에 알맞은 형식으로 입력하지 않으면 다시 입력해야한다.
5. 회원가입을 완료하면 로그인 화면으로 전환되어 로그인 할 수 있다.
6. 메인 메뉴에서 게시물 생성, 게시물 읽기, 게시물 삭제, 프로그램 종료, 회원탈퇴 중 선택하여 진행할 수 있다.
7. 게시물 제목과 내용을 입력하면, 로그인 정보를 통해 작성자가 설정되고, auto_increment된 bno를 부여받고 게시물이 생성된다.
8. 데이터베이스와 연동 실패시 게시물을 다시 작성할 수 있다.
9. 게시물의 목록을 조회하고 번호를 선택해서 게시물의 내용을 조회할 수 있으며, 해당 게시물의 수정, 삭제가 가능하다.
10. 게시물 수정을 선택하면 제목과 내용을 다시 입력하고, 수정 여부를 확인 후 수정된 내용이 기존 게시물에 반영된다.
11. 게시물 삭제를 선택하면 삭제여부 확인 후 해당 게시물을 삭제한다.
12. 게시물 전체 삭제를 통해 게시판을 비울 수 있다.
13. 회원탈퇴를 선택하면 탈퇴여부를 확인하고 DB에서 회원정보를 삭제하고 프로그램을 종료한다.
14. 프로그램 종료 : DB와 연결을 끊고 프로그램을 종료한다.
클래스 다이어그램
- Board
+내용추가예정... - BoardDao
- BoardService
- BoardServiceImpl
- BoardMenu
- BoardMain
- User
- UserService
- UserServiceImpl
- DBConnection
회고
게시판 프로그램은 기존에 실습해보았던 프로그램이었지만, 사실 그때 제대로 하질 못해서 이번에 다시 만들어보았다.
기존에 허접했던 코드에 다시 살을 붙여서 만들었는데, 그때보다 조금 더 익숙해진 느낌이다.
그렇게 만들어놓은 board 프로그램에 데이터베이스와의 연동을 위한 작업을 했는데, 불과 엊그제 배웠던 내용들을 적용해서 넣었보았다.
직접 코드를 짜면서 넣어보니 수업때는 좀 이해가 가질 않았던 부분도 직접 다시 해보면서 공부할 수 있었던게 좋았다.
수업땐 마냥 따라서 적기만 했던
Class.forname()을 통해서 JDBC드라이버를 등록하고,
Connection conn = DriverManager.getConnection() 로 해당 드라이버를 이용해서 실제로 데이터베이스와 연결하는 거라는걸 이제야 좀 알았다..
롬복의 Getter Setter 어노테이션들을 좀 썼는데, 이게 됐다가 안됐다가 해가지고 롬복의 기능에 대한 명징한 이해는 하지 못했다. 이게 쓰는게 좋다는 사람도 있고, 좋지 않다는 사람도 있어가지고 조금 더 공부가 필요할 것 같다.
깃과 깃허브의 이해와 사용법에 대해 많이 미숙하다보니 작업 자체가 원활하지 못했다.
혼자 할 때야 그냥 커밋&푸시만 하면 됐었지만 협업은 또 다르다는걸 알았다.
앞으로 먹고 살려면 열심히 또 공부해야 할 것 같다...