-
[JAVA] 오라클 JDBC 연결, insert문 실행해보기개발 끄적끄적/Android 2020. 5. 30. 16:22반응형
Oracle SQL developer를 사용해 본 적 있으신가요?
Oracle 데이터베이스를 Java에서 사용하는 방법을 알아보겠습니다.
Oracle과 Java가 설치되어 있다는 전제 하에 포스팅하였습니다.
JDBC 연결
우선 Java와 Oracle을 연동하기 위해선 JDBC(Java DataBase Connectivity)가 필요합니다.
이는 자바를 이용해 데이터베이스를 조작하기 위한 자바의 라이브러리입니다.오라클을 설치할 경우 기본적으로 jdbc파일이 저장되어 있습니다.
이 파일을 자바가 설치되어 있는 경로에 붙여 넣으며 연동이 시작됩니다.큰 흐름은 이렇게 됩니다.
-
오라클에서 제공하는 *.jar 파일 가져오기
-
ojdbc6.jar
-
-
자바 프로젝트에 붙여넣기
-
lib 폴더에 jar 파일을 붙여넣기
-
eclipse에서 Add jar하기
-
1. *.jar 파일 가져오기
경로
C:\app\사용자 계정\product\11.2.0\dbhome_1\jdbc\lib위와 같은 경로에 들어가면 ojdbc6.jar 파일이 있습니다. 이를 복사해 java 프로젝트에 붙여넣으면 됩니다.
2. 자바 프로젝트에 붙여넣기
<경로>
C:\Program Files\Java\jre-10.0.1\lib위의 경로에 아까 찾은 ojdbc6.jar 파일을 붙여 넣으시면 됩니다.
3. eclipse에서 바로 JDBC 드라이버를 연결하는 방법이 있습니다.
먼저 적당한 프로젝트를 하나 생성한 후, 마우스 우클릭을 해봅니다. 맨 아래 Properties 를 클릭합니다.
Properties화면입니다.
Java Build Path - Libraries - Modulepath 를 클릭하면 우측의 Add External JARs... 버튼이 활성화됩니다.
Add External JARs... 버튼을 눌러줍시다.찾아둔 ojdbc.jar 파일을 선택하고 모두 완료하면
Referenced Libraries가 추가된 것을 확인할 수 있습니다.
이제 Java 파일을 생성해 간단한 명령문을 만들어 실행해보겠습니다.
1. DBHelper.java
import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; public class DBHelper { public static Connection dbConn; public static Connection getConnection() { Connection connect = null; try { String user = "scott"; String pw = "1234"; String url = "jdbc:oracle:thin:@localhost:1521:orcl"; Class.forName("oracle.jdbc.driver.OracleDriver"); connect = DriverManager.getConnection(url, user, pw); } catch (ClassNotFoundException cnfe) { System.out.println("DB 드라이버 로딩 실패 :"+cnfe.toString()); } catch (SQLException sqle) { System.out.println("DB 접속실패 : "+sqle.toString()); } catch (Exception e) { System.out.println("Unkonwn error"); e.printStackTrace(); } return connect; } }
2. DB.java
import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.util.Scanner; public class DB { public static void main(String args[]) { Connection conn = null; PreparedStatement pstm = null; ResultSet rs = null; String name; String street; String city; Scanner scan = new Scanner(System.in); System.out.println("사원이름 : "); name = scan.nextLine(); System.out.println("거리 : "); street = scan.nextLine(); System.out.println("도시 : "); city = scan.nextLine(); try { String query = "insert into employee values ('" +name+ "', '" +street + "', '"+ city + "')"; conn = DBHelper.getConnection(); pstm = conn.prepareStatement(query); int r = pstm.executeUpdate(); //본문에서는 insert 문을 사용했지만 select 문을 사용하려면 //rs = pstm.executeQuery(); 를 사용하면 됩니다. //executeUpdate문은 insert, delete, update문을 사용할 수 있으며 //executeQuery문은 select 문에서만 사용됩니다. System.out.println("============================================"); System.out.println("추가되었습니다. -> ('" +name+ "', '" +street + "', '"+ city + "')"); } catch (SQLException sqle) { System.out.println("예외 발생"); sqle.printStackTrace(); }finally{ try{ if ( rs != null ){rs.close();} if ( pstm != null ){pstm.close();} if ( conn != null ){conn.close(); } }catch(Exception e){ throw new RuntimeException(e.getMessage()); } } } }
실행결과
코드 설명
1. DBHelper.java
jdbc:oracle:thin -> 오라클에 접속
@localhost -> 자신의 IP주소
1521 -> 기본 설정된 포트 번호
orcl -> 기본 설정된 DB 이름
오라클의 기본 계정인 scott을 이용했습니다. 별도로 변경하지 않았다면 포트와 DB이름은 위와 같이 사용하시면 됩니다.
아래 두 줄은 JDBC 드라이버를 로딩하고, 입력된 정보를 바탕으로 오라클에 접속을 하는 것입니다.
2. DB.java
사용자가 직접 정보를 입력할 수 있도록 scan.nextLine()으로 정보를 받아 query문을 구성했습니다.
DB에 연결한 후 prepareStatemnet문을 사용해 생성해둔 query문을 보냅니다.
executeUpdate() 메소드는 쿼리문을 실행하는 것입니다.
※ 참고
본문에서는 insert 문을 사용했지만 select 문을 사용하려면 rs = pstm.executeQuery(); 를 사용하면 됩니다.
executeUpdate문은 insert, delete, update문을 사용할 수 있으며
executeQuery문은 select 문에서만 사용됩니다.참고자료
반응형'개발 끄적끄적 > Android' 카테고리의 다른 글
[Android Kotlin] 갤러리에서 이미지 가져와 RecyclerView에 적용하기 (0) 2020.06.03 [Android Kotlin] Permission(권한) 얻기 (0) 2020.06.02 [Android Kotlin] RecyclerView Adapter View Type (리사이클러뷰 여러 뷰타입) (0) 2020.06.01 [Android Kotlin] Navigation Drawer를 이용한 사이드 메뉴 만들기 (0) 2020.06.01 [Android Studio] 초보 개발자 로그캣(LogCat) 확인 방법 - 에러 찾는 방법 (0) 2020.05.30 -