어제 내준 문제
문제1. 주어진 파일을 이용하여 데이터베이스에 저장한 후, 저장된 파일을 html파일로 출력
문제2. 셀프 가능 주요소 개수와 비 셀프 주유소의 개수 파악.
준비)
1.오라클 테이블 생성
=> 필드명(상호,주소,상표,전화번호,셀프여부,휘발유,경유)
=>휘발유와 경유는 정수형
2.자바와 오라클 연동
=> 드라이버 필요
3.엑셀파일을 읽어서 값을 오라클에 저장
=> jxl.jar필요
쿼리 실행 객체
Statement : 단순조회(쿼리 안에 변수가 없을 경우)
접속 성공한 Connection 객체를 통해 생성
예) "select *from oilbank"를 자바에서 오라클에게 실행 요청
(쿼리문에 변수가 없기때문에 굳이 PreparedStatement 사용안함)
statement stmt = conn.createStatement();
String querySelect = "select * from oilbank";
ResultSet rs = stmt.exceuteQuery(querySelect);
// select 쿼리문을 사용했을 경우 반드시 ResultSet으로 반환 받아야한다.
또는
statement stmt = conn.createStatement("select * from ex1"); // 내부에 바로 쿼리문을 줄 수 있다.
PreparedStatement : 쿼리 내부에 변수를 생성할 경우 사용
접속 성공한 Connection 객체를 통해 생성
String query_insert = "insert into gas_station values (?,?,?,?,?,?,?)";
pstmt = conn.prepareStatement(query_insert);
pstmt.setString(1, cells[0].getContents()); => 1번째 물음표 위치에 변수 cells[0].getContents()의 값을 대입(치환)
=> setString()메소드 이용(문자열일경우)
executeQuery(); => select구문 실행
executeUpdate(); => insert/update/delete 구문 실행
: 두가지 메소드 모두 쿼리문을 전달 받아야한다. 없으면 이클립스 내에서는 오류가 뜨지 않지만 실행해서 오류 발생
메인에서 실행할 때는 데이터 삽입은 한번만 실행 후 주석처리를 하던 지우던 해야한다.
안그러면 계속 해서 같은 데이터가 쌓이게된다.
String uri = null;
//uri = "D:/Excercise/local_oil.xls";
//ExcelReaderClass.readExcel(uri);
오라클에 데이터 저장 끝
저장된 파일을 HTML파일로 만들어야한다.
PrintClass에서 tag를 만들고 HTML파일을 만드는 메소드를 만들 것이다.
makeTags 메소드에서 전체 데이터가 들어있는 ResultSet rs를 메인메소드에서 받는다.
FileWriter 클래스 사용
태그 및 HTML파일을 생성하기 위해서는 데이터가 필요하다.
오라클에 데이터를 저장 해놨기에 꺼내다 써야한다.
Query문 "select * from oilbank";
select쿼리문은 반드시 저장 타입을 ResultSet으로 받아야한다.
셀프 가능 주요소 개수와 비 셀프 주유소의 개수 파악하기
1.self 필드의 전체 데이터를 조회한 후 자바에서 검색
=> select self oilbank where self='Y';
select self oilbank where self='N';
2. 오라클이 제공하는 함수 사용 : count() 함수
=> select count(*) from oilbank where self='Y';
select count(*) from oilbank where self='N';
메인에서 보내는 값을 가지고 메소드 내부에서는 count()함수를 사용하여 개수를 구한다.
2번까지 끝났다.
다음 문제)
1. best_sandwiches_list_chicago_price_address.xls 읽어서
오라클에 저장 (Rank, Cafe, Menu, Price, Address)
2. 이미지 파일명을 저장 (30, 34번은 이미지가 없다. => default.jpg 대체)
오라클에 저장 (이미지.jpg)
오라클 : rank, cafe, menu, price, addr, img <== 필드명
저장된 데이터를 html 로 출력 (10행 5열)
rank menu img price addr => 순으로 되도록
'Learn > KH정보교육원' 카테고리의 다른 글
[KH정보교육원 당산] 연습문제3 (데이터베이스) (0) | 2021.04.07 |
---|---|
[KH정보교육원 당산] 21일차 (오라클과 엑셀 파일을 이용한 실습 - cafe HTML) (0) | 2021.04.07 |
[KH정보교육원 당산] 19일차 ( 데이터베이스 - Oracle ) (0) | 2021.04.05 |
[KH정보교육원 당산] 18일차 ( socket예제 - 퀴즈 만들기) (0) | 2021.04.02 |
[KH정보교육원 당산] 연습문제 2 (네트워크) (0) | 2021.04.01 |