现在我的机器上不知怎么回事,一写与数据库有关的程序便会出现上面的东西,弄得我都好些天没能学java ee了,希望高手救急啊。
比如我写的这个很简单的程序
import java.sql.*;public class TestBBS {
public static void main(String[] args) {
Connection conn=null;
Statement stmt=null;
ResultSet rs=null;
try{
Class.forName("com.mysql.jdbc.Driver");
conn=DriverManager.getConnection("jdbc:mysql://localhost/bbs?                        username=root&password=123");
stmt=conn.createStatement();
rs=stmt.executeQuery("select*from article");
while(rs.next()){
System.out.println(rs.getString("cont"));
System.out.println(rs.getString("title"));
}

}catch(Exception e){
e.printStackTrace();
}finally{
try{
if(rs!=null){
rs.close();
rs=null;
}
if(stmt!=null){
stmt.close();
stmt=null;
}
if(conn!=null){
conn.close();
conn=null;
}
}catch(Exception e){
e.printStackTrace();
}
}
}}
就出现了上面标题所示的问题

解决方案 »

  1.   

    数据库禁止访问,用户或密码不正确
    conn=DriverManager.getConnection("jdbc:mysql://localhost/bbs?                        username=root&password=123"); 
    改正确的密码或者在数据库里改也行
      

  2.   

    可是我直接登上mysql字符命令行时就是使用这个密码和账号的啊,mysql数据库可以用这个密码进入。而且一直都是用这个,
      

  3.   

    你学的尚学堂的视频吧 :) 好熟的东东。你user写成username了。应该是
    conn=DriverManager.getConnection("jdbc:mysql://localhost/bbs?user=root&password=123"); 给分吧!!
      

  4.   

    怎么你连接mysql没有端口号的。端口号默认是3306
    你加上端口号看一下,应该没有问题,如果还是出现的话。那就改一下吧!不过我的其实也就是跟你的一样,只是分开来写了。
    String dbUrl = "jdbc:mysql://localhost:3306/bbs";
    String dbUser="root";
    String dbPwd="123";
    conn = java.sql.DriverManager.getConnection(dbUrl,dbUser,dbPwd);
      

  5.   

    还有,你的JDBC驱动。放在路径。你要把JDBC驱动加载进来。应该就不会有问题了的。
      

  6.   

    应该是mysql数据库中的你要操作的表没有给这个用户授权,
    给这个用户授予访问权限就好了 
      

  7.   

    怎么还有人这么配的,我就拿我本地的一个数据库做例子好了:
    有三种配法:
    java2005JDBC 
    1.数据源型:
     Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
     connection con=DriverManager.getconnection("jdbc:odbc:news","sa","sa");//news是你自定义的数据源名,第一个sa是用户名,第二个是密码
    2.sql数据库型:
    Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
    connection con=DriverManager.getconnection("jdbc:sqlserver://localhost:1433;DatabaseName=news","sa","sa"); //这里的news是数据库名,第一个sa是用户名,第二个是密码3.java *JDBC URL
    Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
    connection con=DriverManager.getconnection("jdbc:microsoft:slqserver://localhost:1433;DatabaseName=news","sa","sa");tips:现在一般都用第二种,因为是本机所以端口号是这个localhost:1433,你的以此类推吧