try {
Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
Connection conn=null;
Statement stm=null;
try{
// step 2. 连接数据库
String url="jdbc:oracle:thin:@localhost:1521:orcl";
conn=DriverManager.getConnection(url,"yao","123456");
// step 3. 创建Statement
stm=conn.createStatement();
//step 4. 执行sql
String sql="insert into stu values(1001,'lucy','高三1班','女') ";
stm.executeUpdate(sql);
System.out.println("===========insert ok==============");
//step 5. 处理结果集
}catch(Exception e){
    e.printStackTrace();
}finally{
// step 6. 释放资源
if(stm!=null)  try{ stm.close();} catch(Exception ee){}
if(conn!=null) try{ conn.close();} catch(Exception ee){}
}
}
用MyEclipse连接oracle出现以下问题:Exception in thread "main" java.lang.NoClassDefFoundError: oracle/jdbc/driver/OraclePreparedStatement
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:621)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:260)
at java.net.URLClassLoader.access$000(URLClassLoader.java:56)
at java.net.URLClassLoader$1.run(URLClassLoader.java:195)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:252)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:169)
at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:397)
at java.sql.DriverManager.getConnection(DriverManager.java:582)
at java.sql.DriverManager.getConnection(DriverManager.java:185)
at com.day1.Test1.main(Test1.java:46)
Caused by: java.lang.ClassNotFoundException: oracle.jdbc.driver.OraclePreparedStatement
at java.net.URLClassLoader$1.run(URLClassLoader.java:197)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:252)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
... 18 more
Caused by: java.io.IOException: unexpected EOF
at sun.misc.Resource.getBytes(Resource.java:103)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:256)
at java.net.URLClassLoader.access$000(URLClassLoader.java:56)
at java.net.URLClassLoader$1.run(URLClassLoader.java:195)
... 24 more

解决方案 »

  1.   

    Test1.java:46
    你看看46行是哪里
      

  2.   

    OraclePreparedStatement这个类名是否正确?
      

  3.   


     不出意外是没加 jar包!
      

  4.   

    系统提示的原因是没找到ORACLE相关的类,估计是你的JAR包没有引入。
      

  5.   

    Oracle相关的包没导入吧。 。。
      

  6.   

    估计就是没导入jar包。。Exception in thread "main" java.lang.NoClassDefFoundError: oracle/jdbc/driver/OraclePreparedStatement这一句明显再说这问题。。
      

  7.   

    他出这样的错,。肯定也不知道怎么导JAR包吧,。在Package视图下点你的项目,右键--build path--add external archives--选你的jAR
      

  8.   

    你在抛错误下打印出错误信息啥?不就知道哪错了吗?然后在逐步解决啊
    如:
    }catch(Exception e){
     system.out.println("操作错误"+e.getMessage());