이번 시간에는 자바 jdbc와 오라클을 활용하여
해당 부서의 사번, 사원명, 부서명, 업무, 급여, 근무지의 사원 정보를 출력하는 자바 프로그램 예제를 올려보겠습니다.
여기서 잠깐..
지금 같은 예제는 소스를 복사해서 붙여넣는다고 하여 실행되는것이 아니라
오라클 (sql developer)에 'EMP' 테이블과 'DEPT' 테이블이 있어야 가능합니다.
EMP, DEPT 테이블은 직접 만들어보셔서 테스트 해보시면 됩니다
테이블 만드는건 어렵지 않죠~
자 그럼 예제와 실행 결과 화면을 올려보겠습니다
렛츠고~!!
========================================================
public class test {
public static void main(String[] args) throws Exception {
String deptno = JOptionPane.showInputDialog("검색하고자 하는 부서번호를 입력하세요");
// 해당 부서의 사원 정보를 출력하는 프로그램을 작성하세요
// 사번, 사원명, 부서명, 업무, 급여, 근무지 - select (emp,dept와 조인)
//1. 드라이버 로딩
Class.forName("oracle:jdbc:driver:OracleDriver");
//2. DB연결
String url="jdbc:oracle:thin:@localhost:1521:ORCL";
String user="scott", pwd="tiger";
Connection con=DriverManager.getConnection(url, user, pwd);
System.out.println("DB에 연결");
//3. Statement 얻기
Statement stmt = con.createStatement();
//4. sql문 작성(select문, join문)
String sql = "SELECT e.deptno, empno, ename, dname, job, sal, loc "
+" FROM EMP E JOIN DEPT D"
+" ON E.DEPTNO=D.DEPTNO"
+" WHERE E.DEPTNO= "+deptno;
System.out.println(sql);
//5. 실행-executeXXXX()
ResultSet rs = stmt.executeQuery(sql);
System.out.println("-----------------------------------------------------------------------");
System.out.println("dno"+"\t"+"empno"+"\t"+"ename"+"\t"+"dname"+"\t"+"job"+"\t"+"sal"+"\t"+"loc");
//6. 실행 결과 데이터 가져와 출력하기
while(rs.next()){
int dno=rs.getInt(1);
int empno=rs.getInt(2);
String ename=rs.getString(3);
String dname=rs.getString(4);
String job=rs.getString(5);
float sal=rs.getFloat(6);
String loc=rs.getString(7);
System.out.println(dno+"\t"+empno+"\t"+ename+"\t"+dname+"\t"+job+"\t"+sal+"\t"+loc);
}
System.out.println("-----------------------------------------------------------------------");
//7. close
rs.close();
stmt.close();
con.close();
}
}
========================================================
위의 소스 코드를 실행하면 아래와 같은 화면이 자바 콘솔창에 출력됩니다
부서번호를 입력하라는 콘솔창이 뜨면 10,20,30번 부서 중에
30번 부서번호를 입력하게 되면
30번 부서의 정보가 출력되면서 프로그램은 끝이 나게 됩니다
댓글 없음:
댓글 쓰기