I am using netbeans 12 with jdk 17. On building and running the following code, I get this error and no output is shown:
java.lang.ClassNotFoundException: org.apache.derby.jdbc.ClientDriver at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:641) at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:188) at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:520) at java.base/java.lang.Class.forName0(Native Method) at java.base/java.lang.Class.forName(Class.java:375) at bookclass.Bookclass.main(Bookclass.java:114) BUILD SUCCESSFUL (total time: 0 seconds) I have added all the jar files namely derby.jar, derbyshared.jar, derbyclient.jar, etc.
Code:
package bookclass; import java.sql.*; import java.util.*; class books { void insert() { try { Scanner in = new Scanner(System.in); Connection con = DriverManager.getConnection("jdbc:derby://localhost:1527/library"); Statement st = con.createStatement(); String s = "insert into bookstb values(" + id + ", '" + t + "', '" + p + "', '" + a + "', " + c + ", " + pr + ")"; int x = st.executeUpdate(s); System.out.println("No. of rows inserted: " + x); st.close(); con.close(); } catch (Exception e) { System.out.println(e.getMessage()); } } } public class Bookclass { public static void main(String[] args) { // TODO code application logic here try { Scanner in = new Scanner(System.in); Class.forName("org.apache.derby.jdbc.ClientDriver"); int ch; do { System.out.println("1.Insert 2.Update 3.Delete 4.Display 5.Exit\nEnter your choice:"); ch = in.nextInt(); books b = new books(); switch (ch) { case 1: b.insert(); break; case 2: b.update(); break; case 3: b.delete(); break; case 4: b.display(); break; case 5: System.exit(0); break; } } while (ch != 5); } catch (Exception e) { //System.out.println(e.getMessage()); e.printStackTrace(); } } } I have tried all the possible solutions available but none solve my issue.