关于Java与SQL Server在纯DOS环境下的连接
下面是一个Java类的代码:importjava.sql.*;publicclassConnectDB{Connectioncon;publicConnectDB(){t...
下面是一个Java类的代码:
import java.sql.*;
public class ConnectDB {
Connection con;
public ConnectDB(){
try{
Class.forName
("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();
con=java.sql.DriverManager.getConnection
("jdbc:microsoft:sqlserver://127.0.0.1:1433;DatabaseName=tempdb","sa","123");
System.out.println("The connection is successful!");
}
catch(Exception e){
e.printStackTrace();
}
}
public static void main(String args[]){
ConnectDB temp=new ConnectDB();
}
}
这个类在My Clipse中执行时可以与数据库成功连接。但我在纯DOS下,经javac ConnectDB.java成功编译后利用java ConnectDB来执行时却抛出了以下异常:
java.lang.ClassNotFoundException: com.microsoft.jdbc.sqlserver.SQLServerDriver
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.ClassLoader.loadClassInternal(Unknown Source)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Unknown Source)
at ConnectDB.<init>(ConnectDB.java:6)
at ConnectDB.main(ConnectDB.java:15)
我不知道应该如何解决。有谁能帮我分析一下原因,先谢谢了! 展开
import java.sql.*;
public class ConnectDB {
Connection con;
public ConnectDB(){
try{
Class.forName
("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();
con=java.sql.DriverManager.getConnection
("jdbc:microsoft:sqlserver://127.0.0.1:1433;DatabaseName=tempdb","sa","123");
System.out.println("The connection is successful!");
}
catch(Exception e){
e.printStackTrace();
}
}
public static void main(String args[]){
ConnectDB temp=new ConnectDB();
}
}
这个类在My Clipse中执行时可以与数据库成功连接。但我在纯DOS下,经javac ConnectDB.java成功编译后利用java ConnectDB来执行时却抛出了以下异常:
java.lang.ClassNotFoundException: com.microsoft.jdbc.sqlserver.SQLServerDriver
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.ClassLoader.loadClassInternal(Unknown Source)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Unknown Source)
at ConnectDB.<init>(ConnectDB.java:6)
at ConnectDB.main(ConnectDB.java:15)
我不知道应该如何解决。有谁能帮我分析一下原因,先谢谢了! 展开
4个回答
展开全部
SQLServerDriver这个包要放在你的java文件同级目录
用工具的时候工具已经帮你弄好了
所以你对单独的文件进行执行时
虚拟机没有找到
用工具的时候工具已经帮你弄好了
所以你对单独的文件进行执行时
虚拟机没有找到
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
在纯dos下编译的时候,加个classpath指定你的驱动包的位置,否则程序找不到支持包
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
java启动的时候,设置classpath,包含sqlserver的jdbc包
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
com.microsoft.jdbc.sqlserver.SQLServerDriver这个包加到classpath中了没有
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询