반응형
Notice
Recent Posts
Recent Comments
Link
관리 메뉴

bro's coding

boardProject_MVC 본문

[IT]/test

boardProject_MVC

givemebro 2021. 4. 29. 02:04
반응형

요구사항

더보기

**요구사항** Model2 MVC 기반 커뮤니티 게시판 비로그인 상태에서는 게시판 리스트 정보만 제공된다 상단부 화면에서 로그인 할 수 있는 폼이 제공된다 리스트에서는 게시물번호, 제목 , 작성자, 작성일 , 조회수가 제공된다 리스트에 게시물은 등록최신순으로 정렬되어 제공된다 사용자가 로그인을 하면 상단부 로그인 폼 대신 홈(링크) 글쓰기(링크) 사용자 이름 로그아웃(링크)가 제공된다 사용자가 로그인을 하면 리스트의 제목부분에 링크가 활성화되어 게시물 상세보기가 제공된다 상세 게시물 정보는 게시물번호, 제목, 작성자, 작성일시, 조회수, 게시물 본문내용이 제공된다 로그인한 사용자는 자신이 작성한 글에 대해서만 삭제와 수정버튼이 제공된다 상단부에 로그아웃링크을 누르면 로그아웃하시겠습니까? 의사를 재확인한 후 로그아웃처리하고 홈( 게시물 리스트 화면 ) 으로 이동한다 로그인한 사용자가 상단부 글쓰기 링크를 클릭해서 게시글을 작성할 때는 제목과 본문 내용을 작성해서 글쓰기 버튼을 누르면 게시글이 등록되고 자신이 작성한 게시글 상세보기 화면이 제공된다 상세글보기에서 자신이 쓴 게시글에 한해서 삭제를 누르면 삭제하시겠습니까 의사를 재확인한 후 삭제하고 리스트로 이동시킨다. 상세글보기에서 자신이 쓴 게시글에 한해서 수정을 누르면 수정하시겠습니까 의사를 재확인한 후 수정폼을 제공한다. 수정폼은 제목과 본문내용을 수정할 수 있고 수정버튼을 누르면 수정을 반영하고 수정된 글의 상세보기를 다시 제공한다 리스트 화면에서는 상세글보기를 위해 제목에 클릭하여 상세글보기를 하는 시점에 조회수가 증가된다 자신이 쓴 글을 등록하거나 수정할 때는 게시글 조회수가 증가하지 않는다 추가 요구사항 ) 페이징 처리 -> 게시물 리스트 하단부에 페이지그룹( 4 페이지 ) 페이지 그룹당 게시물수 (5개 ) 로 처리한다 - 요구분석 -> UseCase Diagram ( UML ) - 설계 -> DB Modeling( ERD - 논리,물리 ) Application Modeing - Class Diagram ( UML ) -> model controller - 클래스명만 Class Diagram에서 표현 UI Modeling ( 생략 ) -> view file list index.jsp error.jsp member/login-fail.jsp board/ 유즈케이스별 개발 순서 게시물리스트(4시) -> 로그인,로그아웃 -> 상세보기(5시) -> 글쓰기(5시 30분) 개인별 총 소요시간 : 시간 분 1번 오늘 풀고 내일 풀이 2번 구간별 풀이 1 로그아웃 2 상세보기 3 글쓰기 4 삭제 5 수정 3번 구간별 카페공유 4번 카페공유 후 내일 아침 풀이

요구사항 분석_개발 단계

더보기

**요구사항**
Model2 MVC 기반 게시판 ​

비로그인 상태에서는 게시판 리스트 정보만 제공된다
상단부 화면에서 로그인 할 수 있는 폼이 제공된다 

리스트에서는 게시물번호, 제목 , 작성자, 작성일 , 조회수가 제공된다
리스트에 게시물은 등록최신순으로 정렬되어 제공된다 

사용자가 로그인을 하면 상단부 로그인 폼 대신 
홈(링크) 글쓰기(링크) 사용자 이름 로그아웃(링크)가 제공된다​

사용자가 로그인을 하면 리스트의 제목부분에 링크가 활성화되어 
게시물 상세보기가 제공된다 

상세 게시물 정보는 게시물번호, 제목, 작성자, 작성일시, 조회수, 게시물 본문내용이 제공된다
로그인한 사용자는 자신이 작성한 글에 대해서만 삭제와 수정버튼이 제공된다 

상단부에 로그아웃링크을 누르면 로그아웃하시겠습니까? 의사를 재확인한 후 로그아웃처리하고
홈( 게시물 리스트 화면 ) 으로 이동한다 

로그인한 사용자가 상단부 글쓰기 링크를 클릭해서 게시글을 작성할 때는
제목과 본문 내용을 작성해서 글쓰기 버튼을 누르면 게시글이 등록되고 자신이 작성한 
게시글 상세보기 화면이 제공된다 

​상세글보기에서 자신이 쓴 게시글에 한해서 삭제를 누르면 삭제하시겠습니까 의사를 재확인한 후 
삭제하고 리스트로 이동시킨다. 

​상세글보기에서 자신이 쓴 게시글에 한해서 수정을 누르면 수정하시겠습니까 의사를 재확인한 후 
수정폼을 제공한다. 수정폼은 제목과 본문내용을 수정할 수 있고 수정버튼을 누르면 
수정을 반영하고 수정된 글의 상세보기를 다시 제공한다 

리스트 화면에서는 상세글보기를 위해 제목에 클릭하여 상세글보기를 하는 시점에
조회수가 증가된다 

​자신이 쓴 글을 등록하거나 수정할 때는 게시글 조회수가 증가하지 않는다 


----------------------------------------------------------------------------
- 요구분석 UML  UseCase Diagram 
   1. 리스트 , 2. 로그인 , 로그아웃 , 3.상세글보기(조회수) , 4. 글쓰기  5.삭제,수정 

총 구현시간 : 

- 설계 : DB Modeling -> ERD 
  Application Modeling -> Class Diagram ( DataSourceManager(dbcp) , MemberDAO , BoardDAO )
      MemberVO , PostVO )  
  UI 설계 -> Main UI CSS 
- 구현 : DDL 
          라이브러리 ( jstl , bootstrap 등 )
          Model , Controller  기반 코드 작성      

drop table board_member;
drop table board;

drop sequence board_seq;
create sequence board_seq;

create table board_member(
	id varchar2(100) primary key,
	password varchar2(100) not null,
	name varchar2(100) not null
)
create table board(
	no number primary key,
	title varchar2(100) not null,
	content clob not null,
	hits number default 0,
	time_posted date not null,
	id varchar2(100) not null,
	constraint myboard_fk foreign key(id) references board_member(id)
)
insert into board_member(id,password,name)
values('java','a','아이유');
insert into board_member(id,password,name)
values('spring','a','공유');
select * from board_member;
select * from board;

insert into board(no,title,content,time_posted,id) 
values(board_seq.nextval,'방가','ㅋㅋ',sysdate,'java');

insert into board(no,title,content,time_posted,id) 
values(board_seq.nextval,'안녕','치맥',sysdate,'spring');

insert into board(no,title,content,time_posted,id) 
values(board_seq.nextval,'즐거운 프로젝트','복분자 맛있어요^^',sysdate,'java');

SELECT b.no,b.title,b.hits,to_char(time_posted,'YYYY.MM.DD') as time_posted,m.id,m.name 
FROM board b , board_member m
WHERE b.id=m.id
order by no desc

반응형

'[IT] > test' 카테고리의 다른 글

boardProject_MVC.글쓰기  (0) 2021.04.29
boardProject_MVC. flow 정리  (0) 2021.04.29
Comments