티스토리 뷰

JDBC

공지사항 메뉴 붙이기

Programmers 2021. 5. 3. 12:00
반응형

목표
: 공지사항 메뉴 붙이기

/*NoticeConsole.java*/
package com.newlecture.app.console;

import java.sql.SQLException;
import java.util.List;
import java.util.Scanner;

import com.newlecture.app.entity.Notice;
import com.newlecture.app.service.NoticeService;

public class NoticeConsole {
	
	private NoticeService service;
	
	public NoticeConsole() {
		service = new NoticeService();
	}
	
	/* 내용 UI*/
	public void printNoticeList() throws ClassNotFoundException, SQLException {
		List<Notice> list = service.getList();
			
		System.out.println("──────────────────────────────────────");
		System.out.printf("<공지사항> 총 %d 게시글\n", 12);
		System.out.println("──────────────────────────────────────");
		
		for(Notice n : list) {
		System.out.printf("%d. %s / %s / %s\n",
							n.getId(),
							n.getTitle(),
							n.getWriterId(),
							n.getRegDate());
		
		}
		System.out.println("──────────────────────────────────────");
		System.out.printf("         %d/%d pages \n", 1, 2);
		
		
	}

	/* 메뉴 UI*/
	public int inputNoticeMenu() {
		Scanner scan = new Scanner(System.in);
		
		System.out.printf("1. 상세조회/ 2.이전/ 3.다음/ 4.글쓰기 / 5.종료 >");
		String menu_ = scan.nextLine();
		int menu = Integer.parseInt(menu_);
		
		return menu;
		
	}

}

 

/*program5.java*/
package ex1;

import java.sql.SQLException;

import com.newlecture.app.console.NoticeConsole;

public class program5 {
	/* 탑다운 방식 구현 */
	public static void main(String[] args) throws ClassNotFoundException, SQLException {
		NoticeConsole console = new NoticeConsole();
		
		EXIT:
		while(true) {
		console.printNoticeList();	//출력
		int menu = console.inputNoticeMenu();	//

			/* 메뉴 함수 구현*/
			switch(menu){
			case 1:	//상세조회C
				break;
			case 2:	//이전
				break;
			case 3:	//다음
				break;
			case 4:	//글쓰기
				break;
			case 5:	//종료
				System.out.println("Bye~~");
				break EXIT;
			default:
				System.out.println("<<사용방법 오류: 1~4까지만 입력하세요>>");
				break;
			}
		}
	}
}

 

메뉴

메뉴 구현결과

 

반응형

'JDBC' 카테고리의 다른 글

페이징 쿼리 이용하기  (0) 2021.05.06
페이징을 위한 쿼리 만들기  (0) 2021.05.06
사용자 인터페이스 붙이기(공지사항 목록)  (0) 2021.05.03
CRUD를 담당하는 NoticeService 생성  (0) 2021.05.03
데이터 수정  (0) 2021.04.30
댓글
공지사항