Java实现JSP在Servelt中连接Oracle数据库的方法

时间:2021-10-22 03:36:12

本文实例讲述了Java实现JSP使用Servelt连接Oracle数据库的方法。为了实现在Servlet 中连接数据库,必须编写Servlet 的类程序。将Servlet 类程序放到WEB 服务器的servlets 或者classes 目录下面,为调用Servlet,需要创建发送Servlet 请求的HTML 文档。本例通过(Driver)Class.forName(driverName).newInstance()方法来实现加载驱动程序,建立与数据库连接。

具体程序代码为:

1.Database 类继承了HttpServlet 类,共有两个方法:doGet()和displayResult(),代码如下:

?
1
2
3
4
5
public class Database extends HttpServlet
{
public void doGet();
public void displayResult(ResultSet results,PrintWriter out);
}

2.在doGet()方法中建立与数据库的连接并执行查询:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
public void doGet()
{
HttpServletRequest request,
HttpServletResponse response
}
throws ServletException, IOException
{
PrintWriter out;
String java" id="highlighter_553340">
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
public void displayResult(ResultSet results,PrintWriter out)
{
StringBuffer buf = new StringBuffer();
String temp;
try
{
ResultSetMetaData rsmd = results.getMetaData();
int numCols = rsmd.getColumnCount();
int i, rowcount = 0;
for (i=1; i <= numCols; i++)
{
if (i > 1) buf.append(",");
buf.append(rsmd.getColumnLabel(i));
}
buf.append("");
while (results.next() && rowcount < 100)
{
for (i=1; i <= numCols; i++)
{
if (i > 1) buf.append(",");
buf.append((results.getString(i)));
}
buf.append("<br>");
rowcount++;
}
out.println("<br>");
out.println(buf.toString());
results.close();
}
catch (Exception e)
{
out.println("error: " + e.toString());
return;
}
}

4.因为程序使用了JDBC 类、servlet 类和使用控制台输出,所以需要引入如下的包:

?
1
2
3
4
import java.sql.*;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;

5.编译Database.java,产生Database.class 文件,将Database.class 放到WEB 服务器的servlets 目录下,本例采用Java Web Server 作为WEB 服务器。配置好WEB 服务器,添加database.class,指定名称为database。

6.编写调用Servlet 的database.html 文件。代码如下:

?
1
2
3
4
5
6
7
8
9
10
11
12
<html>
<head>
<title>Jsp使用Servlet连接数据库</title>
</head>
<body>
<center>
<form action="/servlet/database" method="get">
<input name="action" type="submit" value="连接数据库">
</form>
</center>
</body>
</html>

延伸 · 阅读

精彩推荐
  • JAVA教程Java实现JSP在Servelt中连接Oracle数据库的方法

    java基础知识I/O流使用详解

    编程语言的I/O类库中常常使用流这个抽象的概念,它代表任何有能力产生数据的数据源对象或时有能力接收数据的接收端对象,本文为大家介绍Java中I/O系统...

    java技术网2602019-10-27
  • JAVA教程Java实现JSP在Servelt中连接Oracle数据库的方法

    java jdk动态代理详解

    动态代理类的Class实例是怎么生成的呢,是通过ProxyGenerator类来生成动态代理类的class字节流,把它载入方法区 ...

    java技术网1372019-10-14
  • JAVA教程Java实现JSP在Servelt中连接Oracle数据库的方法

    java使用数组和链表实现队列示例

    队列是一种特殊的线性表,它只允许在表的前端(front)进行删除操作,只允许在表的后端(rear)进行插入操作,下面介绍一下java使用数组和链表实现队列的示...

    java教程网3582019-11-05
  • JAVA教程Java实现JSP在Servelt中连接Oracle数据库的方法

    java生成图片验证码示例程序

    这篇文章主要介绍了java生成图片验证码示例程序,大家参考使用吧 ...

    java教程网1452019-10-22
  • JAVA教程Java实现JSP在Servelt中连接Oracle数据库的方法

    使用java将动态网页生成静态网页示例

    这篇文章主要介绍了使用java将动态网页生成静态网页示例,需要的朋友可以参考下 ...

    java教程网2202019-11-16
  • JAVA教程Java实现JSP在Servelt中连接Oracle数据库的方法

    java中使用DES加密解密实例

    这篇文章主要介绍了java中使用DES加密解密实例,需要的朋友可以参考一下 ...

    java技术网1362019-10-27
  • JAVA教程Java实现JSP在Servelt中连接Oracle数据库的方法

    map实现按value升序排序

    map内部是按照hash算法存储的,但如果能对map排序在某些时候还是有用的,下面实现对map按照value升序排序,实现对map按照key排序,大家参考使用吧 ...

    java教程网1432019-11-03
  • JAVA教程Java实现JSP在Servelt中连接Oracle数据库的方法

    深入理解Java高级特性——注解

    这篇文章主要介绍了Java高级特性——注解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小...

    洛基loky4062019-06-23