使用jdbc创建连接时为什么老是报java.lang.ClassNotFoundException: oracle.jdbc.driver.OracleDriver

是这样的,想请说下,使用jdbc创建连接时为什么老是报java.lang.ClassNotFoundException: oracle.jdbc.driver.OracleDriver
最新回答
林间有雌雄

2024-11-04 12:15:10

oracle_jdbc.properties文件中的内容
oracle_jdbc_driver=oracle.jdbc.driver.OracleDriver
oracle_jdbc_url=jdbc:oracle:thin:@192.168.0.120:orcl
oracle_jdbc_username=sys
oralce_jdbc_password=password

OracleJdbcUtils.java文件中的内容
package com.eshop.common.jdbc;

import java.io.IOException;
import java.io.InputStream;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.SQLException;
import java.util.HashMap;
import java.util.Map;
import java.util.Properties;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;


public class OracleJdbcUtils {
private static Logger logger = LoggerFactory.getLogger(OracleJdbcUtils.class);

private static  String JDBC_DRIVER;
private static  String JDBC_URL;
private static  String JDBC_USERNAME;
private static  String JDBC_PASSWORD;


public OracleJdbcUtils(){
InputStream inputStream = OracleJdbcUtils.class.getResourceAsStream("/oracle_jdbc.properties");
Properties pro = new Properties();
try {
pro.load(inputStream);
} catch (IOException e) {
e.printStackTrace();
}
JDBC_DRIVER = pro.getProperty("oracle_jdbc_driver");
JDBC_URL = pro.getProperty("oracle_jdbc_url");
JDBC_USERNAME = pro.getProperty("oracle_jdbc_username");
JDBC_PASSWORD = pro.getProperty("oralce_jdbc_password");
}


private Connection openConnection(){
Connection con = null;
try {
Class.forName(JDBC_DRIVER).newInstance();
} catch (InstantiationException e) {
e.printStackTrace();
} catch (IllegalAccessException e) {
e.printStackTrace();
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
try {
con =  DriverManager.getConnection(JDBC_URL,JDBC_USERNAME, JDBC_PASSWORD);
} catch (SQLException e) {
e.printStackTrace();

return con;
}


public Map<String,Object> getMap(String sql,Object ob[]) {
Connection conn = openConnection();
PreparedStatement st = null;
ResultSet set = null;
Map<String, Object> rowData = null;
try {
 st = conn.prepareStatement(sql);
 rowData = null;   
for (int i = 0; i < ob.length; i++) {
st.setObject(i+1, ob[i]);
}
set = st.executeQuery();
if(set != null){
ResultSetMetaData md = set.getMetaData(); //得到结果集(rs)的结构信息,比如字段数、字段名等
 int columnCount = md.getColumnCount(); //返回此 ResultSet 对象中的列数   

 if(set.next()){
 rowData = new HashMap<String,Object>(columnCount);
 for (int i = 1; i <= columnCount; i++) {   
                rowData.put(md.getColumnLabel(i).toLowerCase(), set.getObject(i));   
 }
 }
}
} catch (SQLException e) {
 
e.printStackTrace();
}finally{
if(set != null){
try {
set.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if(st!=null){
try {
st.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if(conn != null){
try {
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
return rowData;
}



public int update(String sql,Object ob[]){
Connection conn = openConnection();
PreparedStatement st = null;
int row = 0;
try {
st = conn.prepareStatement(sql);
for (int i = 0; i < ob.length; i++) {
st.setObject(i+1, ob[i]);
}
row = st.executeUpdate();
} catch (SQLException e) {
e.printStackTrace();
}finally{
if(st!=null){
try {
st.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if(conn != null){
try {
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
return row;


}


 
}
净雅

2024-11-04 05:36:28

你没把oracle的jar包放到你的项目lib里
追问
炸包复制到.m2下了,就是加载不出来
缺少你爱情的回应

2024-11-04 05:30:06

凤凰湖见
玖梦

2024-11-04 16:26:20

ojdbc6导包了吗?检查以下路径,数据库url没错吧