본문 바로가기
☕ 따뜻한 개발 한 잔

[Oracle] Oracle19c 데이터 eclipse(2021-03)에 연결하기 / 왜 강의 그대로 따라가려해도 파일은 보이지 않는 것이늬

by 따따시 2022. 7. 19.

 

 

난 eclipse 는 2021-03 버전을 사용중이고, oracle은 19c를 깔았다.

 

BUT,

강의를 보면서 이클립스에 DB를 연동하려고 하는데, 문제에 직면 ^^ ( 문제 안생기면 섭섭하지 이젠? )

(문제 만날 때 내 마음)

 

 

내가 맞닥뜨린 문제와 어떻게 해결했는지를 적어보도록 하게따

 


 

<맞닥뜨린(맞닥뜨리고 싶진 않았^^) 문제>

1. 원래는 oracle안에 있는 jdbc를 써야하는데, 난 oracle안에 jdbc가 없었어 (sql developer에 있었음 ojdbc8)

 

 대응👉

 

컴퓨터에 ojdbc라고 검색했는데, sql developer에 ojdbc8이 있었음! 열쒸미 구글링하면서 oracle19c와 맞는 버전인 jdbc를 확인했고, ojdbc8이 oracle19c와 맞는다는 것도 확인했다.

sql developer안에 있는 ojdbc8을 복사해서 사용하기로 결정

 

2. 원래는  java폴더 안에  ext인가 폴더가 있고 거기 ojdbc를 복사해서 넣어야 하는데 난 ext폴더도 없쒀!!!

    (내가 깐 건 jdk15 였는데, 아마 버전이 달라서 파일이 달랐던 거 아닐까?)

 

 대응👉

 

톰캣 lib에 ojdbc8을 복사해서 넣었음

 


정리해보면, 내가 이클립스와 DB를 연동한 방법은 아래와 같다.🤔

 

<내가 연동한 방식>

1. sql developer에 ojdbc8.jar을

C:\hongtomcat\apache-tomcat-9.0.64\lib 에 넣었다.

2. String url="jdbc:oracle:thin:@localhost:1521:orcl"; 의

localhost:1521: 뒤를 listener 이름 orcl로 해줬음

<%@page import="java.sql.DriverManager" %>
<%@page import="java.sql.ResultSet" %>
<%@page import="java.sql.Statement" %>
<%@page import="java.sql.Connection" %>



<%@ page language="java" contentType="text/html; charset=EUC-KR"
    pageEncoding="EUC-KR"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="EUC-KR">
<title>Insert title here</title>
</head>
<body>

<%!
	Connection connection;
	Statement statement;
	ResultSet resultSet;
	
	String driver="oracle.jdbc.driver.OracleDriver";
	String url="jdbc:oracle:thin:@localhost:1521:orcl";
	String uid="scott";
	String upw="tiger";
	String query = "select * from member";

%>

<%
	try {
	Class.forName(driver); //jdbc드라이버를 로드하는 작업 (oracle.jdbc.driver.OracleDriver)
	connection=DriverManager.getConnection(url,uid,upw); //connection객체에 접근(연결)하는 객체//url값:실제로 db가 어디에 있는지
	statement = connection.createStatement(); // connection객체로부터 createStatement해서
	resultSet = statement.executeQuery(query); //결과값 얻기, 이 resultset에 결과가 담겨진다.
	
	while(resultSet.next()){
		String id = resultSet.getString("id");
		String pw = resultSet.getString("pw");
		String name = resultSet.getString("name");
		String phone = resultSet.getString("phone");
		
		out.println("아이디: "+id+"비밀번호: "+pw+"이름: "+name+"전화번호: "+phone+"<br/>");
		
	}
	} catch(Exception e){
		
	}finally{
		try{
			if(resultSet != null)resultSet.close();
			if(statement != null)statement.close();
			if(connection != null)connection.close();
			
		}catch(Exception e){}
	}

%>



</body>
</html>

댓글