Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/eclipse/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 编译错误-com.mysql.jdbc.Driver无法解析为变量_Java_Eclipse_Jdbc - Fatal编程技术网

Java 编译错误-com.mysql.jdbc.Driver无法解析为变量

Java 编译错误-com.mysql.jdbc.Driver无法解析为变量,java,eclipse,jdbc,Java,Eclipse,Jdbc,我几乎不熟悉预先捆绑的STS。我正在Fedora17上的Eclipse/Spring中试用JDBC for MySQL 下载了mysql JDBC驱动程序(mysql-connector-java-5.1.22-bin.jar)。然后在IDE中 创建了一个项目并将其命名为JDBC 在项目下创建了一个名为“lib”的文件夹 转到项目>属性。选择Java构建路径,然后选择“库”选项卡。单击“添加jar”选择JDBC>lib>mysql---.jar并单击OK。这在ProjectExplorer窗格下

我几乎不熟悉预先捆绑的STS。我正在Fedora17上的Eclipse/Spring中试用JDBC for MySQL

下载了mysql JDBC驱动程序(mysql-connector-java-5.1.22-bin.jar)。然后在IDE中

  • 创建了一个项目并将其命名为JDBC
  • 在项目下创建了一个名为“lib”的文件夹
  • 转到项目>属性。选择Java构建路径,然后选择“库”选项卡。单击“添加jar”选择JDBC>lib>mysql---.jar并单击OK。这在ProjectExplorer窗格下添加了一个“引用的库”,我在其中看到了mysql jar文件
  • 在项目下编写了以下代码
  • 我认为我已经完成了编译所需的工作。然而,我看到

    Class.forName(com.mysql.jdbc.Driver)

    无法将com.mysql.jdbc.Driver解析为变量

    你能告诉我这里怎么了吗

        import java.sql.Connection;
        import java.sql.DriverManager;
        import java.sql.PreparedStatement;
        import java.sql.ResultSet;
        import java.sql.SQLException;
        import java.sql.Statement;
    
    
        public class TestJDBC {
    
            /**
             * @param args
             */
            public static void main(String[] args)  throws Exception{
                // TODO Auto-generated method stub
                Connection connection = null;
                Statement statement = null;
                PreparedStatement preparedStatement = null;
                ResultSet resultSet = null;
                try {
                    Class.forName(com.mysql.jdbc.Driver);
                    connection = DriverManager.getConnection("jdbc:mysql://localhost/testdb?" + 
                                 "user=myuser&password=mypwd");
                    if (connection != null) {
                        System.out.println ("Connected may be?");
                        connection.close();
                    }
                    else {
                        System.out.println ("Not connected?");
                    }
                }
                catch (Exception e) {
                    connection.close();
                }
            }
        }
    

    这样会更好。 (第二个可以编译,但没有真正意义,因为它假设类已经加载:)

    您要使用:

    Class.forName("com.mysql.jdbc.Driver");
    

    在将来,请注意编译器会告诉您它期望的是什么:一个变量。你只需要弄清楚如何修改或转换你所拥有的东西到它想要的东西。在这种情况下,可以使用任何转换为值的东西(常数、变量或返回值的方法)。

    我没有意识到我缺少双引号。嗯,我为没有注意到这一点付出了代价。谢谢
    Class.forName(com.mysql.jdbc.Driver.class.getName());
    
    Class.forName("com.mysql.jdbc.Driver");