### 在JSP中连接各种数据库 #### 概述 在Java Server Pages (JSP) 中连接数据库是一项常见的操作,主要用于动态地从数据库中获取数据并显示在网页上。本文将详细介绍如何在JSP中实现与MySQL、Oracle、SQL Server 和 DB2 数据库的连接,并通过具体的示例代码来说明每种数据库的连接方式。 #### MySQL 数据库连接 MySQL 是一款非常流行的开源关系型数据库管理系统。要在JSP中连接MySQL,首先需要下载并配置MySQL JDBC驱动(通常称为Connector/J)。下面是一个简单的示例: ```java <%@ page contentType="text/html;charset=UTF-8" %> <%@ page import="java.sql.*" %> <html> <head> <title>连接MySQL示例</title> </head> <body> <% try { Class.forName("com.mysql.cj.jdbc.Driver"); String url = "jdbc:mysql://localhost:3306/databasename"; String user = "username"; String password = "password"; Connection conn = DriverManager.getConnection(url, user, password); Statement stmt = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY); String sql = "SELECT * FROM tablename"; ResultSet rs = stmt.executeQuery(sql); while (rs.next()) { out.println("第一列为: " + rs.getString(1)); out.println("第二列为: " + rs.getString(2)); } out.println("连接成功"); rs.close(); stmt.close(); conn.close(); } catch (Exception e) { e.printStackTrace(); } %> </body> </html> ``` #### Oracle 数据库连接 Oracle 是一款广泛应用于企业级应用的关系型数据库系统。连接Oracle数据库时,需要使用Oracle提供的JDBC驱动。示例如下: ```java <%@ page contentType="text/html;charset=gb2312" %> <%@ page import="java.sql.*" %> <html> <body> <% try { Class.forName("oracle.jdbc.driver.OracleDriver").newInstance(); String url = "jdbc:oracle:thin:@localhost:1521:orcl"; String user = "scott"; String password = "tiger"; Connection conn = DriverManager.getConnection(url, user, password); Statement stmt = conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE); String sql = "SELECT * FROM test"; ResultSet rs = stmt.executeQuery(sql); while (rs.next()) { out.println("第一列为: " + rs.getString(1)); out.println("第二列为: " + rs.getString(2)); } out.println("连接成功"); rs.close(); stmt.close(); conn.close(); } catch (Exception e) { e.printStackTrace(); } %> </body> </html> ``` #### SQL Server 数据库连接 SQL Server 是微软开发的一款强大的关系型数据库管理系统,广泛应用于各种企业级应用中。连接SQL Server数据库时,可以使用Microsoft提供的JDBC驱动。示例如下: ```java <%@ page contentType="text/html;charset=gb2312" %> <%@ page import="java.sql.*" %> <html> <body> <% try { Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver").newInstance(); String url = "jdbc:sqlserver://localhost:1433;databaseName=pubs"; String user = "sa"; String password = ""; Connection conn = DriverManager.getConnection(url, user, password); Statement stmt = conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE); String sql = "SELECT * FROM test"; ResultSet rs = stmt.executeQuery(sql); while (rs.next()) { out.println("第一列为: " + rs.getString(1)); out.println("第二列为: " + rs.getString(2)); } out.println("连接成功"); rs.close(); stmt.close(); conn.close(); } catch (Exception e) { e.printStackTrace(); } %> </body> </html> ``` #### DB2 数据库连接 DB2 是IBM开发的一款高性能关系型数据库管理系统。连接DB2数据库时,需要使用IBM提供的JDBC驱动。示例如下: ```java <%@ page contentType="text/html;charset=gb2312" %> <%@ page import="java.sql.*" %> <html> <body> <% try { Class.forName("com.ibm.db2.jdbc.app.DB2Driver").newInstance(); String url = "jdbc:db2://localhost:5000/sample"; String user = "admin"; String password = ""; Connection conn = DriverManager.getConnection(url, user, password); Statement stmt = conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE); String sql = "SELECT * FROM test"; ResultSet rs = stmt.executeQuery(sql); while (rs.next()) { out.println("第一列为: " + rs.getString(1)); out.println("第二列为: " + rs.getString(2)); } out.println("连接成功"); rs.close(); stmt.close(); conn.close(); } catch (Exception e) { e.printStackTrace(); } %> </body> </html> ``` #### 小结 以上是关于如何在JSP中连接MySQL、Oracle、SQL Server 和 DB2 数据库的详细示例。需要注意的是,在实际部署环境中,为了提高性能和安全性,通常会将JDBC驱动文件放置在JSP应用的`WEB-INF/lib`目录下,并且使用`Class.forName()`方法加载驱动时,建议使用`Class.forName("driverClassName")`而不是`Class.forName("driverClassName").newInstance()`的方式。此外,为了代码的健壮性和可维护性,推荐使用try-with-resources语句自动关闭资源,或者在finally块中确保资源被正确关闭。
testoracle.jsp如下:
<%@ page contentType="text/html;charset=gb2312"%>
<%@ page import="java.sql.*"%>
<html>
<body>
<%Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();
String url="jdbc:oracle:thin:@localhost:1521:orcl";
//orcl为你的数据库的SID
String user="scott";
String password="tiger";
Connection conn= DriverManager.getConnection(url,user,password);
Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
String sql="select * from test";
ResultSet rs=stmt.executeQuery(sql);
while(rs.next()) {%>
您的第一个字段内容为:<%=rs.getString(1)%>
您的第二个字段内容为:<%=rs.getString(2)%>
<%}%>
<%out.print("数据库操作成功,恭喜你\");%>
<%rs.close();
stmt.close();
conn.close();
%>
</body>
</html>
二、jsp连接Sql Server7.0/2000数据库
testsqlserver.jsp如下:
<%@ page contentType="text/html;charset=gb2312"%>
<html>
<body>
<%Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();
String url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=pubs";
//pubs为你的数据库的
String user="sa";
String password="";
Connection conn= DriverManager.getConnection(url,user,password);
Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
String sql="select * from test";
ResultSet rs=stmt.executeQuery(sql);
while(rs.next()) {%>
您的第一个字段内容为:<%=rs.getString(1)%>
您的第二个字段内容为:<%=rs.getString(2)%>
<%}%>
<%out.print("数据库操作成功,恭喜你\");%>
<%rs.close();
stmt.close();
conn.close();
%>
</body>
</html>
三、jsp连接DB2数据库
testdb2.jsp如下:
<%@ page contentType="text/html;charset=gb2312"%>
<%@ page import="java.sql.*"%>
<html>
<body>
剩余6页未读,继续阅读
- 粉丝: 0
- 资源: 10
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- STM32参考资料STM32 固件库使用参考资料
- java智能停车后台管理系统源码数据库 MySQL源码类型 WebForm
- STM32参考资料STM32中断优先级与相关使用概念
- Linux环境下,关于C++静态库的封装和调用代码
- STM32参考资料STM32F10x常见应用解析
- java面试视频资源微服务架构之Spring Cloud Eureka 场景分析与实战
- java面试视频资源探索JVM底层奥秘ClassLoader源码分析与案例讲解
- java面试视频资源锁分布式锁无锁实战全局性ID
- java基于SSM的酒店管理系统源码数据库 MySQL源码类型 WebForm
- java面试视频资源JAVA并发编程之多线程并发同步业务场景与解决方案