728x90
게시판 > 글 목록에 자동 번호 매기기
게시판은 공지사항, 자유게시판, 힐러지식in 3개가 있다.
각각의 게시판에 번호를 1부터 추가한다.
자유게시판으로 예를 들면,
public class FreeBoard implements Serializable{
private int no;
private String title;
private String content;
private Member writer;
private Date registeredDate;
private int viewCount;
private int like;
private String reason;
private String requester;
public static int lastIndex = 1;
}
글 번호를 자동으로 넣어줄 때 사용될 int변수 lastIndex를 static으로 생성한다.
public class FreeBoardAddHandler extends AbstractFreeBoardHandler{
public FreeBoardAddHandler(List<FreeBoard> freeBoardList) {
super(freeBoardList);
}
@Override
public void execute(CommandRequest request) {
System.out.println();
System.out.println("[자유게시판 글쓰기] 페이지입니다.");
System.out.println();
FreeBoard freeBoard = new FreeBoard();
freeBoard.setNo(FreeBoard.lastIndex++);
freeBoard.setTitle(Prompt.inputString("제목> "));
freeBoard.setContent(Prompt.inputString("내용> "));
freeBoard.setWriter(AuthLoginHandler.getLoginUser());
freeBoard.setRegisteredDate(new Date(System.currentTimeMillis()));
freeBoardList.add(freeBoard);
System.out.println("게시판 등록이 완료되었습니다.");
}
}
lastIndex를 불러온다.
static 변수는 모든 인스턴스가 하나의 저장공간을 공유하기에 항상 같은 값을 가지기 때문에
++로 해주면서 글을 생성할 때마다 번호를 새로 추가해줄 수 있다.
출력 결과 --------------------------
게시판 글 생성 -> 1, 2, 3, 4, 5
3번 삭제 시 -> 1, 2, 3, 4, 5
새로운 글 생성 -> 1, 2, 4, 5, 6
3번이 아니라 6번으로 글 생성이 된다.
'Project' 카테고리의 다른 글
DB 모델링 및 테이블 준비 (0) | 2021.10.19 |
---|---|
데이터 관리 서버 만들기 - 5) 통신 기능을 캡슐화 (0) | 2021.10.11 |
데이터 관리 서버 만들기 - 4) 프로토콜 정의 및 적용 (0) | 2021.10.03 |
데이터 관리 서버 만들기 - 3) 사용자가 입력한 명령처리 (0) | 2021.10.03 |
비트 연산자로 권한 설정하기 (0) | 2021.09.14 |