【发布时间】:2013-12-11 15:11:08
【问题描述】:
我是 ubuntu 的新手,最近几天我安装了 eclipse 和 lamp 来处理已经在 windows7 上运行的项目。问题是相同的连接字符串不起作用。这是我尝试连接的女巫中的一段代码:
String stringaConn = null;
String nomeClasse = null;
stringaConn = "jdbc:mysql://localhost/cinemapreverificasql?user=root";
nomeClasse = "com.mysql.jdbc.Driver";
try {
Class.forName(nomeClasse);
System.out.println("forName eseguito");
} catch (ClassNotFoundException e) {
System.out.println("Classe nomeClasse - Driver non trovata");
}
try {
f.conn = DriverManager.getConnection(stringaConn);
System.out.println("Aperta la connessione");
} catch (SQLException e) {
System.out.println("Stringa di connessione errata");
}
它进入第二个捕获并打印字符串“Stringa di connessione errata”。这是一个输出示例:
forName eseguito
Stringa di connessione errata
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
at gestioneDegliEventi.Gestione.windowOpened(Gestione.java:199)
at java.awt.Window.processWindowEvent(Window.java:2048)
at javax.swing.JFrame.processWindowEvent(JFrame.java:296)
at java.awt.Window.processEvent(Window.java:2009)
at java.awt.Component.dispatchEventImpl(Component.java:4861)
at java.awt.Container.dispatchEventImpl(Container.java:2287)
at java.awt.Window.dispatchEventImpl(Window.java:2719)
at java.awt.Component.dispatchEvent(Component.java:4687)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:735)
at java.awt.EventQueue.access$200(EventQueue.java:103)
at java.awt.EventQueue$3.run(EventQueue.java:694)
at java.awt.EventQueue$3.run(EventQueue.java:692)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:87)
at java.awt.EventQueue$4.run(EventQueue.java:708)
at java.awt.EventQueue$4.run(EventQueue.java:706)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:705)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:242)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:161)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:150)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:146)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:138)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:91)
在互联网上搜索我尝试了更改连接字符串的解决方案:
jdbc:mysql://localhost:3306/cinemapreverificasql?user=root
并使用sudo ufw allow 3306 授予权限,但出现的错误是相同的。可能是什么错误?
【问题讨论】:
-
那么第 199 行是什么?你在哪里初始化
f? -
在第 199 行有
stmSql = f.conn.prepareStatement("select * from film");,并且有错误原因f.conn为空。f在构造函数中被初始化,conn在f对象中是public。
标签: java mysql eclipse jdbc lamp