본문 바로가기

분류 전체보기108

32~37일차 - 미니 팀 프로젝트 JDBC와 자바 GUI를 연동하여 간단한 프로그램 만들기를 진행했다. 프로젝트 진행 과정 팀원들과 프로젝트 주제를 뭘로 할지 얘기를 나누다가 카페에 있는 키오스크를 만들기로 결정했다. 키오스크로 받은 고객의 주문내역을 DB에 저장하여 추후에 매출 관리를 할 수 있도록 하는 것을 목표로 했다. 먼저 ERD를 작성하고 테이블을 설계했다. CUSTOM, PRODUCT, ORDER 테이블로 구성하고 GUI를 어떻게 만들지 얘기를 나누었다. 전체적인 구상을 하고 팀원 한 분이 GUI를 담당해서 먼저 틀을 짰다. 그리고 나는 다른 한 분과 VO, DAO 클래스를 만들고 DB연동에 대해 고민했다. DB를 연동하는 과정이 이해가 잘 안되어 VO, DAO의 기능을 숙지하는데 꽤 많은 시간이 걸렸다. 팀원분이 만든 GUI.. 2022. 2. 25.
31일차 - 데이터 가져오기/내보내기/자바 GUI 데이터 가져오기 파일(Excel, CSV)을 DB에 import합니다. 먼저 파일을 UTF-8로 변경해줍니다. [파일 우클릭] - [연결 프로그램] - [메모장] - [다른 이름으로 저장] - [인코딩 : UTF-8] - [저장] 1) 데이터를 저장할 스키마의 [Tables 우클릭] - [데이터 가져오기]를 선택합니다. 2) 'CSV에서 가져오기'를 선택하고 [다음] 버튼을 누릅니다. 3) 가져올 파일(Excel, CSV)을 선택 후 [열기] 버튼을 누릅니다. 4) 인코딩을 UTF-8로 설정하고 [다음] 버튼을 누릅니다. 5) 테이블 이름을 설정하고 [Columns ...] 버튼을 누릅니다. 6) 컬럼 이름과 타입을 설정하고 [확인] 버튼을 누릅니다. 7) [다음] 버튼을 누릅니다. 8) [진행] 버튼을.. 2022. 2. 15.
30일차 - ORDER BY/GROUP BY/자릿수 지정/HAVING/절 순서/ALL 예제: SaleByDao 클래스 SELECT 메소드 → SELECT * FROM V_BY_CUSTNO ; 쿼리를 실행하고 값을 rs에 저장합니다. → SaleByCustom 객체에, rs에 저장된 값을 한 행씩 가져와 저장합니다. → List에 SaleByCustom 객체를 add 합니다. → List를 반환합니다. ORDER BY 절 ORDER BY 기준열_이름 (ASC) ; → ORDER BY 절에 키워드를 입력하지 않으면 오름차순합니다. (또는 ASC 키워드) ORDER BY 기준열_이름 DESC ; → ORDER BY 절에 DESC 키워드를 입력하면 내림차순합니다. GROUP BY 절 집계함수(통계함수, 그룹함수) → COUNT, MAX, MIN, SUM, AVG, 외에 분산, 표준편차, 중앙값 .. 2022. 2. 14.
29일차 - 싱글턴/Dao 클래스/네트워크 용어 정리 싱글턴 패턴 전체 프로그램에서 단 하나의 객체만 만들어야할 때 사용됩니다. 생성자가 여러 차례 호출되더라도 생성되는 객체는 하나입니다. 최초 생성 이후에 호출된 생성자는 최초의 생성자가 생성한 객체를 리턴합니다. 주로 공통된 객체를 여러 개 생성해서 사용하는 DBCP(DataBase Connection Pool)와 같은 상황에서 많이 사용됩니다. 싱글턴 생성하기 → private 접근 제한자를 사용하여 다른 클래스에서 생성자를 호출할 수 없도록 합니다. → 객체를 리턴하는 메소드를 선언합니다. 다른 클래스에서 객체를 사용하려면 메소드를 호출해야 합니다. 1) private static 키워드를 붙이고 new 연산으로 객체를 생성합니다. private static Single singleton = new .. 2022. 2. 11.
28일차 - SELECT/DISTINCT/UPDATE/DELETE JDBC - SELECT ResultSet 인터페이스 → 자바에서 SELECT문을 사용하여 결과를 반환받을 때 사용합니다. → ResultSet 객체는 커서를 가지고 있고, 최초의 위치는 첫 행의 이전입니다. → next() 메소드는 다음 행이 존재하면 true를 반환하고 커서를 다음 행으로 이동시킵니다. → 다음 행이 존재하지 않으면 false를 반환합니다. → getXXX 메소드로 다른 클래스의 필드 값을 가져올 수 있습니다. (getString, getInt, getDate, ...) → getXXX(열_이름) : 커서가 있는 행의 열_이름에 해당하는 데이터를 가져옵니다. → getXXX(숫자) : 숫자는 컬럼 순서이고 1번부터 시작합니다. 예제1: SelectTest1 → ResultSet 객체는.. 2022. 2. 10.