详细讲解JSP访问数据库的方法

  JSP(JavaServer Pages)是由Sun 公司倡导、许多公司参与建立的一种动态网页技术标准。使用JSP技术,Web页面开发人员可以使用HTML或者XML标识来设计和格式化最终页面。使用JSP标识(tag)或者小脚本(Scriptlet)来生成页面上的动态内容。生成内容的逻辑被封装在标识和JavaBeans组件中,并且捆绑在小脚本中,所有的脚本在服务器端运行。

  数据库连接对动态网站来说是最为重要的部分,Java中连接数据库的技术是JDBC(Java Database Connectivity)。很多数据库系统带有JDBC驱动程序,Java程序就通过JDBC驱动程序与数据库相连,执行查询、提取数据等操作。Sun公司还开发了JDBC-ODBC bridge,用此技术Java程序就可以访问带有ODBC驱动程序的数据库,目前大多数数据库系统都带有ODBC驱动程序,所以Java程序能访问诸如Oracle、Sybase、MS SQL Server和MS Access等数据库。本文将通过一个实例介绍在JSP中利用JavaBeans通过JDBC-ODBC Bridge访问Access客户信息数据库。

  1.首先建立一个Access数据库Customers.mdb,其中表Customers有字段id(自动增量型,并设为主关键字)、name(文本型,长度10)、address(文本型,长度30)、info(备注型)。

  2.在Control Panel(控制面板)的ODBC Datasource模块中加入System DSN,取名Customers,并指向Customers.mdb。

  3.创建一个JavaBeans,命名为DBconn.java,并保存在支持JSP的Web服务器的缺省文档根目录下。DBconn.java主要是封装与数据库的连接操作,内容如下:

  import java.sql.*;
  public class DBconn {
  String DBDriver = "sun.jdbc.odbc.JdbcOdbcDriver";
  String ConnStr = "jdbc:odbc:Customers";
  Connection conn = null;
  ResultSet rs = null;
  public DBconn {
  try {
  Class.forName(DBDriver);
  //加载数据库驱动程序
  }
  catch(java.lang.ClassNotFoundException e) {
  System.err.println("DBconn (): " + e.getMessage());
  }
  }
  public ResultSet executeQuery(String sql) {
  rs = null;
  try {
  conn = DriverManager.getConnection(ConnStr);
  //与DBMS建立连接
  Statement stmt = conn.createStatement();
  rs = stmt.executeQuery(sql);
  }
  catch(SQLException ex) {
  System.err.println("aq.executeQuery: " + ex.getMessage());
  }
  return rs;
  }
  }

  4.DBconn.java编辑好后,在DOS状态下,进而用JDK的javac命令编译DBconn.java形成相应的class文件。

  5.建立Customers.jsp文件,在JSP中调用以上编译好的JavaBeans,其内容如下:

  〈html〉
  〈head〉
  〈meta http-equiv="Content-Type" content="text/html; charset=gb2312"〉
  〈title〉客户信息调查〈/title〉
  〈/head〉
  〈body〉
  〈p〉〈b〉客户信息调查〈/b〉〈/p〉
  〈%@ page language="java" import="java.sql.*" %〉
  〈jsp:useBean id="DBconn1" scope="page" class="DBconn" /〉
  〈%
  ResultSet RS = DBconn1.executeQuery("SELECT * FROM Customers");
  while (RS.next()) {
  out.print("〈LI〉" + RS.getString("name") + "〈/LI〉");
  out.print("〈LI〉" + RS.getString("address") + "〈/LI〉");
  out.print("〈LI〉" + RS.getString("info") + "〈/LI〉");
  }
  RS.close();
  %〉
  〈/body〉
  〈/html〉

  在〈 jsp:useBean〉标记内定义了几个属性,其中id是整个JSP页面内该Bean的标识、scope属性定义了该Bean的生存时间、class属性说明了该Bean的类文件。

  事实证明,JSP是一种开发Web应用的理想构架,利用跨平台运行的JavaBeans组件,JSP为分离处理逻辑及显示样式提供了卓越的解决方案。

 

时间: 2024-11-17 20:20:56

详细讲解JSP访问数据库的方法的相关文章

实例详细讲解JSP访问数据库的方法

js|访问|数据|数据库 JSP(JavaServer Pages)是由Sun 公司倡导.许多公司参与建立的一种动态网页技术标准.使用JSP技术,Web页面开发人员可以使用HTML或者XML标识来设计和格式化最终页面.使用JSP标识(tag)或者小脚本(Scriptlet)来生成页面上的动态内容.生成内容的逻辑被封装在标识和JavaBeans组件中,并且捆绑在小脚本中,所有的脚本在服务器端运行. 数据库连接对动态网站来说是最为重要的部分,Java中连接数据库的技术是JDBC(Java Datab

JSP访问数据库的问题整理

js|访问|数据|数据库|问题   一.JSP访问数据库的方法: 1.建立自己的虚拟目录,在虚拟目录下面建立web-inf\lib,web-inf\class,web-inf\jar,各个目录说明如下: web-inf\web.xml 在该文件中配置访问Servlet以及配置一些初始参数,示例如下: <servlet>        <servlet-name>TestServlet</servlet-name>  <!--Servlet名称-->     

表单-关于WEB 开发中jsp访问数据库的问题

问题描述 关于WEB 开发中jsp访问数据库的问题 就如题目所说,我现在在做一个网页,现在写了几个bean ,能够实现读取网页表单中的数据 ,并且把他们写到数据库,下面要做的是,从数据库中读取符合条件的数据,并显示在网页中 符合条件的数据也是由网页输入的.问一下有那个大神会做吗,急!!! 解决方案 会啊,这种问题,只要是程序员都会做吧.你可以放心大胆雇佣一个程序员帮你了. 解决方案二: 你说的是输入输出是在同一个页面是吧 就是说一个页面进去之后表单中就有数据,并且他们可以修改 方法很多,举一个:

ado.net-求一个无参数 调用存储过程的方法,我调用的是列转行的存储过程 但是访问数据库的方法不知道怎么写

问题描述 求一个无参数 调用存储过程的方法,我调用的是列转行的存储过程 但是访问数据库的方法不知道怎么写 访问数据不知道写 存储过程已经写好 解决方案 prepareCall()方法调用存储过程 解决方案二: use 数据库名称 这不是方法 解决方案三: use 数据库名称 用这个语句就能指向数据库 解决方案四: exec 存储过程名称

VC基于ADO技术访问数据库的方法_C 语言

本文实例讲述了VC基于ADO技术访问数据库的方法.分享给大家供大家参考.具体如下: 一.在StdAfx.h文件中添加 复制代码 代码如下: #import "C:/Program Files/Common Files/System/ado/msado15.dll" no_namespace rename("EOF","rsEOF") 导入ADO引擎. 二.数据库应用层操作 void CADOExample1Dlg::OnBtnQuery() {

详细讲解安全升级MySQL的方法_Mysql

MySQL升级是非常必要的. 我们在Percona Support上列出了关于MySQL升级最佳实践的各种问题.这篇文章推荐了一些不同情况下升级MySQL的方法. 为什么MySQL升级是必须的? 原因有很多,比如:为了使用新增的特性,基于性能方面的考量, 修复的bug. 但是在没有充分的测试以前就应用到你的应用中是非常危险的, 因为升级可以能会让你的应用不能正常运作- 也可能引起性能的问题. 此外, 我建议你关注MySQL的发布信息和Percona Server - 看看最近的版本有什么变化.

详细讲解Java中的main()方法_java

前言 JAVA中的主函数是我们再熟悉不过的了,相信每个学习过JAVA语言的人都能够熟练地写出这个程序的入口函数,但对于主函数为什么这么写,其中的每个关键字分别是什么意思,可能就不是所有人都能轻松地答出来的了.我也是在学习中碰到了这个问题,通过在网上搜索资料,并加上自己的实践终于有了一点心得,不敢保留,写出来与大家分享. Java中的main()方法 java虚拟机通过main方法找到需要启动的运行程序,并且检查main函数所在类是否被java虚拟机装载.如果没有装载,那么就装载该类,并且装载所有

加快JDBC设计中JSP访问数据库

js|访问|设计|数据|数据库     以前,我们已经提到,JSP程序都是模块,并且具有强大的表达-请求(presentation-request)功能.建立一个完美的数据库访问是一个具有挑战的过程,而JDBC接口能够很好地完成这一过程.然而,嵌入于JSP代码中的JDBC代码,与SQL命令嵌入在JDBC一样,可以充分利用JSP的功能,为客户端建立一个整洁而简便的API.为了达到这一目的,我们可以考虑到使用JSP操作来建立数据库接口组件.      完美的JSP设计模式是Model-View-Co

在JDBC设计中加速JSP访问数据库

JSP程序都是模块,并且具有强大的表达-请求(presentation-request)功能.建立一个完美的数据库 访问是一个具有挑战的过程,而JDBC接口能够很好地完成这一过程.然而,嵌入于JSP代码中的JDBC代码 ,与SQL命令嵌入在JDBC一样,可以充分利用JSP的功能,为客户端建立一个整洁而简便的API.为了达到 这一目的,我们可以考虑到使用JSP操作来建立数据库接口组件. 完美的JSP设计模式是Model-View-Controller (MVC).传统三层体系为:Model为程序逻