SQLServer数据库驱动包的使用

Posted 牵只蜗牛去散步!

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQLServer数据库驱动包的使用相关的知识,希望对你有一定的参考价值。

1.首先,先下载sqlserver 数据库驱动程序 和Oracle 数据库驱动程序 ,下面我将用到sqljdbc.jar和ojdbc6.jar,这里的sqljdbc.jar是属于SQL Server 2005的 驱动程序 包,ojdbc6.jar是Oracle 11g的 数据库驱动程序 包,在Oracle的安装目录下可以找到,我的安装目录在E盘,即在: 

E:\\app\\Administrator\\product\\11.2.0\\dbhome_1\\jdbc\\lib这个路径下,里面有一些jar包,其中ojdbc6.jar是用于jdk 1.6的,我刚好jdk是1.6版本,所以就直接拿来用了,如果没有的可以去网上下载:


2.我们下载得到数据库驱动程序jar包后,打开我们的MyEclipse软件工具,创建一个新项目,这里我的项目名为JdbcTest,把我们下载的驱动程序包复制到WebRoot下的WEB-INF下lib目录下,在创建个tom.servlet包,创建2个类,继承于HttpServlet类,目录层次如下图所示,其中的JdbcTest是测试sqlserver驱动程序的,OracJdbcTest是测试Oracle数据库驱动程序的:

3.接下来便开始写测试代码,看是否可以连接到数据库驱动,直接上代码,首先是JdbcTest.java文件的代码,用来测试sqlserver驱动程序的,其中的127.0.0.1是本机的服务器的意思,其中的1433是sqlserver数据库里的TCP/IP里面的端口号:

package tom.servlet;

import java.io.IOException;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class JdbcTest extends HttpServlet 
	/*
	 *java驱动的测试
	 */

	@Override
	protected void service(HttpServletRequest request,
			HttpServletResponse response) throws ServletException, IOException 
		//加载驱动
		try 
			Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver")
					.newInstance();
		 catch (Exception e) 
			// TODO Auto-generated catch block
			e.printStackTrace();
		
		//与指定数据库创建连接
		try 
			String uri = "jdbc:sqlserver://127.0.0.1:1433;DatabaseName=employee";
			String user = "xg";
			String password = "123456";
			Connection con = DriverManager.getConnection(uri, user, password);
			System.out.println(con.toString());
		 catch (SQLException e) 
			// TODO Auto-generated catch block
			e.printStackTrace();
		
	


4.接下里附上OracJdbcTest.java文件的代码,用来测试Oracle数据库驱动程序的,在下面的代码中,其中的127.0.0.1是本机服务器的意思,1521是Oracle数据库的端口号,那个orcl是全局数据库名,scott是一个模式,123456即为密码:

package tom.servlet;

import java.io.IOException;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class OracJdbcTest extends HttpServlet

	/*
	 *java驱动的测试
	 */
	@Override
	protected void service(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException 
		//加载驱动
		try 
			Class.forName("oracle.jdbc.driver.OracleDriver");
		 catch (ClassNotFoundException e) 
			// TODO Auto-generated catch block
			e.printStackTrace();
		
		//与指定数据库创建连接
		try 
			Connection con=DriverManager.getConnection("jdbc:oracle:thin:@127.0.0.1:1521:orcl","scott" , "123456");
			System.out.println(con.toString());
			con.close();
		 catch (SQLException e) 
			// TODO Auto-generated catch block
			e.printStackTrace();
		
	
	

5.接下来还必须在web.xml里配置声明两个servlet,即把上面两个测试代码配置下,在输入不同的网址会在控制台下显示不同的连接成功或失败的信息,web.xml文件代码如下:

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="3.0" 
	xmlns="http://java.sun.com/xml/ns/javaee" 
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
	xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
	http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
  <display-name></display-name>	
  <welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
  </welcome-file-list>
  
  <servlet>
  <servlet-name>jdbcTest</servlet-name>
  <servlet-class>tom.servlet.JdbcTest</servlet-class>
  </servlet>
  
  <servlet-mapping>
  <servlet-name>jdbcTest</servlet-name>
  <url-pattern>/test</url-pattern>
  </servlet-mapping>
  
    <servlet>
  <servlet-name>oracjdbcTest</servlet-name>
  <servlet-class>tom.servlet.OracJdbcTest</servlet-class>
  </servlet>
  
  <servlet-mapping>
  <servlet-name>oracjdbcTest</servlet-name>
  <url-pattern>/test1</url-pattern>
  </servlet-mapping>
</web-app>

6.部署此项目,打开tomcat服务器,打开MyEclipse web Brower浏览器,输入各自的网址,点击运行即可看到控制台下相应的连接成功失败信息:

上图测试sqlserver的连接成功,接下来测试Oracle数据库驱动程序是否连接成功,输入另一个网址:

上图表明连接Oracle数据库驱动成功了。

7.注,在这里,要注意连接对应驱动时端口号的问题,和是否开启了相应的服务,像sqlserver里的TCP/IP那里有可能是禁用的,要求我们开启,或者端口号不是1433,因此要看情况,默认sqlserver TCP/IP的端口号是1433,Oracle数据库的端口号为1521,服务器不一样也会导致连接不到数据库,我的全部都是本机服务器,直接就写127.0.0.1了。

8.此文章是我学习积累得到的,仅供大家学习参考,写得不好,请见谅,如果有什么问题和错误请指出,谢谢!

以上是关于SQLServer数据库驱动包的使用的主要内容,如果未能解决你的问题,请参考以下文章

用jdbc连接数据库时出现java.lang.ClassNotFoundException: com.microsoft.jdbc.sqlserver.SQLServerDrive

SQLserver 使用网络驱动器恢复数据库

[架构之路-45]:目标系统 - 系统软件 - Linux OS硬件设备驱动-网络驱动程序模型网络数据包的收发流程

将 SQLserver jdbc 驱动程序连接到 Dataproc 集群

使用JDBC访问SQLServer 2008

plsql developer是mysql吗?sqlserver又是啥?他们去驱动程序一样吗