java连接 SQL 2005的方法:(2008-04-23 00:48:02)转载标签:it 分类:JAVA学习
1。到微软官方网站下载2005的jdbc并解压,获得文件sqljdbc.jar
2。复制文件sqljdbc.jar到jdk目录\jdk1.5\jre\lib\ext下。
3。开始-〉程序-〉sql server 2005-〉配置工具-〉SQL Server Configuration Manager。启动sql 2005服务。点击 sql server2005网络配置节点,并选中”MSSQLserver的协议“节点。
启用tcp/ip协议。
4。导入 java.sql.* 包。
5。载入sql server 2005 jdbc驱动程序。代码片断如下:
try{
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
} catch(Exception e)
{};
6。设置连接字符串。代码片断如下:
String connectionUrl ="jdbc:sqlserver://localhost:1433;database=bank;user=sa;password=";
7。根据连接串获取到数据库的连接。代码片断如下:
Connection con = DriverManager.getConnection(connectionUrl);
8。根据所获取的连接设置sql语句对象的属性。代码片断如下:
Statement stmt = con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,
ResultSet.CONCUR_UPDATABLE);
9。准备要执行的sql语句字符串。并把该字符串传给sql语句对象。执行结果保存在一个结果集中。
String str = "select * from tableName";
ResultSet rs = stmt.executeQuery(str);
10。遍历结果集合,并获取用户需要的信息。
while (rs.next()) {
System.out.println(rs.getInt("aid"));
}
1.
com.microsoft.sqlserver.jdbc.SQLServerException: 接收 TDS 预登录响应时发生 I/O 错误。(500错误)
[color=red]答:[/color]:我修改了一下端口号就可以了。
[color=red]2.端口号查看[/color]
默认的端口号是1433.
打开sql2005的SQL Server Configuration Manager -->展开网络配置 -->点击MYSQLSERVER协议 -->双击TCP/IP -->选择IP地址就能看到端口号了。
3.加裁sql2005jdbc驱动到web-inf/lib目录下
4.DBConnection.java代码。
-----------------------------------------
package com.util;
import java.sql.Connection;
import java.sql.DriverManager;
public class DBConnection {
public static Connection getConnection(){
Connection cn = null;
String url="jdbc:sqlserver://localhost:1434;databaseName=dbconnect";
try{
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
cn=(Connection) DriverManager.getConnection(url,"sa","zhangyuan");//依次是你的连接信息,数据库用户名,最后是密码
}catch(Exception e){
e.printStackTrace();
}
return cn;
}
}
----------------------------------------
-----------------DbconnectServlet.java代码---------
package com.servlet;
import java.io.IOException;
import java.io.PrintWriter;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.util.DBConnection;
import com.util.DBManager;
public class DbconnectServlet extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
this.doPost(request, response);
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String username=request.getParameter("username");
String password=request.getParameter("password");
System.out.println(username+password);
if(validateUser(username,password))
{
response.sendRedirect("login.jsp");
System.out.println(validateUser(username,password));
}
else
{
response.sendRedirect("error.jsp");
System.out.println(validateUser(username,password));
}
}
private boolean validateUser(String name,String pwd){
PreparedStatement pstmt = null;
ResultSet rs = null;
try{
pstmt = DBConnection.getConnection().prepareStatement(
"select * from login where login_username=? and login_password=?");
pstmt.setString(1, name);
pstmt.setString(2, pwd);
rs = pstmt.executeQuery();
if (rs.next())
return true;
}catch(SQLException e){
e.printStackTrace();
}
return false;
}
}
--------------------------------------------------------------------
1。到微软官方网站下载2005的jdbc并解压,获得文件sqljdbc.jar
2。复制文件sqljdbc.jar到jdk目录\jdk1.5\jre\lib\ext下。
3。开始-〉程序-〉sql server 2005-〉配置工具-〉SQL Server Configuration Manager。启动sql 2005服务。点击 sql server2005网络配置节点,并选中”MSSQLserver的协议“节点。
启用tcp/ip协议。
4。导入 java.sql.* 包。
5。载入sql server 2005 jdbc驱动程序。代码片断如下:
try{
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
} catch(Exception e)
{};
6。设置连接字符串。代码片断如下:
String connectionUrl ="jdbc:sqlserver://localhost:1433;database=bank;user=sa;password=";
7。根据连接串获取到数据库的连接。代码片断如下:
Connection con = DriverManager.getConnection(connectionUrl);
8。根据所获取的连接设置sql语句对象的属性。代码片断如下:
Statement stmt = con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,
ResultSet.CONCUR_UPDATABLE);
9。准备要执行的sql语句字符串。并把该字符串传给sql语句对象。执行结果保存在一个结果集中。
String str = "select * from tableName";
ResultSet rs = stmt.executeQuery(str);
10。遍历结果集合,并获取用户需要的信息。
while (rs.next()) {
System.out.println(rs.getInt("aid"));
}
1.
com.microsoft.sqlserver.jdbc.SQLServerException: 接收 TDS 预登录响应时发生 I/O 错误。(500错误)
[color=red]答:[/color]:我修改了一下端口号就可以了。
[color=red]2.端口号查看[/color]
默认的端口号是1433.
打开sql2005的SQL Server Configuration Manager -->展开网络配置 -->点击MYSQLSERVER协议 -->双击TCP/IP -->选择IP地址就能看到端口号了。
3.加裁sql2005jdbc驱动到web-inf/lib目录下
4.DBConnection.java代码。
-----------------------------------------
package com.util;
import java.sql.Connection;
import java.sql.DriverManager;
public class DBConnection {
public static Connection getConnection(){
Connection cn = null;
String url="jdbc:sqlserver://localhost:1434;databaseName=dbconnect";
try{
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
cn=(Connection) DriverManager.getConnection(url,"sa","zhangyuan");//依次是你的连接信息,数据库用户名,最后是密码
}catch(Exception e){
e.printStackTrace();
}
return cn;
}
}
----------------------------------------
-----------------DbconnectServlet.java代码---------
package com.servlet;
import java.io.IOException;
import java.io.PrintWriter;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.util.DBConnection;
import com.util.DBManager;
public class DbconnectServlet extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
this.doPost(request, response);
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String username=request.getParameter("username");
String password=request.getParameter("password");
System.out.println(username+password);
if(validateUser(username,password))
{
response.sendRedirect("login.jsp");
System.out.println(validateUser(username,password));
}
else
{
response.sendRedirect("error.jsp");
System.out.println(validateUser(username,password));
}
}
private boolean validateUser(String name,String pwd){
PreparedStatement pstmt = null;
ResultSet rs = null;
try{
pstmt = DBConnection.getConnection().prepareStatement(
"select * from login where login_username=? and login_password=?");
pstmt.setString(1, name);
pstmt.setString(2, pwd);
rs = pstmt.executeQuery();
if (rs.next())
return true;
}catch(SQLException e){
e.printStackTrace();
}
return false;
}
}
--------------------------------------------------------------------