2011-10-03 118 views

回答

5

在ANDROID上使用JTDS直接访问SQLSERVER时出现错误“ClassNotFoundException”?

经过3个小时的RND,找出解决方案以上相同的错误。我没有得到代码中没有错误,我也有导入“jtds-1.3.0”库正常继续调试代码仍然一次又一次地得到相同的错误。

{ 
Class.forName("net.sourceforge.jtds.jdbc.Driver"); 

Connection conn = DriverManager.getConnection(
db_connect_string, db_userid, db_password); 
} 

我试图替代,改变线

...... Class.forName("net.sourceforge.jtds.jdbc.Driver"); 

...... (new Driver()).getClass(); 

...... (new Driver()) 

,当我尝试了所有的这些,我因子评分有可能是JTDS-1.3.0库中的问题,我做了什么,只需下载旧版本jtds-1.2.5并导入;并解决问题。

所以,那里的朋友如果你得到相同的错误,并尝试不同的方式已经尝试过。

+2

注意我试着'jtds-1.3.0',并测试它通过使JAVA应用程序,它工作正常,但它不工作与ANDROID。 .. 完成知道为什么! – smkrn110

+0

我有同样的错误,我使用1.3.0,并使其Java应用程序的工作,但没有在Android上工作,所以我下载jtds-1.2.5.jar并用jtds-1.3.0替换。它的工作。 – smkrn110

3

这很奇怪,有就是JTDS网站上没有的示例代码。我发现这一点,它可能是有益的:

http://www.java-tips.org/other-api-tips/jdbc/how-to-connect-microsoft-sql-server-using-jdbc-3.html

import java.sql.*; 

public class testConnection 
{ 
    public static void main(String[] args) 
    { 
     DB db = new DB(); 
     db.dbConnect("jdbc:jtds:sqlserver://localhost:1433/tempdb","sa",""); 
    } 
} 

class DB 
{ 
    public DB() {} 

    public voidn dbConnect(String db_connect_string, String db_userid, String db_password) 
    { 
     try 
     { 
      Class.forName("net.sourceforge.jtds.jdbc.Driver"); 
      Connection conn = DriverManager.getConnection(
      db_connect_string, db_userid, db_password); 
      System.out.println("connected"); 
     } 
     catch (Exception e) 
     { 
      e.printStackTrace(); 
     } 
    } 
}; 

编辑:
你会得到ClassNotFoundException异常,当你的主类不能被发现。找到你AndroidManifest.xml以下行确保它们是正确的:

<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
     package="com.ezee.app" 
/*...*/ 
<activity android:name=".connect12" 

还要确保类存在于your_project_folder/src/com/ezee/app/connect12(区分大小写我认为)

+1

我运行你的代码我得到错误我发布logcat如下 – Piyush

+0

@Piyush看到我的编辑 – Caner

0
以我的经验

,如果你使用的是Android与SQL Server的独立安装,根据Android的具体情况,您必须使用10.0.2.2地址而不是“localhost”或“127.0.0.1”来访问本地主机服务器。

我试过了,并已成功连接到我的SQL Server。

0
Exception in thread "main" java.lang.ClassNotFoundException: net.sourceforge.jtds.jdbc.Driver 
    at java.net.URLClassLoader$1.run(Unknown Source) 
    at java.security.AccessController.doPrivileged(Native Method) 
    at java.net.URLClassLoader.findClass(Unknown Source) 
    at java.lang.ClassLoader.loadClass(Unknown Source) 
    at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source) 
    at java.lang.ClassLoader.loadClass(Unknown Source) 
    at java.lang.Class.forName0(Native Method) 
    at java.lang.Class.forName(Unknown Source) 
    at com.test.objectref.GroupBy.main(GroupBy.java:12) 

要解决此问题,必须添加Jtds lib

相关问题