Programming/JAVA

MVC 패턴 / ojdbc6.jar / Statement 와 PreparedStatement / ClassNotFoundException

Jayna. 2024. 1. 13. 16:41
728x90

 

1. MVC 패턴

Model

데이터와 관련된 역할. 데이터를 담는다거나, DB에 접근해서 데이터 입출력

View

사용자가 보게 될 시각적인 요소 / 화면 (입력, 출력)

Controller

사용자의 요청을 받아서 처리 후 응답화면을 지정하는 역할

 - View 단에서만 출력문(System.out.println)를 사용한다.

 - Model의 DAO(Data Access Object)단에서만

   DB에 직접적을 접근한 후 해당 SQL문 실행 및 결과를 받는다.

 

2. ojdbc6.jar

프로젝트 선택 후 마우스 오른쪽 클릭 -> Properties -> Java Build Path -> Libraries -> Add External JARs

-> ojdbc6.jar가 있는 경로에서 jar 선택 -> Apply and Close

 

Referenced Libraries에 ojdbc6 추가 확인

ojdbc6.jar 파일을 추가하지 않으면 ClassNotFoundException 발생

728x90

 3. Statement란?  

해당 DB에 SQL문을 전달하고 실행한 후 결과를 받아주는 객체

Connection 클래스의 createStatement() 메소드를 호출하여 생성

실행시 SQL문을 매개변수로 전달하여 질의를 수행

 

Statement : 완성된 SQL문을 실행할 수 있는 객체

PreparedStatement : SQL문을 바로 실행하지 않고 잠시 보관하는 개념으로,

 미완성된 SQL문을 먼저 전달하고 실행하기 전에 완성 형태로 만든 후 실행만 하면 됨.

 미완성된 sql문 만들기( 사용자가 입력한 값들이 들어갈 수 있는 공간을 ?(위치홀더)로 확보

 각 위치홀더에 맞는 값들을 세팅

 

Statement(부모)와 PreparedStatement(자식) 차이점

1 )

Statement 는 완성된 SQL문,

PreparedStatement는 미완성된 SQL문

 

2) 

Statement 객체 생성시 stmt = conn.createStatement();

PreparedStatement 객체 생성시 pstmt = conn.prepareStatement(sql);

 

3)

Statement로 SQL문 실행시 결과 = stmt.executeXXX(sql);

PreparedStatement로 SQL문 실행시 ?(위치홀더)로 빈 공간을 실제 값으로 채워준 뒤 실행.

pstmt.setString(?위치, 실제값);

pstmt.setInt(?위치, 실제값);

결과 = pstmt.executeXXX();

 

 

JDBC 처리순서 / 오라클 oracle 연동

MVC 패턴 / ojdbc6.jar / Statement 와 PreparedStatement / ClassNotFoundException 1. MVC 패턴 Model 데이터와 관련된 역할. 데이터를 담는다거나, DB에 접근해서 데이터 입출력 View 사용자가 보게 될 시각적인 요소 /

jaynarecord.tistory.com

 

 

728x90