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

 我来答
paul50060049
2017-07-01 · 超过20用户采纳过TA的回答
知道答主
回答量:43
采纳率:0%
帮助的人:39.5万
展开全部
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;


}


 
}
samismiling
2017-07-01 · 知道合伙人软件行家
samismiling
知道合伙人软件行家
采纳数:1340 获赞数:5603

向TA提问 私信TA
展开全部
你没把oracle的jar包放到你的项目lib里
追问
炸包复制到.m2下了,就是加载不出来
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
云启电气
2017-07-01 · TA获得超过119个赞
知道答主
回答量:110
采纳率:0%
帮助的人:13万
展开全部
凤凰湖见
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
青年节奏
2017-07-01 · TA获得超过222个赞
知道答主
回答量:164
采纳率:81%
帮助的人:20.2万
展开全部
ojdbc6导包了吗?检查以下路径,数据库url没错吧
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式