SainPortman
SainPortman
采纳率100%
2017-12-01 06:23

java连接MySQL数据库总是提示连接失败,cmd可以读取数据库内容,驱动包也已载入

已采纳

import java.sql.*;
import java.util.*;

class Student{
    String sno;
    String name;
    public Student(String sno, String name) {
        super();
        this.sno = sno;
        this.name = name;

    }
    @Override
    public String toString() {
        return "Student [sno=" + sno + ", name=" + name + "]";
    }
}

public class TestJDBC {
public static void main(String[] args) {
Connection con=null;
try{
Class.forName("com.mysql.jdbc.Driver");
String url="jbdc:mysql://localhost:3306/mydb?user=root&password=root&useUnicode=true&characterEncoding=UTF8";
con=DriverManager.getConnection(url);
System.out.println("连接成功!");

    }catch(ClassNotFoundException e){
        System.out.println("载入JDBC驱动类出错");
        e.printStackTrace();
        return;
    }catch(SQLException e){
        System.out.println("创建数据库连接出错");
        e.printStackTrace();
        return;
    }
    Statement stmt=null;
    ResultSet rs=null;
    List<Student> studentList=new ArrayList();
    try {
        String sql="Select * from student";
        stmt=con.createStatement();
        rs=stmt.executeQuery("mydatabase");
        while(rs.next()) {
            String sno=rs.getString("sno");
            String name=rs.getString("name");
            Student student=new Student(sno,name);
            studentList.add(student);
        }
    }catch(SQLException e) {
        System.out.println("查询数据库出错");
        e.printStackTrace();
    }finally {
        try {
            rs.close();
            stmt.close();
            con.close();
        }catch(SQLException e) {
            System.out.println("关闭资源出错");
            e.printStackTrace();
            rs=null;
            stmt=null;
            con=null;
        }
    }
    for (Student student:studentList){
        System.out.println(student);
    }
}

}
图片说明

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

4条回答

  • diyword diyword 4年前

    rs=stmt.executeQuery("mydatabase");这句不是应该是rs=stmt.executeQuery(sql);

    点赞 1 评论 复制链接分享
  • diyword diyword 4年前

    运行提示unknown resource,看看"jbdc:mysql://localhost:3306/mydb?user=root&password=root&useUnicode=true&characterEncoding=UTF8";这句mydb是不是写错了

    点赞 评论 复制链接分享
  • u011028616 u011028616 4年前

    setUserName() setPassWord();

    点赞 评论 复制链接分享
  • qq_31334119 阿狸演绎 4年前

    把密码和用户名去了
    url="jdbc:mysql://localhost:3306/mydatabase"
    试试这样

    点赞 评论 复制链接分享

相关推荐