编写的Java程序连接不上Oracle数据库

程序如下:JDBCTEST:... 程序如下:JDBC TEST: 展开
 我来答
育知同创教育
2016-09-15 · 百度知道合伙人官方认证企业
育知同创教育
1【专注:Python+人工智能|Java大数据|HTML5培训】 2【免费提供名师直播课堂、公开课及视频教程】 3【地址:北京市昌平区三旗百汇物美大卖场2层,微信公众号:yuzhitc】
向TA提问
展开全部

Java程序连接不上Oracle数据库的原因会有很多可能性,比如代码编写错误,数据库配置有问题等等,都会屋连接失败的。

工具:

oracle

Java程序连接Oracle代码及注释已在代码中标明

package com.java.dbtest;  
  
import java.sql.Connection;  
import java.sql.DriverManager;  
import java.sql.PreparedStatement;  
import java.sql.ResultSet;  
import java.sql.SQLException;  
  
public class TestConnection implements DBTest{  
  
    public void SelectUser(){  
  
        //设定数据库驱动,数据库连接地址、端口、名称,用户名,密码  
        String driverName="oracle.jdbc.driver.OracleDriver";  
        String url="jdbc:oracle:thin:@localhost:1521:BJPOWERNODE";  //test为数据库名称,1521为连接数据库的默认端口  
        String user="zhidao";   //aa为用户名  
        String password="zhidao";  //123为密码  
          
        PreparedStatement pstmt = null;  
        ResultSet rs = null;  
          
        //数据库连接对象  
        Connection conn = null;  
          
        try {  
            //反射Oracle数据库驱动程序类  
            Class.forName(driverName);  
              
            //获取数据库连接  
            conn = DriverManager.getConnection(url, user, password);  
              
            //输出数据库连接  
            System.out.println(conn);  
              
            //定制sql命令  
            String sql = "select * from t_user where user_id = ?";  
              
            //创建该连接下的PreparedStatement对象  
            pstmt = conn.prepareStatement(sql);  
              
            //传递第一个参数值 root,代替第一个问号  
            pstmt.setString(1, "root");  
              
            //执行查询语句,将数据保存到ResultSet对象中  
            rs = pstmt.executeQuery();  
              
            //将指针移到下一行,判断rs中是否有数据  
            if(rs.next()){  
                //输出查询结果  
                System.out.println("查询到名为【" + rs.getString("user_id") + "】的信息,其密码为:" + rs.getString("password"));  
            }else{  
                //输出查询结果  
                System.out.println("未查询到用户名为【" + rs.getString("user_id") + "】的信息");  
            }  
              
        } catch (ClassNotFoundException e) {  
            e.printStackTrace();  
        } catch (SQLException e) {  
            e.printStackTrace();  
        }finally{  
            try{  
                if(rs != null){  
                    rs.close();  
                }  
                if(pstmt != null){  
                    pstmt.close();  
                }  
                if(conn != null){  
                    conn.close();  
                }  
            } catch (SQLException e) {  
                e.printStackTrace();  
            }     
        }  
      
    }  
      
    public static void main(String[] args){  
        new TestConnection().SelectUser();  
    }  
}

在main函数中,右键,选择“Run as”=>"Java Application",就会运行该程序段,在Console中,可以看到运行结果,如果给出一串类似于“oracle.jdbc.driver.T4CConnection@7c242f04”这样的字符串,就说明连接成功了。

一别永别
2016-09-15 · TA获得超过130个赞
知道小有建树答主
回答量:164
采纳率:0%
帮助的人:128万
展开全部
Class.forName(driverClass);
Connection conn=DriverManager.getConnection(url, userName, password);
追问
这个不是用driverManager,只是用driver进行调用啊
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式