java - 编写 java 程序连接 DB2 和获取数据时出现运行时错误 "Class Not found"

标签 java jdbc ibm-midrange

下面的代码编译成功。

代码源(Jdbcexample.java)和编译后的类文件(JdbcExample.class)目录:-"test" 当我使用 java JdbcExample 运行这个程序时,它抛出找不到类 com.ibm.as400.access.AS400JDBCDriver 并在作业日志中:

code ended with 04:Unable to find class required to run Java Program".

我想这个问题与类路径有关。

谁能指导我如何设置路径/类路径并运行程序以避免上述错误?

import java.sql.*;  

public class JDBCexample {  
  public static void main(String[] args)
  {
    Connection con = null;  
    try {  
          Class.forName("com.ibm.as400.access.AS400JDBCDriver);  
        }
    catch(ClassNotFoundException e)
        {  
          System.out.println(e);  
          System.exit(0);  
        }  
    try {  
          con = DriverManager.getConnection("jdbc:as400://yourserver", "yourUserId","yourPassword");  

          Statement stmt = con.createStatement();  
          ResultSet rs = stmt.executeQuery("SELECT * FROM YOURLIB.YOUR_PF_FILE");  

          while (rs.next())
         {  

                  String field1 = rs.getString(1);  
                  String field2 = rs.getString("fieldname");  


          }
           rs.close();
           stmt.close();
           con.close();
       }
          catch(Exception e)
          {  

          }  

          }  
}

最佳答案

错误提示找不到 JDBC 驱动程序。该驱动程序是 IBM Toolkit for Java 的一部分。就我而言,我使用的是 JTOpen 而不是机器附带的版本。我将 jt400.jar 放在 IFS 中名为 java 的目录中。

如果从 IBM i(不是 PASE 或 QShell)运行,您可以使用 ADDENVVAR 设置您的类路径。这对我有用,因为我将 .jar 文件放在/java 中:

ADDENVVAR ENVVAR(CLASSPATH) VALUE('.:+       
                                  /java:+   
                                  /java/*') 

机器自带的jt400在IFS里面。在我的 7.2 机器上,路径是:/QIBM/ProdData/HTTP/Public/jt400/lib - 如果你想使用那个版本,把那个路径放在你的 CLASSPATH 中。 IBM 维护一个 FAQ on the Toolbox .

关于java - 编写 java 程序连接 DB2 和获取数据时出现运行时错误 "Class Not found",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27265097/

相关文章:

java - 自己学习算法,如何在java中实现元组?

java - 服务器启动时由于 ecache 请求负载过多而导致数据库服务器停止运行

PHP - db2_bind_param 描述参数失败

java - Spring MVC : redirect user according to browser language

java - 如何调用填充 bean 的方法,当我在 c :url 的帮助下按下 anchor 标记时

java - 使用 Maven 在 .project 中添加 buildCommand

java - Apache DBCP 连接池与 Hibernate 错误 : Initial SessionFactory creation failed

java - 找不到合适的驱动程序异常: Hibernate

command - 如何创建具有互斥参数的 AS/400 命令?

sql - AS400 SQL查询类似于原生AS400中的CLRLIB(清库)