java web 使用jdbc 链接sql server 2008找不到驱动类的问题

昨天在写一个web工程的时候发现我有main方法执行就能得到结果,而用servlet去执行就有问题,说找不到类什么的。

public class SearchImp implements Search {
private final static String URL = 
"jdbc:sqlserver://localhost\\mssqlserver;DatabaseName=class";
static{
try{
Class.forName("com.microsoft.sqlserver.jdbc.Driver
JDBCVersion");
}catch(ClassNotFoundException cfe){
System.out.println("error: 找不到" + cfe.getMessage());
}

}
public List<CourseBean> search(String xueyuan, String jiaoshi) {
List<CourseBean> beans = new ArrayList<CourseBean>();
CourseBean bean = null;
Connection connection = null;
PreparedStatement ps = null;
String sql = "select * from schedule where 教师所属学院  = ? " ;
if(jiaoshi != null && !jiaoshi.equals("")){
sql += "and 教师姓名 = ?";
}

ResultSet rs = null;
try{
connection = DriverManager.getConnection(URL, "sa", "123456");
}catch(SQLException e){
System.out.println("error: " + e.getMessage());
throw new RuntimeException(e);
}

try{
ps = connection.prepareStatement(sql);
ps.setString(1, xueyuan);
if(jiaoshi != null && !jiaoshi.equals("")){
ps.setString(1, jiaoshi);
}
}catch(SQLException e){
System.out.println("error: " + e.getMessage());
}

try{
rs = ps.executeQuery();
while(rs.next()){
bean = new CourseBean();
bean.setJiaoshi(rs.getString("上课教室"));
bean.setJieci(rs.getString("节次"));
bean.setLaoshi(rs.getString("教师姓名"));
bean.setName(rs.getString("课程名称"));
bean.setRenshu(rs.getString("上课人数"));
bean.setSingleDoubleWeek(rs.getString("单双周"));
bean.setXingqiji(rs.getString("星期几"));
bean.setXueyuan(rs.getString("教师所属学院"));
beans.add(bean);
}
}catch(SQLException e){
System.out.println("error: " + e.getMessage());
}finally{
try{
connection.close();
}catch(SQLException e){
System.out.println(e);
}
}
return beans;
}
public static void main(String args[]){
for(CourseBean bean : new SearchImp().search("信息学院", null)){
System.out.println(bean.getJiaoshi() + " : " + bean.getLaoshi());
}
}
}

搞得我是欲哭无泪啊!!!

后来发现它的驱动类是SQLServerDriver,将驱动类的名字一改就好了,可是DriverJDBCVersion本地也能用啊,那微软是脑袋被驴踢了吗,弄两个驱动类,一个还不能在web下用?这里不做讨论,还是用我mysql好……

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值