Class.forName("oracle.jdbc.driver")의 실제 용도는 무엇입니까?Oracle Driver")를 데이터베이스에 연결하는 동안?
명령어는 무엇입니까?
Class.forName("oracle.jdbc.driver.OracleDriver")
Oracle 데이터베이스에 접속할 때 정확히 무엇을 할 수 있을까요?같은 일을 할 수 있는 다른 방법이 있나요?
Qualified Name) FQCN(FQCN; 완전 클래스 이름)을 .oracle.jdbc.driver.OracleDriver
.
지정된 클래스가 현재 클래스 로더에 의해 로드되는지 확인하는 것 외에는 데이터베이스에 연결하는 것과 관련하여 "처리"하지 않습니다.쓰는 것과 쓰는 것에는 근본적인 차이가 없다.
Class<?> driverClass = Class.forName("oracle.jdbc.driver.OracleDriver");
// and
Class<?> stringClass = Class.forName("java.lang.String");
Class.forName("com.example.some.jdbc.driver")
JDBC를 사용하는 레거시코드에 콜이 표시됩니다.이는 JDBC 드라이버를 로드하는 레거시 방식이기 때문입니다.
Java 튜토리얼에서:
JDBC에서는.
Class.forName
이에는 .했습니다.java.sql.Driver
에는, 「JDBC」를 되어 있습니다.java.sql.Driver
.
JDBC 4.0보다 전의 으로 로드 할 가 있습니다, 4.보다 전의 드라이버는 , 방법( 「」, JDBC 4.0보다 전의 드라이버는 으로 로드 할 필요가 있습니다.Class.forName
추가 정보
- 반환값을 사용하지 않을 경우 Class.forName()은 어떤 목적으로 사용됩니까?
- Class.forName()은 어떻게 동작합니까?
- Class.forName("org.sqlite")이란?JDBC";'도?
- Class.forName()의 목적은 무엇입니까?MY_JDBC_DRIVER')?
- JDBC 드라이버 로드 중
다음과 같은 형태로 드라이버를 등록합니다.
public class SomeDriver implements Driver {
static {
try {
DriverManager.registerDriver(new SomeDriver());
} catch (SQLException e) {
// TODO Auto-generated catch block
}
}
//etc: implemented methods
}
Java JDBC 튜토리얼에서 다음을 수행합니다.
JDBC에서는.
Class.forName
JDBC 4.0보다 전의 으로 로드 할 가 있습니다, 4.보다 전의 드라이버는 , 방법( 「」, JDBC 4.0보다 전의 드라이버는 으로 로드 할 필요가 있습니다.Class.forName
Java 1.) 11g(11.1)에 전화할 Class.forName
그렇지 않으면 드라이버를 초기화하기 위해 호출해야 합니다.
보다 이전 6보다 이전 버전DriverManager
어떤 JDBC 드라이버를 사용하고 싶은지 클래스에서는 알 수 없습니다. Class.forName("...")
드라이버 클래스를 미리 로드하는 방법이었습니다.
Java 6을 사용하는 경우 더 이상 이 작업을 수행할 필요가 없습니다.
이 명령은 DriverManager 인스턴스에서 사용할 수 있도록 Oracle jdbc 드라이버 클래스를 로드합니다.클래스가 로드되면 시스템은 클래스를 사용하여 Oracle에 연결할 수 있습니다.대신 Driver Manager의 registerDriver 메서드를 사용하여 필요한 JDBC 드라이버 인스턴스와 함께 전달할 수 있습니다.
또는 JVM을 시작할 때 jdbc.drivers System 속성을 사용하여 명령줄에서 필요한 드라이버를 지정할 수도 있습니다.
oracle.jdbc를 사용합니다.Oracle.jdbc.driver가 아닌 OracleDriver.Oracle 드라이버드라이버 jar 파일이 「WEB-INF\lib」디렉토리에 있는 경우는, Tomcat 를 사용하고 있는 경우는 등록할 필요가 없습니다.이를 test.jsp로 저장하고 웹 디렉토리에 저장한 후 Tomcat Manager에서 웹 앱 폴더를 다시 배포합니다.
<%@ page import="java.sql.*" %>
<HTML>
<HEAD>
<TITLE>Simple JSP Oracle Test</TITLE>
</HEAD><BODY>
<%
Connection conn = null;
try {
Class.forName("oracle.jdbc.OracleDriver");
conn = DriverManager.getConnection("jdbc:oracle:thin:@XXX.XXX.XXX.XXX:XXXX:dbName", "user", "password");
Statement stmt = conn.createStatement();
out.println("Connection established!");
}
catch (Exception ex)
{
out.println("Exception: " + ex.getMessage() + "");
}
finally
{
if (conn != null) {
try {
conn.close();
}
catch (Exception ignored) {
// ignore
}
}
}
%>
언급URL : https://stackoverflow.com/questions/8053095/what-is-the-actual-use-of-class-fornameoracle-jdbc-driver-oracledriver-while
'it-source' 카테고리의 다른 글
vue 컴포넌트의 $route 개체를 모킹하는 쓰기 테스트 방법 (0) | 2022.10.21 |
---|---|
Rasberry Pi2에서 실행되는 MariaDB의 테이블에 CSV를 로드하려면 어떻게 해야 합니까? (0) | 2022.10.21 |
MySQL 기본 키 업데이트 중 (1) | 2022.10.21 |
PHP에서 플랫폼 독립 디렉토리 구분자를 가져오려면 어떻게 해야 합니까? (0) | 2022.10.21 |
LIKE 절을 사용할 때 인덱스 예외를 적용하시겠습니까? (0) | 2022.10.21 |