Intellij在类路径

时间:2015-09-27 16:14:56

标签: java mysql tomcat intellij-idea classpath

所以我按照其他帖子中列出的所有步骤将mysql-connector-java-5.1.36-bin添加到intellij 12中的类路径中,当我编写代码时,intellij清楚地看到它并让我导入它,但是当我在tomcat中运行应用程序时,我得到一个ClassNotFoundException

以下是我的设置和代码的屏幕截图。enter image description here

enter image description here

 public void runLookUp(String s){
    String url = "jdbc:mysql://localhost:3316/test";
    String username = "java";
    String password = "password";
    System.out.println("Connecting database...");

    System.out.println("Loading driver...");

    try {
        Class.forName("com.mysql.jdbc.Driver");
        System.out.println("Driver loaded!");
    } catch (ClassNotFoundException e) {
        throw new IllegalStateException("Cannot find the driver in the classpath!", e);
    }
    try  {
        Connection connection = (Connection) DriverManager.getConnection(url, username, password);
        System.out.println("Database connected!");
    } catch (SQLException e) {
        throw new IllegalStateException("Cannot connect the database!", e);
    }
}

我知道在全局库中而不是我的lib目录中执行此操作是不好的形式我最初在那里做了它并将其移动到全局作为尝试修复此问题并且尚未将其移回。鉴于这似乎适用于其他所有人,我假设它有一些东西,我的tomcat部署是从intellij,任何想法?

1 个答案:

答案 0 :(得分:0)

这与IntelliJ没有任何关系。

您需要将JDBC驱动程序JAR放在Tomcat / lib文件夹中,而不是放在任何项目WEB-INF / lib中。

您编写的代码仍远未达到最佳状态:

  1. 硬编码的URL,驱动程序类和凭据使其难以更改。
  2. 纯文本用户名和密码。
  3. 没有JNDI查找。
  4. 没有连接池。