Java 데이터베이스 연결 작업

JDBC란 무엇입니까?



JDBC(Java Database Connectivity)는 Oracle Java Standard Edition의 일부인 Java API입니다. 클라이언트가 데이터베이스에 연결하고 쿼리를 실행할 수 있습니다. 이러한 쿼리는 쿼리에 의해 생성되고 Java 응용 프로그램에서 쉽게 사용할 수 있는 테이블을 나타내는 개체에 저장됩니다. 개인적으로 저는 Java에서 관계형 데이터베이스에 연결하는 다른 방법에 대해 잘 알지 못하지만 JDBC가 매우 안정적이고 사용하기 쉽다는 것을 알게 되었으며 이 기능을 찾는 모든 Java 개발자에게 JDBC를 권장합니다.

연결 설정



대부분의 JDBC 설정은 YML 파일에서 수행됩니다. 데이터베이스 쿼리를 시작하는 데 필요한 모든 것을 모으는 데 몇 줄의 코드만 있으면 됩니다.

database:
   name: SchoolDatabase
   connection: jdbc:sqlserver:path-to-database
   queries:
      students: SELECT * FROM students
      teachers: SELECT * FROM teachers


다음은 YML 파일에서 설정이 어떻게 보이는지에 대한 샘플입니다. 여기에서 이러한 설정은 응용 프로그램 전체에서 사용할 구성 파일에서 참조할 수 있습니다. 한 가지 중요한 점은 JDBC 연결을 설정하기 위해 YML 파일을 사용할 필요가 없다는 것입니다. 하지만 이 방법을 사용하면 모든 것을 관리하기가 훨씬 쉽고 D.R.Y. 연결 문자열이나 쿼리를 변경해야 하는 경우.

이제 쿼리 실행을 시작할 준비가 되었습니다! 먼저 코드를 던지고 모든 다른 부분이 의미하는 바에 대해 이야기하겠습니다.

try {
   Connection conn = DriverManager.getConnection(database.connection, root, password);
   Statement stmt = conn.createStatement();
   ResultSet rs;

   rs = stmt.executeQuery(database.queries.student);
   while ( rs.next() ) {
      String lastName = rs.getString("Lname");
      System.out.println(lastName);
   }
   conn.close();
   } catch (Exception e) {
      System.err.println("Got an exception! ");
      System.err.println(e.getMessage());
  }


그게 다야! 이것이 JDBC를 사용하여 데이터베이스를 쿼리하고 적절한 예외를 처리하는 데 필요한 전부입니다. 그러나 거기에는 당신이 전에 본 적이 없는 많은 것들이 있습니다.

연결: 연결은 매우 자명하며 우리가 사용 중인 데이터베이스에 대한 연결을 나타냅니다. YML 파일에서 데이터베이스에 대한 경로를 생성했지만 연결된 루트 또는 비밀번호가 있는 경우 이들도 포함되어야 합니다.

DriverManager: 연결은 데이터베이스에 대한 연결을 나타내기 위한 것이지만 실제로는 연결을 설정하는 것은 DriverManager입니다.

문: 이제 데이터베이스에 성공적으로 연결되었으므로 문 개체를 사용하여 실제로 일부 쿼리를 실행할 수 있습니다.

ResultSet: 원하는 쿼리를 실행하기 위해 Statement를 사용하고 출력은 ResultSet 형식으로 제공됩니다. 이는 관계형 데이터베이스에서 볼 수 있는 테이블과 유사한 형식으로 결과 데이터를 보유합니다. rs.next()를 사용하여 모든 행을 반복할 수 있으며 String lastName = rs.getString("Lname"); 줄에서 문자열 "Lname"은 열 헤더가 되고 현재 행의 해당 열에 있는 값은 lastName에 저장됩니다.

결론



이것은 JDBC로 가능한 것에 대한 매우 간략한 개요였지만 아직 밝혀내야 할 것이 훨씬 더 많습니다. 내가 보여준 것 외에도 저장 프로시저를 호출하고 RowMapper 함수를 사용하여 특정 행이 ResultSet에 추가되는 방식을 결정할 수 있습니다(SQLWHERE과 유사). 개인 또는 직업 개발에 이 기술을 사용할 수 있다고 생각한다면 모든 사람이 이 기술에 대해 더 많은 연구를 할 것을 권장합니다.

행복한 코딩!!

좋은 웹페이지 즐겨찾기