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

 更新时间:2014年07月30日 17:21:08   投稿:shichen2014  
这篇文章主要介绍了Java实现JSP在Servelt中连接Oracle数据库的方法,需要的朋友可以参考下

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

具体程序代码为:

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

public class Database extends HttpServlet
{
public void doGet();
public void displayResult(ResultSet results,PrintWriter out);
}

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

public void doGet()
{
HttpServletRequest request,
HttpServletResponse response
}
throws ServletException, IOException
{
PrintWriter out;
String title = "Simple Servlet connecting to Oracle DB";
response.setContentType("text/html;charset=GB2312");
out = response.getWriter();
out.println("<HTML><HEAD><TITLE>");
out.println(title);
out.println("</TITLE></HEAD><BODY>");
out.println("<H1>" + title + "</H1>");
out.println("<P>This is output from SimpleServlet.");
String driverName = "oracle.jdbc.driver.OracleDriver";
Driver d;
Connection con;
Statement stmt;
ResultSet results;
try
{
d = (Driver)Class.forName(driverName).newInstance();
con = DiverManager.getConnection("jdbc:oracle:thin:ndb/ndb@192.168.1.6:1521:PC6");
stmt = con.createStatement();
String sqlstr = "select * from data";
results = stmt.executeQuery(sqlstr);
displayResult(results,out);
stmt.close();
con.close();
}
catch (Exception e)
{
out.println("error: " + e.toString());
}
out.println("</BODY></HTML>");
out.close();
}

3.DisplayResult()方法显示查询结果:

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 类和使用控制台输出,所以需要引入如下的包:

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 文件。代码如下:

<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>

相关文章

  • SpringBoot + MyBatis-Plus构建树形结构的几种方式

    SpringBoot + MyBatis-Plus构建树形结构的几种方式

    在实际开发中,很多数据都是树形结构,本文主要介绍了SpringBoot + MyBatis-Plus构建树形结构的几种方式,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-08-08
  • SpringBoot的配置文件(properties与yml)使用方法

    SpringBoot的配置文件(properties与yml)使用方法

    配置文件中的配置类型有两类,一类是系统配置项,这种配置的格式都是固定的,是给系统使用的,另一种是用户自定义配置,用户可以随意地规定配置项的格式,又用户自行去设置和读取,这篇文章主要介绍了SpringBoot的配置文件(properties与yml)使用方法,需要的朋友可以参考下
    2023-08-08
  • Java查看变量的数据类型的三种方法

    Java查看变量的数据类型的三种方法

    Java是一门强类型的编程语言,它对变量的数据类型有严格的限定,在定义变量时必须声明变量的数据类型,在为变量赋值时必须赋予与变量同一种类型的值,否则程序会报错, 所以本文给大家介绍了Java查看变量的数据类型的三种方法,需要的朋友可以参考下
    2024-10-10
  • java开发之内部类的用法

    java开发之内部类的用法

    本篇文章介绍了,java开发之内部类的用法。需要的朋友参考下
    2013-05-05
  • java中的PriorityQueue类过程详解

    java中的PriorityQueue类过程详解

    这篇文章主要介绍了java中的PriorityQueue类,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-09-09
  • dubbo服务注册到nacos的过程剖析

    dubbo服务注册到nacos的过程剖析

    这篇文章主要为大家介绍了dubbo服务注册到nacos的过程剖析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职极限
    2022-02-02
  • Java连接FTP服务器并使用ftp连接池进行文件操作指南

    Java连接FTP服务器并使用ftp连接池进行文件操作指南

    使用FTP最主要的功能是对文件进行管理,下面这篇文章主要给大家介绍了关于Java连接FTP服务器并使用ftp连接池进行文件操作的相关资料,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2024-08-08
  • 使用@Valid+BindingResult进行controller参数校验方式

    使用@Valid+BindingResult进行controller参数校验方式

    这篇文章主要介绍了使用@Valid+BindingResult进行controller参数校验方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-12-12
  • 测试环境频繁Full GC问题的解决思路分析

    测试环境频繁Full GC问题的解决思路分析

    全文介绍了作者通过与调用方交互,发现welink-front服务不可用的问题,通过jmap-heap和jstat-gccause命令,作者找到了问题的原因是元数据区内存使用率过高,触发了FullGC,作者通过分析GC日志和堆内存使用情况,确定了问题的根本原因
    2025-01-01
  • SpringBoot 使用AOP + Redis 防止表单重复提交的方法

    SpringBoot 使用AOP + Redis 防止表单重复提交的方法

    Spring Boot是一个用于构建Web应用程序的框架,通过AOP可以实现防止表单重复提交,本文介绍了在Spring Boot应用程序中使用AOP和Redis来防止表单重复提交的方法,需要的朋友可以参考下
    2023-04-04

最新评论