首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >线程“AWT 0”java.lang.ClassCastException中的异常

问线程“AWT 0”java.lang.ClassCastException中的异常
EN

Stack Overflow用户
提问于 2014-05-16 13:45:44
回答 1查看 3.1K关注 0票数 0

我试图将我的java应用程序与sql server 2012连接起来,但给出了以下错误:

代码语言:javascript
复制
Exception in thread "AWT-EventQueue-0" java.lang.ClassCastException:  com.microsoft.sqlserver.jdbc.SQLServerConnection cannot be cast to com.mysql.jdbc.Connection

有人能帮我吗?

非常感谢。

连接代码:

代码语言:javascript
复制
 import java.sql.Connection;
 import java.sql.DriverManager;
 import java.sql.SQLException;


 public class CriaConexao {

 public static Connection getConexao()throws SQLException{
    try{

        Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
       String dbURL = "jdbc:sqlserver://BRGDB:1433;database=DB_SQL;IntegratedSecurity=true";
            Connection conexao = DriverManager.getConnection(dbURL);
            return conexao;

    }catch(Exception e) {
        e.printStackTrace();
        return null;
    }

}  

}

错误:

代码语言:javascript
复制
Exception in thread "AWT-EventQueue-0" java.lang.ClassCastException: com.microsoft.sqlserver.jdbc.SQLServerConnection cannot be cast to com.mysql.jdbc.Connection
    at sensores.forms.jTLoginConsulta.<init>(jTLoginConsulta.java:71)
    at sensores.forms.jTLoginConsulta$4.run(jTLoginConsulta.java:448)
    at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:311)
    at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:744)
    at java.awt.EventQueue.access$400(EventQueue.java:97)
    at java.awt.EventQueue$3.run(EventQueue.java:697)
    at java.awt.EventQueue$3.run(EventQueue.java:691)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:75)
    at java.awt.EventQueue.dispatchEvent(EventQueue.java:714)
    at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
    at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)

jTLoginConsulta进口:

代码语言:javascript
复制
import com.mysql.jdbc.Connection;
import com.mysql.jdbc.PreparedStatement;
import java.awt.*;
import java.sql.ResultSet;
import java.sql.SQLException;
import javax.swing.*;
import org.openide.util.Exceptions;
import sensores.basedados.CriaConexao;
import sensores.forms.jTMainMenu;
import com.mysql.jdbc.PreparedStatement;
import java.awt.Color;
import java.awt.Toolkit;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import javax.swing.JOptionPane;
import java.awt.*;
import java.sql.*;
import java.awt.event.WindowEvent;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.io.IOException;
import java.io.PrintWriter;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.StringTokenizer;
import java.util.TimerTask;
import javax.swing.*;
import sensores.basedados.CriaConexao;
import sensores.logica.Logins;
import java.util.Timer;
import java.util.TimerTask;
import java.util.*;
import java.util.List;
import sensores.logica.Alarmes;
import javax.mail.*;
import javax.mail.internet.*;
import javax.activation.*;
import javax.mail.Address;
import javax.mail.Message.RecipientType;

发生错误的第71行:

代码语言:javascript
复制
68    public jTLoginConsulta() throws SQLException {
69          initComponents();
70        setIcon();
71      conexao=(Connection) CriaConexao.getConexao();
72    
73       }
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-05-16 13:49:16

检查此连接对象的导入。

代码语言:javascript
复制
Connection conexao = DriverManager.getConnection(dbURL);

应该是java.sql.Connection。好像你把它错误地导入了com.mysql.jdbc.Connection

编辑

根据编辑的问题:

代码语言:javascript
复制
 conexao=(Connection) CriaConexao.getConexao();

CriaConexo正在返回com.microsoft.sqlserver.jdbc.SQLServerConnection,而您正在错误地将其转换为com.mysql.jdbc.Connection。只需将导入更正为java.sql.Connection并删除强制转换即可。

希望能帮上忙。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23696775

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档