2 si1230321 si1230321 于 2016.09.24 21:05 提问

java 数据库加载失败 ,哪位能告诉我具体做法及步骤,笼统的描述请不要回答 ,万分感谢。
public DAO(){
    try {
        //加载驱动
        Class.forName("net.sourceforge.jtds.jdbc.Driver"); //加载一个创建的驱动
    } catch (ClassNotFoundException e) {
        JOptionPane.showMessageDialog(null,"数据库驱动加载失败!"+e.getMessage());
    }
}


//建立数据库链接
public static Connection getConn(){
    Connection conn=null;
    try {

        String url="jdbc:jtds:sqlserver://localhost:1433/db_MySQLserver";
        //String url1="jdbc:jtds:sqlserver://localhost:1433//db_MySQLserver";   //;databasename=db_MySQLserver";
        String username="Administrator";
        String password="";
        conn=DriverManager.getConnection(url,username,password);
        System.out.println(conn);
        return conn;
    } catch (SQLException e) {
        e.printStackTrace();
        JOptionPane.showMessageDialog(null,"数据库驱动加载失败!"+e.getMessage());
        return null;
    }



}
public static void main(String[] args) {
    DAO.getConn();
}

7个回答

caozhy
caozhy   Ds   Rxr 2016.09.24 21:11

1433端口默认是sql server的端口,但是貌似你用的是mysql,默认端口是3306。另外mysql默认是root作为用户名,密码也不是空吧。
这个没法具体回答,因为不光是看代码能看出你的问题,要结合你的系统和数据库的配置。建议你问问你的同事,把你的电脑给他们看看,几分钟也就搞定了。

si1230321
si1230321   2016.09.24 21:24

我用的sqlserver2008数据库

si1230321
si1230321   2016.09.24 21:25

哪位大牛帮解答下 比较着急,,,,

LONG_Yi_1994
LONG_Yi_1994   2016.09.24 21:57

你的驱动路径是错的,我博客里有完整的Java连接sqlserver实例。

Ludwig_van
Ludwig_van   2016.09.25 00:09

把你的这段代码:Class.forName("net.sourceforge.jtds.jdbc.Driver"); //加载一个创建的驱动
不要写在构造函数里,单独写成静态代码块比如:
static{
try {
Class.forName("com.mysql.jdbc.Driver");
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

Ludwig_van
Ludwig_van   2016.09.25 00:19

你在主函数中这样的调用是有问题的,因为你没有创建对象,所以不会执行构造方法。所以驱动就没有创建

sj18182656342
sj18182656342   2016.09.25 10:52

main方法根本就没有调取 数据库链接
Dao是不是你底下方法的实例吗
给你建议 可以将 Dao方法和getconnect方法直接写在一起,写成静态方法
直接用类调新写成的方法
数据库链接 一定要写在一起是比较合理的

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!