JSP中使用JDBC连接SQLServer.docx
《JSP中使用JDBC连接SQLServer.docx》由会员分享,可在线阅读,更多相关《JSP中使用JDBC连接SQLServer.docx(6页珍藏版)》请在冰豆网上搜索。
JSP中使用JDBC连接SQLServer
JSP中使用JDBC连接SQLServer2005~
准备工作
首先,操作系统中安装好SQLServer2000/2005,如果系统中都装有2000和2005版,记得停用一个,只开一个行了。
然后,到微软网站下载MicrosoftSQLServer2005JDBCDriver1.1,也可以使用这个地址直接下载。
下载地址:
(微软官网)
下载后,直接运行sqljdbc_1.1.1501.101_chs.exe,把sqljdbc_1.1解压到%ProgramFiles%(如果系统在C盘则为C:
\ProgramFiles)。
把sqljdbc.jar复制到tomcat的lib目录下。
设置Classpath
JDBC驱动程序并未包含在JavaSDK中。
因此,如果要使用该驱动程序,必须将classpath设置为包含sqljdbc.jar文件,如果classpath缺少sqljdbc.jar项,应用程序将引发“找不到类”的常见异常。
sqljdbc.jar文件的安装位置如下:
<安装目录>\sqljdbc_<版本>\<语言>\sqljdbc.jar
下面是用于Windows应用程序的CLASSPATH语句实例:
在CLASSPATH的设置中追加如下设置语句
CLASSPATH=.;%ProgramFiles%\sqljdbc_1.1\chs\sqljdbc.jar,
其中.代表当前目录,如果在CLASSPATH的设置中没有,则需要增加上,如已经设置,则不需此项,只需追加%ProgramFiles%\sqljdbc_1.1\chs\sqljdbc.jar就行了
如果%ProgramFiles%=C:
\ProgramFiles,
则追加语句为:
C:
\ProgramFiles\sqljdbc_1.1\chs\sqljdbc.jar
下面是用于Unix/Linux应用程序的CLASSPATH语句实例:
CLASSPATH=.:
/home/usr1/mssqlserver2005jdbc/Driver/sqljdbc_1.1/chs/sqljdbc.jar
注意:
在Window系统中,如果目录名长于8.3或文件夹名中包含空格,将导致classpath出现问题。
如果怀疑存在这类问题,应暂时将sqljdbc.jar文件移动到名称简单的目录中,例如C:
\Temp,更改classpath,然后测试这样是否解决了问题。
直接在命令提示符运行的应用程序
在操作系统中配置classpath。
将sqljdbc.jar追加到系统的classpath中。
或者,使用java-classpath选项,可以在运行此应用程序的Java命令行上指定classpath。
设置SQLServer服务器
如果使用是SQLServer2005标准版SP2,这些都默认即可,一般不用配置。
如果需要配置端口请看下面。
1、“开始”→“程序”→“MicrosoftSQLServer2005”→“配置工具”→“SQLServer配置管理器”→“SQLServer2005网络配置”→“MSSQLSERVER的协议”
2、如果“TCP/IP”没有启用,右键单击选择“启动”。
3、双击“TCP/IP”进入属性设置,在“IP地址”里,可以配置“IPAll”中的“TCP端口”,默认为1433。
4、重新启动SQLServer或者重启计算机。
设置SQLServer服务器用户名和密码
打开“SQLServerManagementStudio”,登录连接SQLServer服务器,设置如下:
1、使用ManagementStudio启用sa登录帐户
1)在对象资源管理器中,依次展开“安全”、“登录名”,右键单击“sa”,再单击“属性”。
2)在“常规”页上,您可能需要为sa登录名创建密码并确认该密码。
3)在“状态”页上的“登录”部分中,单击“启用”,然后单击“确定”。
2、更改安全验证模式:
1)在SQLServerManagementStudio的对象资源管理器中,右键单击服务器,再单击“属性”。
2)在“安全性”页上的“服务器身份验证”下,选择SQLServer和Windows身份验证模式,再单击“确定”。
“登录审核”下选择–仅限失败的登录;
3)在SQLServerManagementStudio对话框中,单击“确定”以确认需要重新启动SQLServer
在Eclipse中测试
1、打开Eclipse,“文件”→“新建”→“项目”→“Java项目”,项目名为Test
2、在Eclipse中,选择“窗口”→“首选项...”→“Java”→“已安装的JRE”,选择已安装的JRE,点击“编辑”→“添加外部”,选择%ProgramFiles%\sqljdbc_1.1\chs\sqljdbc.jar
3、在Test项目的“JRE系统库”中可以看见sqljdbc.jar,如果没有可以右键单击项目Test→“构建路径”→“配置构建路径...”→“Java构建路径”→“库”→“添加外部JAR...”,选择%ProgramFiles%\sqljdbc_1.1\chs\sqljdbc.jar
4、编写Java代码,如下:
importjava.sql.*;
publicclassTest{
publicstaticvoidmain(String[]srg){
StringdriverName="com.microsoft.sqlserver.jdbc.SQLServerDriver"; //加载JDBC驱动
StringdbURL="jdbc:
sqlserver:
//localhost:
1433;DatabaseName=test"; //连接服务器和数据库test
StringuserName="sa"; //默认用户名
StringuserPwd="123456"; //密码
ConnectiondbConn;
try{
Class.forName(driverName);
dbConn=DriverManager.getConnection(dbURL,userName,userPwd);
System.out.println("ConnectionSuccessful!
"); //如果连接成功控制台输出ConnectionSuccessful!
}catch(Exceptione){
e.printStackTrace();
}
}
}
1.JSP页面直接连接数据库
代码如下:
<%@pagelanguage="java"import="java.util.*"pageEncoding="gb2312"%>
<%@pageimport="java.sql.*"%>
DOCTYPEHTMLPUBLIC"-//W3C//DTDHTML4.01Transitional//EN">
MyJSP'index.jsp'startingpage
---->
<%Connectioncon=null;
try{
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");//加载JDBC驱动器类
StringURL="jdbc:
sqlserver:
//localhost:
1433;DatabaseName=school";//设置连接的数据库
StringUSER="sa";
StringPWD="123456";
con=DriverManager.getConnection(URL,USER,PWD);
con.close();
out.print("数据库连接成功!
")
}
catch(Exceptionex){
out.print("出现意外,信息是:
"+ex.getMessage());
ex.printStackTrace();
}
%>
<%@pagelanguage="java"import="java.util.*"pageEncoding="gb2312"%>
<%@pageimport="java.sql.*"%>
DOCTYPEHTMLPUBLIC"-//W3C//DTDHTML4.01Transitional//EN">
MyJSP'index.jsp'startingpage
---->
<%Connectioncon=null;
try{Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");//加载JDBC驱动器类
StringURL="jdbc:
sqlserver:
//localhost:
1433;DatabaseName=school";//设置连接的数据库
StringUSER="sa";S
tringPWD="123456";
con=DriverManager.getConnection(URL,USER,PWD);Stringsql="select*fromuserInfo";
Statementstmt=con.createStatement();
ResultSetrs=stmt.executeQuery(sql);
while(rs.next()){
System.out.print(rs.getString("userID")+"");
System.out.print(rs.getString("name"));}
con.close();
stmt.close();
out.print("数据库连接成功!
")}
catch(Exceptionex){
out.print("出现意外,信息是:
"+ex.getMessage());
ex.printStackTrace();}
finally{
if(con!
=null)
try{
con.close();}
catch(Exceptione){}}
%>
2、用javabean连接数据库packagejdbc;importjava.sql.Connection;importjava.sql.DriverManager;importjava.sql.ResultSet;importjava.sql.SQLException;importjava.sql.Statement;publicclassTest{privateConnectionconn=null;publicTest(){super();}publicvoidgetConnection(){try{Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver").newInstance();StringURL="jdbc:
sqlserver:
//localhost:
1433;DatabaseName=testDB";StringUSER="sa";//根据你自己设置的数据库连接用户进行设置StringPASSWORD="123";//根据你自己设置的数据库连接密码进行设置conn=DriverManager.getConnection(URL,USER,PASSWORD);}catch(java.lang.ClassNotFoundExceptionce){System.out.println("GetConnectionerror:
");ce.printStackTrace();}catch(java.sql.SQLExceptionse){System.out.println("GetConnectionerror:
");se.printStackTrace();}catch(Exceptione){System.out.println("GetConnectionerror:
");e.printStackTrace();}}publicvoidtestConnection(){