怎么使用JDBC连接SQL Server
一、1、安装好SQL Server 2012后,运行 滚猛开始 → 所有程序盯孙 → Microsoft SQL Server 2012 → 配置工具 →SQL
Server配置管理器,如下图1所示:
图1
2、打开的窗口如下图所示。在左边栏找到 SQL Server网络配置选项,点开它的小箭头,会看到“【你的数据库名】的协议” (图中是ERIC2012的协议),选中它,看右边栏。如下图2所示:
图2
(1)如果Named Pipes 未启用,则右键→启用
(2)右键单击 TCP/IP,选择 启用
(3)双击TCP/IP(右键→属性),在弹出的窗口中选择 “IP地址” 选项卡,将IP1和IP10的【IP地址】设为127.0.0.1,并将所有【IPx】的【已启用】设为是。接着,拖动下拉条到最下方,将 IPAll 中的【TCP端口】设成 【1433】,其余不变。如下图3和图4所示:
图3
图4
3、重新启动计算机。
4、接下来使用telnet命令测试1433端口是否打开。首先要保证telnet服务开启。
5、完成上一步后。开始菜单 → 运行cmd → 输入:telnet 127.0.0.1 1433,(注意telnet与127之间有空格,1与1433之间有空格)。如下图:
二、准备用于查询的数据库和数据表:
1.打开SQL Server Manage Studio打开SQL Server 2012。
2.新建一个名为UniversityDB的数据库。
3.新建一个名为course的表并且插入如下记录。
三、在Eclipse中建立工程并且进行配置:
1..打开Eclipse。
2..新建一个Dynamic Web Project。
3.命名为JDBCdemo。
4.将之前下载的sqljdbc4.jar复制到WEB-INF/lib目录下。
5.如果WEB-INF目录下没有lib目录,就手动创建。
6.右键单击工程名,在弹出的菜单中选择Build Path。
7.如果选择 add JARs。
8.然后选中sqljdbc4.jar之后点确定。
9.在工程目录的WebContent目录下新建一个JSP文件。
添加如下代码:
<%@ 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" "
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Insert title here</title>
</head>
<body>
<%
Statement sql;
ResultSet rs;
String driverName = "com.microsoft.sqlserver.jdbc.SQLServerDriver"; //加载JDBC驱动
String dbURL = "jdbc:sqlserver://localhost:1433; DatabaseName=UniversityDB"; //连接服务器和数据库sample
String userName = "sa"; //默认用户名
String userPwd = "wkt19910602"; //密码
Connection dbConn;
try {
Class.forName(driverName);
dbConn = DriverManager.getConnection(dbURL, userName, userPwd);
sql=dbConn.createStatement();
rs=sql.executeQuery("select*from course");
System.out.println("Connection Successful!"); //如果连接成功 控制台输出Connection Successful!
out.println("<table Border>");
out.println("<tr><td colspan=8 align=center>用户数据</td></tr>");
out.println("<tr>");
out.println("<td width=100>大则桥CourseId</td>");
out.println("<td width=100>Title</td>");
out.println("<td width=100>Department</td>");
out.println("<td width=100>Credits</td>");
out.println("</tr>");
while(rs.next())
{
out.println("<tr>");
out.println("<td>"+rs.getString(1)+"</td>");
out.println("<td>"+rs.getString(2)+"</td>");
out.println("<td>"+rs.getString(3)+"</td>");
out.println("<td>"+rs.getString(4)+"</td>");
out.println("</tr>");
}
out.println("</table>");
dbConn.close();
} catch (Exception e) {
e.printStackTrace();
}
%>
</body>
</html>
10.最后还需要配置环境变量:将sqljdbc4.jar加入到classpath中。
11.具体方法如下(以win7为例):
计算机=>右键选择属性=>选择高级系统设置=>选择环境变量=>在classpath中添加sqljdbc4.jar的所在位置。
编译运行工程,结果如下:
JDBC: (Java DataBase Connectivity Java数据库连接)
JDBC是一种用于执行SQL语句的Java的API. 可以为多种关系型数据库提供统一的访问. 它是由灶枣一组使用Java语言编写的类或接口组成.
JDBC开发步骤
1. 搭建开发环境, 引入数据库驱动(导入数据库驱动的jar包)
相关jar包: mysql-connector-java-5.0.8-bin.jar
2. 具体代码实现
public void demo1() throws SQLException(){
//加载驱动
Class.forName("com.mysql.jdbc.Driver");
//获得连接
Connection connection = DriverManager.getConnection("jdbc:mysql://笑辩localhost:3306/数据库名称","登录名","登录密码");
//编写SQL并执行SQL
String sql = "select * from user"; //需要执行的sql语句
Statement statement = connection.createStatement();
//结果集 -- 执行查询数据,其他操作需另隐升拆写代码
ResultSet rs = statement.executeQuery(sql);
//遍历 打印获得的数据
while(rs.next()){
int id = rs.getInt("id");
String username =
rs.getString("username");
String password = rs.getString("password");
System.out.println(id+" "+username+" "+password);
}
// 4.释放资源.
rs.close();
statement.close();
connection.close();
}
2016-04-27 · 做真实的自己 用良心做教育
Connection con = null;
Statement stmt = null;
ResultSet rs = null;
String connectionUrl = "jdbc:sqlserver://IP:1433;databasename=数据库";
try {
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver")
.newInstance();
con = DriverManager.getConnection(connectionUrl, "用户", "密码");
// 调用存储过程
// CallableStatement stat = null;
// stat = con.prepareCall("{call boss(?)}");
// stat.setString(1, "0601");
// rs = stat.executeQuery();
String SQL = "select * from t_userinfo ";
stmt = con.createStatement();
rs = stmt.executeQuery(SQL);
while (rs.next()) {
String codeid = rs.getString("u_name");
String code = rs.getString("u_pwd");
String codedesc = rs.getString("u_code");
System.out.println(codeid + code + codedesc);
}
// 打印表字段
// ResultSetMetaData rsmd = rs.getMetaData();
// int count = rsmd.getColumnCount();
// StringBuilder sBuilder = new StringBuilder();
// for (int i = 1; i <= count; i++) {
// sBuilder.append(rsmd.getColumnName(i)).append(",");
// }
// System.out.println(sBuilder.toString());
} catch (Exception e) {
e.printStackTrace();
} finally {
if (rs != null)
try {
rs.close();
} catch (Exception e) {
}
if (stmt != null)
try {
stmt.close();
} catch (Exception e) {
}
if (con != null)
try {
con.close();
} catch (Exception e) {
}
}
}