zoukankan      html  css  js  c++  java
  • 解决java.lang.ClassNotFoundException: com.microsoft.sqlserver.jdbc.SQLServerDriver问题

    在代码中手动连接SQL Server数据库的时候报错【java.lang.ClassNotFoundException: com.microsoft.sqlserver.jdbc.SQLServerDriver】。

    知道大致原因是因为缺少了驱动包,然后因为是在Maven的环境中,通过Maven引入sqljdbc4的依赖之后好像不行,只能另外想办法。

    另外的办法是将sqljdbc4.jar文件复制到项目里的WEB-INF下的lib目录下面,试了一下就可以正常连接上SQL Server数据库了。

    然后另外还发现2008的版本驱动和2000的有点不同,之前的驱动类名都是【com.microsoft.jdbc.sqlserver.SQLServerDriver】,可是2008以上版本却是【com.microsoft.sqlserver.jdbc.SQLServerDriver】,注意到了吗,其中的【sqlserver】和【jdbc】包名互换了,然后url的前缀也从【jdbc:microsoft:sqlserver://】变成了【jdbc:sqlserver://】,微软真的是逻辑鬼才。

    如果最终的应用是要放在Tomcat下或什么容器下跑,需要在代码中添加加载驱动包类的代码,否则也会报上面的错误。

    try {
        Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver").newInstance();
    } catch (InstantiationException | IllegalAccessException | ClassNotFoundException e1) {
        e1.printStackTrace();
    }

    另外sqljdbc4.jar需要jre6以上的运行环境。

    "你以为我不知道,但是其实我已经知道了。"

  • 相关阅读:
    activemq安装及使用
    匿名内部类的简单使用
    Struts2中动态方法调用
    重定向和转发的区别
    result转发到一个action
    在Android Studio中导入jar包
    架构文档类别
    Linux/Unix下pid文件的作用
    【8.21校内测试】【最大生成树】【树状数组】【数学】
    【BZOJ】2653: middle
  • 原文地址:https://www.cnblogs.com/yanggb/p/11605947.html
Copyright © 2011-2022 走看看