kenticny 2011-05-22 22:23
浏览 243
已采纳

关于Java连接数据库的问题

[code="java"]import java.sql.*;

public class MySQLtest{
Connection con = null;
public Connection getConnection(){
try {
Class.forName("com.mysql.jdbc.Driver");
System.out.println ("数据库驱动加载成功!");
con = DriverManager.getConnection("jdbc:mysql://localhost:3306/StudentSystem","ms","123456");
System.out.println ("数据库连接成功!");
}
catch (ClassNotFoundException e1) {
System.out.println ("数据库驱动加载失败!");
}catch(SQLException e2){
System.out.println ("数据库连接失败!");
}
return con;
}

public static void main(String[] args){
    MySQLtest mysql = new MySQLtest();
    mysql.getConnection();
    try {
        Statement sql = mysql.con.createStatement();
        ResultSet result = sql.executeQuery("Select * from studentinformation");
        while(result.next()){
            System.out.print (result.getString(1)+"  ");
            System.out.print (result.getString(2)+"  ");
            System.out.print (result.getString(3)+"  ");
            System.out.print (result.getString(4)+"  ");
            System.out.print (result.getString(5)+"  ");
            System.out.print (result.getString(6)+"  ");
            System.out.println ();
        }
        result.close();
        sql.close();
    }
    catch (Exception ex) {
        ex.printStackTrace();
    }
}

}[/code]

运行时候会出现错误:
数据库驱动加载成功!
数据库连接失败!
java.lang.NullPointerException
at MySQLtest.main(MySQLtest.java:24)
可能是连接数据库时候发生的错误,已经能够确定用户名密码正确,求解答,本人新手,如果问题低端请谅解。

  • 写回答

5条回答 默认 最新

  • iteye_667 2011-05-23 09:46
    关注

    我明白你的问题了,前两天有人提过这个问题的,你看看吧——[url=http://www.iteye.com/problems/65429]MYSQL的10061错误[/url]

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
  • iteye_667 2011-05-22 22:46
    关注

    检查下ms这个用户有没有被赋予远程连接的权限吧,估计是没有。
    还有,建议打印出异常栈,否则这样抛出问题,让别人只能靠猜的。 :)

    评论
  • iteye_667 2011-05-23 09:06
    关注

    首先ping localhost看能否ping通,如果能,则是其他问题,否则可能是hosts绑定的问题。
    是否是hosts绑定的问题,可以检查下hosts文件(路径:C:\Windows\System32\drivers\etc\hosts),看看里面的localhost配置的是啥,改成
    [code="hosts"]127.0.0.1 localhost[/code]
    试试。

    评论
  • iteye_667 2011-05-23 09:09
    关注

    这个同学的经历可能对你有帮助——http://hi.baidu.com/sodarfish/blog/item/f56f1f6e173926de80cb4ad9.html

    评论
  • 敬敬11 2011-05-23 14:46
    关注

    java.lang.NullPointerException
    at MySQLtest.main(MySQLtest.java:24)
    说明24行有错误,而且是空异常,说明Statement sql = mysql.con.createStatement(); 中的mysql.con为空,才会引发异常的,你应该这样写
    public static void main(String[] args){

    MySQLtest mysql = new MySQLtest();

    Connection conn=mysql.getConnection();

    try {

    Statement sql = conn.createStatement();

    ResultSet result = sql.executeQuery("Select * from studentinformation");

    。。。。。
    }

    评论
查看更多回答(4条)

报告相同问题?

悬赏问题

  • ¥15 关于网上一个easyx制作的见缝插针小游戏(c++)
  • ¥15 开地址法双散列函数处理碰撞
  • ¥15 想问一下这个是什么情况 虚拟机Linux打不开了
  • ¥15 联通光猫掉注册了怎么重新注册上去
  • ¥15 关于unity开发steamvr程序遇到的问题
  • ¥60 求tc downloader的下载方式
  • ¥15 华为 快捷方式 手电筒 接口
  • ¥15 Qt6.5支不支持Android13开发啊
  • ¥20 网络只能跑一半,应该如何设置
  • ¥20 Python调用百度开发者平台人脸识别接口