有两种方法连接数据,但是实际上是一种:
1.通过后台java程序连接
2.直接将java代码写到前台jsp中
两种方法代码,java程序如下:
package databasetest; import java.sql.*;
public class testsqlserver { public static void main(String[] srg) { String driverName = "com.microsoft.sqlserver.jdbc.SQLServerDriver"; //加载JDBC驱动 String dbURL = "jdbc:sqlserver://localhost:1433; DatabaseName=hb"; //连接服务器和数据库sample String userName = "sa"; //默认用户名 String userPwd = "wuyanzan.1988"; //密码 Connection dbConn;
try { Class.forName(driverName); dbConn = DriverManager.getConnection(dbURL, userName, userPwd); System.out.println("Connection Successful!"); //如果连接成功 控制台输出Connection Successful! Statement state = dbConn.createStatement(); String sql="select * from duser"; state.executeQuery(sql); } catch (Exception e) { e.printStackTrace(); } } }
写到前台界面时如下:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@page import="java.sql.*" %> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <title>Insert title here</title> </head> <body> <% Connection conn=null; Statement stmt=null; String driver="com.microsoft.sqlserver.jdbc.SQLServerDriver";//驱动类 String username="sa";//数据库用户名 String password="wuyanzan.1988";//数据库密码 String sql="select * from duser";//查询语句 String url="jdbc:sqlserver://localhost:1433;DatabaseName=hb";//连接数据库的地址 try{ Class.forName(driver);//加载驱动器类 conn=DriverManager.getConnection(url,username,password);//建立连接 stmt=conn.createStatement();//建立处理的SQL语句 ResultSet rs=stmt.executeQuery(sql);//形成结果集 while(rs.next()){//输出显示 out.println(rs.getInt(1)+" 、"); out.println(rs.getString(2)+" 、"); out.println(rs.getString(3)); } rs.close();//关闭结果集 stmt.close();//关闭SQL语句集 conn.close();//关闭连接 } //捕获异常 catch(ClassNotFoundException e){ System.out.print(e); } //捕获异常 catch(SQLException ee){ System.out.print(ee); } %> </body> </html>
需要注意的问题:1.sqljdbc.jar包不仅需要通过Build Path加入到src下,还需要拷贝到WEB-INF的lib目录下,两者缺一不可,否则会报错:java.lang.ClassNotFoundException: com.microsoft.jdbc.sqlserver.SQLServerDriver
2.sqlserver2000,2005,2008在连接语句上有所不同,具体如下:String driver="com.microsoft.sqlserver.jdbc.SQLServerDriver";在2000中应该是jdbc在sqlserver的前面,这里具体问题再具体对待。