本篇文章主要介绍了" Java远程访问SQL Server 2008R2数据库",主要涉及到方面的内容,对于Javajrs看球网直播吧_低调看直播体育app软件下载_低调看体育直播感兴趣的同学可以参考一下:
原本想在本地安装oracle数据库,以便学习数据库编程,但linux安装oracle非常麻烦,因此,采用远程访问的方式,使用另一台Windows计...
原本想在本地安装oracle数据库,以便学习数据库编程,但linux安装oracle非常麻烦,因此,采用远程访问的方式,使用另一台Windows计算机上的SQL Server2008 R2数据库。为方便以后编程时使用,特封装了Java在Linux平台上通过jdbc驱动远程访问SQL Server 2008 R2的类,以供各位参考纠正。
封装的Sql类采用Java的单例模式实现,对外提供方法包括:
1.返回实例方法:Instance(String dbURL,String userName,String userPwd);
2.创建连接方法:Connect();
3.建立查询方法:SqlQuery(String strsql);
4.返回访问数据结果对象方法:resultSet();
5.关闭连接方法:Close();
Sql类
package com.anson.java;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
/**
* 使用java单例模式,封装对通过jdbc对sql server远程访问类
* @author anson
*
*/
public class Sql {
private static Sql sqlObj=null;
private final String driverName="com.microsoft.sqlserver.jdbc.SQLServerDriver";
private String dbURL=null;
private String userName=null;
private String userPwd=null;
private Connection c
private Statement statement=null;
private ResultSet resultset=null;
/**
* 私有构造函数
* 构建sql server连接字
* @param dbURL
* @param userName
* @param userPwd
*/
private Sql(String dbURL,String userName,String userPwd)
{
this.dbURL=dbURL;
this.userName=userName;
this.userPwd=userPwd;
}
/**
* 提供对外访问方法
* @param dbURL 远程IP及端口,例如“jdbc:sqlserver://100.120.13.72:1433;DatabaseName=MyTestDB”
* @param userName 用户名,例如“sa”
* @param userPwd 用户密码,例如“123456”
* @return Sql类的唯一实例,对象名称sqlObj
*/
public static Sql Instance(String dbURL,String userName,String userPwd)
{
try
{
if(null==sqlObj)
{
sqlObj=new Sql(dbURL,userName,userPwd);
}
}
catch(Exception e)
{
e.printStackTrace();
}
return sqlObj;
}
/**
* 提供外部访问数据的方法
* @return ResultSet对象
*/
public ResultSet resultSet()
{
return this.resultset;
}
/**
* 创建数据库连接
*/
public void Connect()
{
try
{
//加载SQL SERVER驱动程序
Class.forName(driverName);
//建立连接
this.c userName, userPwd);
this.statement=this.connction.createStatement();
}
catch (SQLException e)
{
// TODO Auto-generated catch block
System.out.println("Error Get Data!");
e.printStackTrace();
}
catch (ClassNotFoundException e)
{
// TODO Auto-generated catch block
System.out.print("Error Loading SQLServer Driver!");
e.printStackTrace();
}
}
/**
* 建立sql查询
* @param strsql 所需编写的sql server查询语句
*/
public void SqlQuery(String strsql)
{
try
{
this.resultset=this.statement.executeQuery(strsql);
}
catch (SQLException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
}
/**
* 关闭链数据科连接
*/
public void Close()
{
try
{
//关闭所有连接
this.resultset.close();
this.statement.close();
this.connction.close();
}
catch (SQLException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
以下使用Test类测试Sql类的使用,Test类连接的的是另一台主机的SQL Server 2008 R2数据库。再次之前,需事先将该SQL Server 2008 R2配置为可远程访问。
Test类
package com.anson.java;
import java.sql.ResultSet;
import java.sql.SQLException;
public class Test {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
String dbURL="jdbc:sqlserver://100.120.13.72:1433;DatabaseName=MyTestTeachingDB";
String userName="sa";
String userPwd="123456";
Sql sql=Sql.Instance(dbURL, userName, userPwd);
sql.Connect();
String strsql="select s.sno as 学号,s.sname as 姓名,c.cno as 课程号,c.cname as 课程名,sc.grade as 成绩" +
" from student s, student_course sc,course c" +
" where s.sno=sc.sno and c.cno=sc.cno";
sql.SqlQuery(strsql);
try
{
ResultSet resultSet=sql.resultSet();
while(resultSet.next())
{
System.out.println(resultSet.getString("学号")+" "+
resultSet.getString("姓名")+" "+resultSet.getString("成绩"));
}
}
catch (SQLException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
测试结果:

(以上为从数据库导出的部分数据截图)
以上就介绍了 Java远程访问SQL Server 2008R2数据库,包括了方面的内容,希望对Javajrs看球网直播吧_低调看直播体育app软件下载_低调看体育直播有兴趣的朋友有所帮助。
本文网址链接:http://www.codes51.com/article/detail_2813716.html