학원수업을 모두 듣자니 이미 아는 내용이 많아 시간이 아깝고 끝자리라 잘보이지도 않는다.
질낮은 환경에서 듣고 집에서 또 반복하느니 학원에서 알고리즘 문제 풀고 집에서 학원내용 따라잡기로 하였다. (모르는 기술이 나올때마다 클론코딩)
학원과 셋팅이 모두 달라서 에러투성이 지만 (eclipse, OracleDB, Linux, ip address 등등) 그게 오히려 문제 해결능력을 올려주어 실무에서 도움이 될것이라고 생각하여 오히려 좋다고 생각한다. (대신 시간이 많이걸린다 . . .)
DAO객체를 상속받은 PersonDAO객체에서는 PersonVO를 이용하여 OracleDB에 SQL쿼리후 데이터를 얻어올 생각이다.

JDBC부분에 나오는 중요한 3가지 객체에대해 오라클 공식문서에서 정의를 찾아보자
A Connection object's database is able to provide information describing its tables(커넥션 오브젝트가 연결한 DB의 table같은 정보를 볼 수 있다.)
The object used for executing a static SQL statement and returning the results it produces.
By default, only one ResultSet object per Statementobject can be open at the same time(SQL문을 수행해주고 그 결과를 return 해주는 객체이다)(추신-ResultSet은 Statement객체 하나당 한개 존재가능)
A table of data representing a database result set, which is usually generated by executing a statement that queries the database.

선생님 코드를 좀 읽고 클론코딩 진행하자
주소랑 오라클 인스턴스 이름 바뀜, 유저이름도 조금 다름

읽던중에 해당 코드가 잘 이해되지 않았는데 JVM에 드라이버를 올려주는거라고 하는데 제대로 이해할려면 시간이 너무걸릴것같으니 관련 링크만 첨부해놓고 필요하면 보자
https://limdevbasic.tistory.com/26

test()함수라고 적혀있는데 슬 보니 연결하는 객체? 같은걸 만들어서 아무테이블에 있는 열(banner)내용을 가져오는 듯하다.

close()메서드는 앞에서 선언해놓은 rs stmt conn을 닫는건데 가르키는 객체가 있다면 닫아라?

공식문서 찾아보니 자동으로 닫히길 기다리는 대신 즉시 닫아라 인것같다.

이제 DAO 클래스는 어느정도 보았으니 그걸 상속받은 PersonDAO클래스를 보자
리스트는 PersonVO 객체를 저장하는 모양이다VO는 DB의 행과 대응
-> 반복문안에서 PersonVO이름을 row라고 해놓은걸 보니 저게 행이 맞는
반복문 안쪽에서 PersonVO객체를 만들고 resultset에서 해당 행의 특정 열값을 받아온다
row.name = rs.getString("name");
list.add(row);
List<PersonVO> )형식으로
당연하게도 한번에 안된다!
구글링 해보니

인스턴스 이름이랑 서비스 이름 서로 다를때 이런 현상이 일어난단다.
저번글에서sqldeveloper연결시 서비스 이름으로 하니까 된거같은데

↑ ↑ ↑ (지난 글) ↑ ↑ ↑
인스턴스 이름은 잘 모르겠으니(찾을수가 없으니) 서비스 이름으로 연결하는 문법으로 해보자
-SID : jdbc:oracle:thin:@[ip]:[port]:[sid] ---> 이걸로 하니 에러
-ServiceName : jdbc:oracle:thin:@[ip]:[port]/[ServiceName] ---> 이걸로 다시시도 해보자

testSQL(DB정보 출력)은 되었는데 테이블이 없다고 하네 테이블 만드는걸 깜빡했다.

디벨로퍼 에서 SQL자료코드 가져와서 만들었는데 한글깨진다
UTF-8로 바꾸고 재시작했는데도 그대로인거보니 코드 가져오는데서 오류뜬건 아닌가 생각된다. DAO로 연결하는게 목적이니 일단 pass

와우 ㅋㅋ 드디어 되었다

뭔가 찝찝하니 쳇봇에게 임의로 데이터를 만들어달라고 해서 직접 넣어보았다

이제야 깔끔하네