Maison > Article > base de données > Jsp之使用纯Java数据库驱动程序(sqlserver,Oracle数据库为例)
1.首先,先下载sqlserver 数据库 驱动 程序 和Oracle 数据库 驱动 程序 ,下面我将用到sqljdbc.jar和ojdbc6.jar,这里的sqljdbc.jar是属于SQLServer 2005的 驱动 程序 包,ojdbc6.jar是Oracle 11g的 数据库 驱动 程序 包,在Oracle的安装目录下可以找到,我的
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<strong>驱动</strong>的测试 */ @Override protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //加载<strong>驱动</strong> try { Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver") .newInstance(); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } //与指定<strong><strong>数据库</strong></strong>创建连接 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<strong>驱动</strong>的测试 */ @Override protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //加载<strong>驱动</strong> try { Class.forName("oracle.jdbc.driver.OracleDriver"); } catch (ClassNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } //与指定<strong><strong>数据库</strong></strong>创建连接 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.此文章是我学习积累得到的,仅供大家学习参考,写得不好,请见谅,如果有什么问题和错误请指出,谢谢!