JDBC/JDBC 수업

#33. Test. TeamProject(TODOLIST)

열하나요 2023. 8. 17. 19:08

ㅇ_ㅇ

 

CREATE USER TODOLIST IDENTIFIED BY TODOLIST;
GRANT CONNECT, RESOURCE TO TODOLIST;
--------------------------------------------------------------------------------


CREATE TABLE AAA(
    AAA_1 VARCHAR2(20),
    AAA_2 NUMBER
);

CREATE SEQUENCE AAA_SEQ
    START WITH 1
    INCREMENT BY 1
    MAXVALUE 100
    MINVALUE 1
    NOCYCLE
    CACHE 20;
    
INSERT INTO AAA VALUES(123, 1);

SELECT * FROM AAA;

INSERT INTO AAA VALUES('시퀀스2', AAA_SEQ.NEXTVAL);
INSERT INTO AAA VALUES('시퀀스3', AAA.SEQ.CURRVAL);

SELECT AAA_SEQ.CURRVAL FROM DUAL;
-- SELECT AAA_SEQ.CURRVAL FROM AAA_SEQ;

-- SELECT * FROM AAA_SEQ;
SELECT * FROM USER_SEQUENCES;

SELECT AAA_SEQ.NEXTVAL FROM AAA;

SELECT AAA_2 FROM AAA;

DROP TABLE AAA;

DROP SEQUENCE AAA_SEQ;


--------------------------------------------------------------------------------

-- [TODOLIST]테이블 생성
CREATE TABLE TODOLIST(
    TODO_TASK VARCHAR(2000),
    TODO_DUEDATE DATE,
    DDAY NUMBER
);

-- [TODO_SEQ]시퀀스 생성
CREATE SEQUENCE TODO_SEQ;
--    START WITH 1
--    INCREMENT BY 1
--    MAXVALUE 200
--    MINVALUE 1
--    NOCYCLE
--    CACHE 20;

-- [TODOLIST]테이블에 시퀀스값 및 우선순위NUMBER값 컬럼 추가
ALTER TABLE TODOLIST ADD TODO_SEQ NUMBER PRIMARY KEY
                     ADD TODO_PRIORITY NUMBER;

ALTER TABLE TODOLIST ADD TODO_EXCUTE CHAR(1);
 
ALTER TABLE TODOLIST MODIFY TODO_EXCUTE CHECK (TODO_EXCUTE IN ('Y', 'N'));

INSERT 
  INTO TODOLIST 
VALUES('다 할 수 있을까', 230829, TO_CHAR(TODO_DUEDATE-SYSDATE), TODO_SEQ, 1, 'N');


SELECT TO_CHAR(SYSDATE) FROM DUAL;
SELECT SYSDATE FROM DUAL;
SELECT TO_CHAR(SYSDATE-SYSDATE) FROM DUAL;

-- [TODOLIST] DDAY 타입변경
ALTER TABLE TODOLIST MODIFY DDAY DATE;

COMMIT;


-- [TODOLIST]테이블 조회
SELECT * FROM TODOLIST;

 

 

Run

package com.kh.run;

import com.kh.view.TodoListView;

public class Run {
	
	public static void main(String[] args) {
		
		new TodoListView().mainMenu();
	}

}

 

VO

package com.kh.model.vo;

import java.sql.Date;

public class TodoList {
	
	private String task;
	private Date dueDate;
	private int remaining;
	private int sequence;
	private int priority;
	private char execute;
	
	public TodoList() {
		super();
	}

	public TodoList(String task, Date dueDate, int remaining, int sequence, int priority, char execute) {
		super();
		this.task = task;
		this.dueDate = dueDate;
		this.remaining = remaining;
		this.sequence = sequence;
		this.priority = priority;
		this.execute = execute;
	}

	public String getTask() {
		return task;
	}

	public void setTask(String task) {
		this.task = task;
	}

	public Date getDueDate() {
		return dueDate;
	}

	public void setDueDate(Date dueDate) {
		this.dueDate = dueDate;
	}

	public int getRemaining() {
		return remaining;
	}

	public void setRemaining(int remaining) {
		this.remaining = remaining;
	}

	public int getSequence() {
		return sequence;
	}

	public void setSequence(int sequence) {
		this.sequence = sequence;
	}

	public int getPriority() {
		return priority;
	}

	public void setPriority(int priority) {
		this.priority = priority;
	}

	public char getExecute() {
		return execute;
	}

	public void setExecute(char execute) {
		this.execute = execute;
	}

	@Override
	public String toString() {
		return "TodoList [task=" + task + ", dueDate=" + dueDate + ", remaining=" + remaining + ", sequence=" + sequence
				+ ", priority=" + priority + ", execute=" + execute + "]";
	}
	


}

 

 

 

View

package com.kh.view;

import java.util.Scanner;

public class TodoListView {
	
	private Scanner sc = new Scanner(System.in);
	
	// 접근제한자 (예약어static) 반환형 메소드명(매개변수){} 
	public void mainMenu() {
		
		
		while(true) {
			
			System.out.println(" --------- TodoList ----------- ");
			System.out.println("1. 할일 추가");
			System.out.println("2. 할일 조회");
			System.out.println("3. 할일 수정");
			System.out.println("4. 할일 삭제");
			System.out.println("5. 완료 처리");
			System.out.println("0. 프로그램 종료");
			
			System.out.print("번호를 눌러주세요 : ");
			System.out.println();
			
			int menu = sc.nextInt();
			sc.nextLine();
			
			switch(menu) {
			case 1 : insertTodo(); break;
			case 2 : selectTodo(); break;
			case 3 : updateTodo(); break;
			case 4 : deleteTodo(); break;
			case 5 : completeTodo(); break;
			case 0 : System.out.println("프로그램을 종료합니다."); return;
			}
		}
	}

	private void insertTodo() {
		System.out.print("할일을 입력해 주세요.");
		
	}

	private void selectTodo() {
		// TODO Auto-generated method stub
		
	}

	private void updateTodo() {
		// TODO Auto-generated method stub
		
	}

	private void deleteTodo() {
		// TODO Auto-generated method stub
		
	}

	private void completeTodo() {
		// TODO Auto-generated method stub
		
	}

	

}

'JDBC > JDBC 수업' 카테고리의 다른 글

#31. JDBC(Properties)  (0) 2023.08.14
#30. JDBC(model에 service클래스 추가), Template  (0) 2023.08.11
#29. test... 팀플과제  (0) 2023.08.10
#28. PreparedStatement  (0) 2023.08.09
#27. JDBC, Connection, Statement, ResultSet  (0) 2023.08.08