我在Android应用程序中遇到问题。 这是我的代码。任何人都给我一个解决方案。我知道这种类型的连接不安全,但我只使用这个应用程序我的手机。
public class testConnection
{
public void doConnect()
{
DB db = new DB();
db.dbConnect("jdbc:jtds:sqlserver://192.168.1.3/Test","sa","@135m45@");
}
}
class DB
{
public DB() {}
public void 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();
}
}
};
错误如下:
java.lang.ClassNotFoundException: net.sourceforge.jtds.jdbc.Driver
at java.lang.Class.classForName(Native Method)
at java.lang.Class.forName(Class.java:217)
at java.lang.Class.forName(Class.java:172)
at info.elshan.sqlserver.SqlServer$DB.dbConnect(SqlServer.java:118)
at info.elshan.sqlserver.SqlServer$testConnection.doConnect(SqlServer.java:106)
at info.elshan.sqlserver.SqlServer$RetreiveFeedTask.doInBackground(SqlServer.java:48)
at info.elshan.sqlserver.SqlServer$RetreiveFeedTask.doInBackground(SqlServer.java:1)
at android.os.AsyncTask$2.call(AsyncTask.java:287)
at java.util.concurrent.FutureTask.run(FutureTask.java:234)
at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:230)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1080)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:573)
at java.lang.Thread.run(Thread.java:856)
Caused by: java.lang.NoClassDefFoundError: net/sourceforge/jtds/jdbc/Driver
13 more
Caused by: java.lang.ClassNotFoundException: Didn't find class "net.sourceforge.jtds.jdbc.Driver" on path: /data/app/info.elshan.sqlserver-1.apk
at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:65)
at java.lang.ClassLoader.loadClass(ClassLoader.java:501)
我还在下面添加了库。
答案 0 :(得分:2)
类加载器在找不到某个类时抛出ClassNotFoundError。在这种情况下,它是net.sourceforge.jtds.jdbc.Driver类,这意味着jtds.jar不在类路径中。如果您在应用程序中获得此功能,请使用
启动您的应用程序java -cp <path_to_jtds>/jtds.jar <main_class>
如果在servlet / JSP中遇到此问题,则必须将jtds.jar添加到Web应用程序的类路径中(例如,通过编辑应用程序的web.xml文件或将jar复制到应用程序的/ server的/ lib目录中)。
注意:jTDS jar文件的名称可能是jtds-1.2.jar或类似名称。如果是这种情况,请将上面示例中的jtds.jar替换为jtds-1.2.jar或您的特定文件名。