Notice
Recent Posts
Recent Comments
Link
«   2025/02   »
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28
Tags
more
Archives
Today
Total
관리 메뉴

Full-Stack 개발자가 되려는 작은 개발자의 블로그

JAVA_JDBC연동 본문

강의 정리/Java

JAVA_JDBC연동

jhjin 2020. 5. 4. 15:46
package j_test2;

import java.sql.*;

public class DbExecute {
	public static void main(String[] args) {
		String driver="oracle.jdbc.driver.OracleDriver";
		String url="jdbc:oracle:thin:@127.0.0.1:1521:xe";
		String user="사용자명";
		String password="비밀번호";
				
		//접속 처리 객체 Connection 선언
		Connection conn=null;
		//쿼리 실행 객체 Statement,PreparedStatement 선언
		Statement stmt=null;
		PreparedStatement ps=null;
		//DB 검색 결과를 저장하는 객체 ResultSet 선언
		ResultSet rs=null;
		
		//쿼리문 > membertbl 테이블의 모든 내용 검색
		//Statement용 쿼리
		String query="select * from 테이블명 order by 속성";
		//PreparedStatement용 쿼리
		String query2="insert into mm(mid,mname,mpass) values(?,?,?)"; 
		
		try {
			Class.forName(driver);
			
			conn=DriverManager.getConnection(url,user,password);
			
			//DB 검색 결과를 저장 할 변수
			String mId=null;
			String mName=null;
			String mPass=null;
			String mGrade=null;
			
			//쿼리 실행 객체 생성
			stmt=conn.createStatement();
			//PreparedStatement 생성
			ps=conn.prepareStatement(query2);
			//'?'부분 채워넣기
			ps.setString(1, "test5");
			ps.setString(2, "test5");
			ps.setString(3, "test555");
			
			//insert,update,delete는 같은 메소드 사용
			//PreparedStatement.executeUpdate()
			int result=ps.executeUpdate();
			
			//commit 실행
			conn.commit();
			
			System.out.println(result+"건 삽입 성공");
			
			//쿼리문 실행 및 결과 얻기
			rs=stmt.executeQuery(query);
			

			//실행 결과는 1개 이상이 될 수 있음.
			//반복으로 rs에 저장된 결과를 가져와서 처리
			while(rs.next()) {
				//rs.next()는 결과가 있으면 true, 없으면 false
				mId=rs.getString("mid");
				mName=rs.getString("mname");
				mPass=rs.getString("mpass");
				mGrade=rs.getString("mgrade");
				
				System.out.println("=======================");
				System.out.println("ID : "+mId);
				System.out.println("Name : "+mName);
				System.out.println("Password : "+mPass);
				System.out.println("Grade : "+mGrade);
			}
			
			
		} catch (ClassNotFoundException e) {
			System.out.println("드라이버 로드 실패");
		} catch (SQLException e) {
			e.printStackTrace();
			System.out.println("DB 연결 실패");
		}finally {
			//ResultSet > Statement > Connection 순으로 close
			try {
				if(rs!=null) rs.close();
				if(stmt!=null) stmt.close();
				if(ps!=null) ps.close();
				if(conn!=null) conn.close();
			} catch (SQLException e) {
				System.out.println("DB 연결 해제 실패");
			}
		}
	}
}

'강의 정리 > Java' 카테고리의 다른 글

학교 인적 관리 프로그램(SchoolPrj)  (0) 2020.04.18
객체지향 실습5  (0) 2020.04.18
객체 지향 실습 4  (0) 2020.04.07
객체 지향 실습2  (0) 2020.04.01
물품 관리 프로그램(Homeminus)  (1) 2020.04.01
Comments