电脑桌面
添加盘古文库-分享文档发现价值到电脑桌面
安装后可以在桌面快捷访问

JSP数据库访问技术

来源:开心麻花作者:开心麻花2026-01-071

JSP数据库访问技术(精选7篇)

JSP数据库访问技术 第1篇

Java是公认的、第一个针对于Internet以及Web环境的专门的语言。其独特的优势为面向对象、与平台无关、分布式、多线程、高性能以及动态,因而对于数据库的发展而言,是一种较好的语言。JSP,英文全称为Java Server Pages,是一种基于Java的服务器端的脚本技术,能够应用于跨平台的创建以及包含了web内容的动态页面的生成,而其中往往也要经常涉及到对于数据库的调用问题。

Java Data Base Connectivity,英文简称作JDBC,是Java语言对数据库进行访问的标准接口,并且是一种通用的、和平台不相关的、真正意义上的标准数据库APL。JDBC适应于各个不同类别系统之间相互的兼容以及共享,对于网络上跨平台数据库的应用而言,是一种较为简洁、安全而且有效的实现手段。应用JDBC不仅仅可以较好的解决数据库互操作的问题以及跨平台的应用,同时客户机通常只需要在安装了较少量的代码的情况下,就能够通过JDBC来对数据库进行访问。

1 JSP技术的原理

JSP作为Servlet的一种扩展,在还没有出现之前,而Servlet技术就已经先于JSP出现了。Servlet是通过输出流动态的应用而生成了HTML的页面,其中包括了每一个在HTML的页面当中所出现的内容以及每一个HTML的标签。

正是由于其包括了大量HTML标签以及大量静态的文本和格式等,因而导致了对Servlet进行开发的效率较为低下。对于所有的表现逻辑,其中包括了布局、图像以及色彩等,都要必须糯合于Java的代码之中,这一工作十分繁琐,而JSP的出现则较好的弥补了这一不足,通过将Java代码插入于HTML标准的页面当中,JSP的静态部分就可以不再需要Java程序来进行控制,而通常只有当需从数据库当中读取信息,并且要根据程序的动态进行信息的生成时,才会使用到Java的脚本控制。

通常从表面上看来,JSP页面对于Java类似乎已经不再需要了,而且呈现出了一种完全脱离于Java所具有的面向对象的特征。但是在事实上,JSP通常是Servlet的一种比较特殊的形式,可以说,每一个JSP页面实际上就是一个Se凹let,JSP页面通过系统而编译成Servlet,之后Se凹let再对用户的请求负责进行相应的回应。从某种程度上而言,JSP实际上也可以看作为一种Se凹let的简化,而当对JSP进行使用的时候,实际上还是使用了Se凹let,这是因为在Web应用当中,每一个JSP页面都可以通过Se凹let容器而生成与之相对应的Servlet。而对于Tomcat来说,通过JSP页面所生成的Se凹let,要放置于和work路径相对应的Web之下来进行应用。

在对Tomcat进行启动之后,如果jsptest为Web的应用名,而上面的JSP页名是test1扣p,则就可以在Tomcat当中的Catalinalocalhostjsptest'飞org飞apachejsp的目录之下,找到如下的文件:test1.jsp.java以及testtjsp.class,而这两个文件均是由Tomcat来生成的,依照JSP页面,Tomcat生成与之相对应的Servlet之下的Java文件以及class文件。

即使读者对于上面所提到的一些Java代码并不十分了解,对于编写JSP页面而言,也仍然不会产生影响,因为这些都是通过Web容器来负责生成的。

2 JSP技术访问数据库的方法

随着目前计算机水平的较快提高,网络信息也随之得到了较为广阔的发展空间。如今由于进行网络开发系统的大量涌现,而数据库的软件方面的规模以及繁杂度也在随之逐渐的增加。因而,依据软件所具有的特点,对于网络数据库构建系统的结构进行有效性的择取应用,其必要性以及重要性已经被人们所共同瞩目。就当前的情况而言,B/S(浏览器/服务器)的模式系统的结构,己经形成为了一定的规模,而在网络数据库当中,由于B/S模式具有一定的开放性特点,并且和软件以及硬件的平台均没有特殊的关联性,因而B/S模式能够在Internet的特定环境当中予以较大量的广泛使用。

1)网络数据库的结构

伴随着Internet的问世以及浏览器的较为广泛的应用,web技术也成为了客户机和服务器之间便利的连接通道。因而也随之使得Web和网络数据库技术能够得以较好的连合为了一个整体,从而使得Web数据库能够应运而生,Web技术和网络数据库技术之间的相互有效的结合,可以更好的将Web技术和网络数据库技术众多的优势之处共同的融合为一个整体,前位有较为完善的Web浏览器,而后位则有比较成熟化的网络数据库技术作为基点,web数据库的使用结构系统也因此而产生了,而其中使用的最为普遍的是B/S结构系统的B/S模式:也就是建立于浏览器、WWW服务器和应用服务器基础之上的结构,该结构承接并且共同融合了原有的传统化C/S计算结构模式当中的计算机网络软件以及硬件的平台与使用,与此同时,还具有着传统化C/S计算结构模式所为涉及到的众多的特殊之处:比如更为的开放化、和软件以及硬件的平台不存在相互之间的关联性、对于充分的扩大应用以及将系统的维护进行合理升级时比较的方便等。

B/S模式是一种以Web技术为核心的使用模式。往往仅仅需要在客户机上面安装好一个合适的浏览器,同时再将一个较小的支持库予以安装,比如Java或者是VB的动态形式的连接库,于中间层应用web服务器,以此对于客户端的需求予以及时的接收,并且将客户端的需求有效的转换成为SQL语句,之后经过开放性的数据库接口标准ODBC或者是其他的方式传送于数据库服务器,同时以HTML文件的形式将通过数据库服务器所输送回的具体结果转至于客户机,在实际意义上,客户机是能够把标准化的语言转化成为界面的一个解释器。应用程序被安装于具有着两级结构的c/s(客户/服务器)结构系统当中,而数据库的处理可以分为两个部分:客户机以及数据库服务器。一般情况下,数据库服务器应用性能相对比较高的工作站、PC或者是小型机,并且可以运行所有的或者是其中一部分的数据库管理系统,主要的是进行数据的处理以及硬盘的访问处理。数据库的管理系统通常情况下较多的应用比较大型的数据库系统:比如Oracle,Informix,Sybase或者是SQLServer等。而客户端则主要是应用PC机来对数据库的使用程序进行运行,其主要是进行全部的相关屏幕以及用户I/0方面任务的处理。

在B/S模式当中,用户往往是通过共同合作的形式对应用服务器的相关资源予以访问。在B/S的模式当中,其占主体的语言为Java以及HTML.和软件以及硬件平台不存在特殊的关连性是B/S模式所具有的主要的特殊之处。不同OS以及NOS一般都有与之相应的语言及进行开发的工具,在该模式当中,通常需要将对于数据库资源的访问连合成为一个较为统一的应用平台,因而客户机之上在对图片进行显示以及将事件予以输入的同时,通常还要将应用的逻辑以及对于业务予以处理的标准全部或者是其中的一部分安装在客户机上,因而这往往也成为了客户机逐渐“最大”的原主要因素。进行开发的重点是客户机端方面。因客户机端通常配备安装了众多的应用逻辑以及进行业务处理的规则软件和进行开发的工具软件,因而相关软件的变化、版本的相应升级、硬件平台的工作状态往往关系着系统当中几乎全部的客户机,由此也带来了资金支出的扩大以及相关管理维护方面的困难。B/S模式通常可以较好的将应用逻辑以及进行业务处理的规则摆放于服务器的一个相应的“角落”当中,而该种结构通常能够使得客户机最大限度的“消瘦”下去,对于其功能而言,一般仅仅是一个多媒体的浏览器或者是Java虚拟机。而相对于某些功能比较多的数据库应用系统,则往往应用浏览器及瘦客型B&Thin C/S的共享模式。

2)JDBC对数据库的连接

Java/JDBC技术:JDBC(Java Database Connectivity)技术是Java Soft公司设计第一个支持Java语言的标准的数据库API。Java/JDBC技术依靠嵌在HTML中的Java Applet程序,通过JDBC接口访问数据库。目前绝大多数浏览器都支持Java开发接口程序,对软件配置没有过多的要求,只需要安装JDBC驱动程序就可以了。因此使用Java,JDBC编写数据库接口程序在满足移植性、通用性、扩展能力等方面具有优势。

3 结束语

随着当今网络技术的不断迅速发展,网络方面的各项服务也已经普遍的应用于社会生活的各个领域。网络数据库应用系统是数据库技术与网络技术相结合进行信息处理的系统,该结合不仅仅能够扩大网络的功能,由此同时还把数据库的使用扩展至了网络方面,充分的应用了数据库较大的管理功能。当今网络数据库的使用系统也在普遍的应用在各行各业当中。除此之外,网络数据库是一个开放性的信息储蓄库。对于局域网以及广域网而言,均有着客观以及主观的较多危险性因素,往往会存在相关的安全方面的问题,因而对于安全结构系统的相关探讨也在网络以及数据库技术迅速发展的推动下而逐渐的深入。

Servlet,简化为JSP,是一种经由Sun公司所提出来,并且由许多的公司共同参与而制定的动态化网页标准。JSP的主要特点为,通过将Java的代码片段加入于HTML的页面当中,或者是使用各种不同的JSP标签,其中包括用户标签的使用,从而构成了JSP网页。在较早的时期,用户对于JSP页面的使用可以非常的广泛,通常情况下,一个Web的应用往往可以全部的通过JSP页面来组成,而且可以仅仅辅以比较少量的Java Bean。但是自从J2EE的标准出现了之后,人们也随之开始逐渐的认识到了应用过多的JSP来充当各种不同情况的角色,往往是不太合适的。因而,JSP随之逐渐的发展成了学一表现层技术,而不再去承担持久层组件以及业务逻辑组件的任务。

虽然存在各种不同的模板技术,但是就目前而言,最为经典并且应用也最广的表现层技术,应当还是JSP。在网站的建设过程当中,正确的应用JSP技术访问数据库,在各种不同的环境当中采用相应的数据库访问技术,对于网站运行速度的提高起着至关重要的作用。

参考文献

[1]苏蕴.JSP技术在Web数据库中的应用研究[J].电脑知识与技术,2010,6(27).

[2]周莹.基于JSP+Java Beans+JDBC的计算机网上考试系统的设计与实现[J].电脑知识与技术,2009,5(25).

[3]薛勤.基于JSP的图像模糊查询研究[J].科技信息,2010(31).

[4]张立仿.陈艳浩.基于Java的数据库连接池技术研究[J].电脑知识与技术,2009(16).

[5]翟永君.JSP前台与数据库后台连接技术的研究[J].科技信息:学术版,2008(20).

[6]靳其兵.李晓波.基于JSP的数据库连接技术的研究[J].计算机仿真,2007(4).

[7]范新民.基于JSP、JDBC技术动态访问Web数据库的实现方案[J].福建师范大学学报:自然科学版,2010,6(27).

ASP技术访问Web数据库的应用 第2篇

?

魏 涛 胡杰民 黄 峰?

(炮兵学院研究生系)??

摘要 ASP是服务器端的脚本环境,可以开发动态的、交互的、功能强大的Web站点,本文利用ASP的ADO技术对WWW上的数据库访问进行了深入研究,并结合学员网络档案信息的实例进行了阐述。?

关键词 ASP ADO Web 数据库 数据查询?

1. ASP技术概述

ASP(Active Server Pages)技术的出现完全摆脱了以往的局限性,它不但可以进行复杂的数据库操作,而且生成的页面具有很强的交互性,允许用户方便地控制和管理数据,使用户可以用ASP技术轻松的建立一个可交互的、高效的Web应用程序。?

2. ASP开发Web数据库应用系统技术?

2.1 ADO访问数据库技术?

ADO(Active Data Object)一个ASP内置服务器对象的数据库访问控件,它是针对当前Microsoft软件所支持的数据进行操作的最有效、最简单、功能最强大的方法。它为动态Web页面开发者提供了轻松存取Internet数据库的崭新技术。ADO可以使客户端的程序通过ODBC存取和操纵数据库中的数据表,为用户提供含有数据库信息的主要内容,通过执行SQL命令让用户在浏览器中访问后台数据库。另外,ADO几乎兼容各种数据库系统,例如Microsoft Access、Foxpro、SQL等ADO都提供相同的处理界面供程序设计人员使用。?

2.2 ADO的重要接口?

1) Connection(连接):表示正在使用的数据源和ADO接口之间的.连接。?

2) Error(错误集):表示一个由数据源返回的错误。?

3) Command(命令):表示一个能被数据提供者处理的命令。?

4) Parameter(参数):表示供给Command的参数。?

5)Recordset(游标):最复杂、功能最强大的接口,在使用ADO的应用程序中完成多种操作。

6)Fields(字段):表示Recordset对象中的某一列数据。?

2.3 用ASP开发Web数据库应用系统的步骤和方法?

1) 设置数据源名,在“控制面板”中通过ODBC创建一个系统DSN。?

2)创建和初始化Connection连接对象创建:?

<%SetmyConnection=Server.CreateObject(“ADODB.Connection”)%>?

初始化:?

<%myConnection.Open“DSN=DSNName”?

3) 通过SQL语句操作数据库,并返回一个结果集。?

<%?

SQL=“Select*From Tablename”?

Set Rs=myConnection.Execute(SQL)

%>?

4) 显示数据库处理结果,利用Recordset对象所提供的属性显示查询结果。?

5) 关闭结果对象集,断开与数据库连接。?

Rs.close?

MyConnection.close?

3. ASP技术在学员档案信息查询网络系统中的应用学员档案信息查询在浏览器上运行,Web服务器是Window NT Server4.0上运行的IIS4.0,支持ASP环境,后台数据库选用Office中的Access。客户端采用WIN95/98平台,浏览器为IE4.0。开发工具采用Visual InterDer或frontPage 等。?

下面以学员档案查询的例子说明ASP技术在系统中的应用:?

学员档案信息数据库Student?-record.mdb中的表Student的字段为:?

姓名、学号、性别、籍贯、专业、单位、毕业学校、出生年月、入学日期、备注。?

JSP数据库访问技术 第3篇

1、JSP简介

JSP (Java Server Pages) 作为站点开发语言, 它可以在JavaBean和Servlet的支持下, 完成功能强大的站点程序开发, 尤其是对Web数据库的访问操作。JSP为创建高度动态的Web应用提供了一个独特的开发环境。JSP将Java作为其脚本语言, 在传统的HTML文件中加入Java程序片段和JSP标签, 因此JSP具有Java语言的所有优点, 包括安全性、跨平台性等。目前JSP+Servlet+JDBC已经成为开发电子商务平台的主流技术。

2、JSP对网站数据库的访问技术

2.1 JDBC技术

JDBC技术是一种跨平台的软件组件, 可重复使用。利用JDBC技术封装事务逻辑, 可以实现业务逻辑和客户端操作的分离, 使系统具有更好的灵活性和适用性。其工作原理是将数据库的基本操作逻辑封装在JDBC包中, 通过JSP调用JDBC来实现数据库的连接。使用JDBC提高了代码可重用性, 降低程序复杂度。JDBC定义了一个底层的API, 用来支持独立于任何特定SQL实现的基本SQL功能。程序员使用JDBC API将标准的SQL语句通过JDBC驱动管理器传递给相应的JDBC驱动, 并由该JDBC驱动传给所指定的数据库服务器, 就不必为访问不同数据库而分别编写不同的接口程序。

2.2 连接池技术

在数据库连接池中频繁的连接数据库对服务性能来讲是一个瓶颈, 使用缓冲池技术可以来消除这个瓶颈。现有的很多数据库连接池的源程序都存在一个共同的问题:实现方法都增加了与使用者之间的耦合度。并且都不允许使用者显式的调用Connection.close () 方法, 而需要用其规定的一个方法来关闭连接。这种做法有两个缺点:第一, 改变了用户使用习惯, 增加了用户的使用难度;第二, 使连接池无法对之中的所有连接进行独占控制。

但是, 通过使用JAVA中的动态代理实现数据库连接池, 可以使使用者以普通的JDBC连接的使用习惯来使用连接池。用户通过标准的java sql.Connection连接的类型来使用数据库连接池, 在获取到这个数据库连接后可以对这个连接进行任意的操作, 包括关闭连接等。

3、连接池的实现

综合以上分析, 怎样可以接管Connection close方法就成了解决问题的关键。为了接管数据库连接的close方法, 要有一种类似于钩子的机制。JAVA提供了一个Proxy类和一个InvocationHandler类, 这两个类都在java.lang.reflect包中。当调用一个Proxy实例的方法时会触发Invocationhanlder的invoke方法。这种动态代理机制只能接管接口的方法, 而对一般的类无效, 考虑到java.sql.Connection本身也是一个接口由此就找到了解决如何接管close方法的出路。

首先, 我们先定义一个数据库连接池参数的类, 定义了数据库的JDBC驱动程序类名, 连接的URL以及用户名口令等等一些信息, 该类是用于初始化连接池的参数。

public class ConnectionParam implements Serializable

//具体的参数就不罗列出来。

其次是连接池的工厂类ConnectionFactory, 通过该类来将一个连接池对象与一个名称对应起来, 使用者通过该名称就可以获取指定的连接池对象, ConnectionFactory主要提供了用户将将连接池绑定到一个具体的名称上以及取消绑定的操作。用户只需要关心这两个类即可使用数据库连接池的功能。

解决了常规连接池产生的两个问题。但是我们最最关键的是接管close方法的办法。接管工作主要在ConnectionFactory中的两句代码:

source=new DataSourceImpl (param) ;

source.initConnection () ;

一旦用户调用所得到连接的close方法, 由于用户的连接对象是经过接管后的对象, 因此JA-VA虚拟机会首先调用_Connection.invoke方法, 在该方法中首先判断是否为close方法, 如果不是则将代码转给真正的没有被接管的连接对象conn。否则的话只是简单的将该连接的状态设置为可用。但是是不是这些已建立的连接就始终没有办法真正关闭?答案是可以的。可以使用ConnectionFactory.unbind方法, 该方法首先找到名字对应的连接池对象, 然后关闭该连接池中的所有连接并删除掉连接池。在DataSourceImpl类中定义了一个close方法用来关闭所有的连接。该方法一一调用连接池中每个对象的close方法, 这个close方法对应的是_Connection中对close的实现, 在_Connection定义中关闭数据库连接的时候是直接调用没有经过接管的对象的关闭方法, 因此该close方法真正的释放了数据库资源。

4、结束语

电子商务网站中信息量大、信息交流频繁, 而且会有多用户并发访问数据库, 因此高效的Web数据库访问技术是电子商务网站成功的重要保证之一。采用JSP访问数据库, 使用JAVA中的动态代理实现连接池的技术, 显著提高了数据库的访问效率。

参考文献

[1]靳其兵, 李晓波.基于JSP的数据库连接技术的研究[J].计算机仿真, 2007.

[2]郭小雪, 房至一.基于JSPServlet的三层式网上书店的实现.微计算机信息, 2006.

[3]史湘宁米强凌云翔:Web Service体系结构研究[J].计算机与现代化, 2005.2:26~28

基于JSP技术中数据库的开发应用 第4篇

1.1 Driver

Driver的定义很简单, 只须给出class name。如果使用JDBC-ODBC Bridge Driver, 则定义为:

Class.forname (“sun.jdbc.odbc.Jdbc Odbc Driver”) ;

如果使用JDBC Driver, 定义如下:

Class.forname (“jdbc.driver_class_name”) ;

1.2 Driver Manager

要创建一个连接对象实例, 必须以数据库统一资源定位器作为参数去激发Driver Manager的的get Connection () 方法, 而所谓的数据库统一资源定位器 (URL) 是指一个完全合格的数据库连接的名字, 该名字表示要连接的数据库和数据库连接程序。用JDBC:PROTOCOL:NAME的字符串来表示。

1) get Connnection (String url) :只是简单地给定数据库URL, 然后尝试连接。

2) get Connnection (String url, String String PASSWORD) :给定数据库URL、数据库的用户名、数据库的用户使用的密码, 然后尝试连接。

3) get Connnection (String url, java.util.Properties information) :给定数据库的URL以及一个属性集合作为参数, 然后尝试连接。

1.3 Connection

Connection对象是代表与数据库的连接, 也就是在已经加载的Driver和数据库之间建立连接。必须创建一个Connection class的实例, 其中包括数据库的信息。一个应用程序可与单个数据库有一个或多个连接, 或者可与许多数据库有连接。

1.4 Statement

Statement对象用于将SQL语句发送到数据库中, 它有3种执行SQL语句的方法:execute Query、execute Update和execute。

1.5 Result Set

执行SQL语句, 则Result Set会包含符合SQL语句中条件的所有行。通过get方法, 可以访问当前行中的不同列, get方法也提供了对这些行中数据的访问。

2 JSP平台搭建

现在中小企业及个人较为流行的JSP平台配置是windows xp professional+JDK+TOMCAT.Tomcat6.0, 是当今使用广泛的Servlet/JSP服务器, 它运行稳定、性能可靠, 可以直接从网络中下载。Java开发工具和运行环境为JDK1.6。数据库使用的是微软的My SQL, Ultra Edit进行代码编写, Dreamveaver MX进行页面设计。

首先要安装JDK, 它是整个框架的基础, 然后安装Tomcat6.0过程中需要指定JDK的安装地址。JDK安装成功后需要设定JAVA_HOME、CLASSPATH和PATH三个环境变量, 具体的是, JAVA_HOME是软件安装的地址, CLASSPATH为:JAVA_HOME:libtools.jar;JAVA_HOME:libdt.jar, PATH设为Java bin的位置即可。数据库My SQL和Tomcat能直接从网络中获取, 同其它大型数据库软件如Oracle、Sql Server2000等不同的是, 整个数据库运行环境都是在字符操作界面下完成的, 而不是现在流行的Windows窗体, 但它的优势也是显而易见的, 对平台要求低、免费、高效, 完全满足一般需求。由于要通过JDBC将数据库和前端页面衔接起来, 我们还需要My SQL的JDBC驱动程序mm.mysql-2.0.4-bin或者是mysql-connector-java-3.0.11-stablebin, 两者均可, 这样整个平台就搭建成功了。整个平台的成本非常低, 最为重要的几个软件都是免费获取的, 就系统配置和成本方面考虑, 此平台是较为理想的选择。

3 数据源和连接池

数据库连接池的解决方案就是在应用程序启动时建立足够的数据库连接, 并将这些连接组成一个连接池, 由应用程序动态地对池中的连接进行申请、使用和释放。对于多于连接池中连接数的并发请求, 应在请求队列中排队等待, 并且应用程序可根据池中连接的使用率, 动态增加或减少池中的连接数。连接池技术尽可能多地重用了消耗内存的资源, 大大节省了内存, 提高了服务器的服务效率, 能够支持更多的客户服务。通过使用连接池, 将大大提高程序运行效率, 同时, 我们可以通过其自身的管理机制来监视数据库连接的数量、使用情况等。在本网站的开发中, 实现连接池关键代码如下:

同时, 我们还要在Tomcat中配置数据源, 这样Tomcat就会把这个数据源绑定到JNDI名称空间, 可以通过 (Data Source) env Ctx.lookup ("jdbc/jspdev") 来查找这个资料源。查找到资料源, 就可以通过Connection conn=ds.get Connection () ;方法来获得一个到数据库的连接。当执行完数据库操作时, 我们可以执行con.close () 方法, 以让连接池管理器回收这个连接, 但并不用关闭到数据库的物理连接。

参考文献

[1]冯燕奎.JSP实用案例教程[M].清华大学出版社, 2004.

JSP数据库访问技术 第5篇

自Internet出现以来,目前在互联网上主要采用B/S模式的系统体系结构。这种体系结构具有维护和升级方式简单的优点,但是服务器的运行负荷较重,尤其是数据库服务器运行负荷更是如此。在这种情况下,如何才能有效的提高系统的稳定性和数据库访问的高效性一直以来都是软件开发人员所关注的问题。一般来说不外乎有两种方法,一种就是提高和优化Web服务器的整体性能,另一种就是优化数据库的连接性能。下面我们将介绍一种采用数据库连接池技术优化数据库访问性能的方法。

二、数据库连接池技术

传统的数据库访问操作主要由三个步骤构成:建立数据库连接;进行具体的SQL操作;关闭数据库连接。对于一般性的简单数据库操作而言,由于数据库访问量不是太大,所以给用户创建一个连接,用完以后及时关闭,这样对数据库访问性能的影响不是太大。但是对于大量而又频繁的数据库访问操作就完全不同了,因为在所有的数据库操作中,频繁的建立和关闭数据库连接是最为耗时的操作之一,而且数据库都有最大连接数目的限制,如果很多用户访问的是同一数据库,所进行的都是同样的操作,比如查询记录,那么为每一个用户都建立一个连接是不合理的。

连接池的思想是:Web服务器可以事先预备好若干个连接对象,将这些连接对象存放在一个称为连接池的容器中,当某用户需要操作数据库时,只要从连接池取出一个连接对象即可,当用户使用完该连接对象后,将该连接对象后,将该连接对象放回到连接池中而不是把这个连接对象直接释放掉。如果某用户需要操作数据库时,连接池中已没有连接对象可用,那么该用户就必须等待,直到连接池中有了连接对象。连接池中的连接对象可以被重复使用,并且用户不必关心每个连接对象的创建过程和关闭过程。

在传统的数据库连接方式中,对于每个用户的访问请求都需要创建一个到数据库的物理连接,但是现在我们只要从连接池中获取一个预先已经建立好的连接对象即可访问数据库了,在完成数据库操作后放回连接对象但并不关闭由连接池维护的物理数据库连接。下次有新的连接请求时,可以再次获取一个新的连接对象。这样就避免了创建多个类似的物理连接,避免了频繁建立、关闭连接造成的开销,提高了系统效率。

三、影响数据库连接池工作效率的几个关键因素

实际上连接池就是许多数据库连接对象在内存中的“存储池”,在连接池内部提供了一种连接机制,能够控制连接池内部连接对象的个数以及对这些连接对象进行管理。在管理数据库连接池的过程中有几个关键因素关系到了连接池工作效率的好坏。

1、连接池的管理策略

我们把连接池的工作原理归纳为3个方面:连接池的建立、管理和关闭。其中连接池对连接对象的管理是连接池技术的核心内容。主要有静态管理和动态管理两种管理策略来管理连接池。静态管理策略就是只在使用连接池的时候发现空闲连接不够才去检查连接池状态。动态管理策略就是通过一个线程定时检查连接池状态。当用户需要访问数据库时,必须向连接池申请获取一个连接对象,如果连接池有空闲的连接对象,就会得到一个连接对象;如果没有空闲的连接对象,那么有两种方法可以使用户获得连接对象。一种是等待一个连接对象被释放。另一种就是在已经分配的连接对象中找一个合适的连接给用户,此时该连接在多个用户之间被复用,我们通过Reference Counting(引用记数)来管理复用连接。我们对每一个数据库连接对象记录一个引用记数,以此来记录该连接对象的使用者的个数。在实际应用中,可以把连接池分为空闲池和使用池两部分。在空闲池中存放当前还没有被分配出去的连接对象,如果一个连接对象被分配出去,那么它就会被放入到使用池中,同时增加引用记数值。

2、多用户并发访问问题

在实际使用环境中,Web数据库访问多为多用户访问,所以为了使数据库连接池具有更大的通用性和适应性,再设计过程中必须考虑多用户并发访问的问题。在JSP中对连接池的管理,是通过JSP引擎在服务器端实现连接池的创建及管理,当用户通过客户端第一次访问服务器时,通过与JSP内置application对象的配合,创建连接池对象,并通过相应的管理策略管理连接对象。连接对象与Web服务具有相同的生存周期,因此能保证连接池的最大通用性。

3、数据库连接池的配置

每一个数据库连接池都有若干基本属性,这些属性用来定义连接池及每一个连接对象的当前状态。其中最大连接数和最小连接数就是用来限定连接池中连接对象的数量,那么在连接池中放置多少个连接对象才是合适的呢?怎样才能使系统的性能呈现出最佳状态?如果创建的连接对象过多,那么系统启动就会很慢,但创建完成后系统的响应速度会很快;如果创建的连接过少,那么系统启动的将会很快,但是响应起来却很慢。具体的这些属性的值应该设置多少要看系统的访问量,可以通过反复测试的方法尽可能的找到一个最佳值。

四、数据库连接池的实现

下面我们给出一个数据库连接池实例:

五、小结

随着国际互联网逐渐的深入到人们日常生活的方方面面,Web应用程序的应用也越来越广泛,尤其是网络数据库技术的应用越来越重要。在多用户并发访问的Web应用环境中,影响到数据库工作效率的若干关键因素也成为开发人员的重要研究对象。本文在详细讨论了数据库连接池技术的基础上,给出了一个连接池的实例。

通过这个连接池实例和对连接池技术的深入分析,可以看出对于多用户并发访问数据库的情况,采用数据库连接池的应用系统在工作效率和系统稳定性上都比采用传统的数据库连接方式要好,因此可以说数据库连接池是一种对整个系统中比较复杂的问题的一种可行的解决办法。但在实际应用中,连接池技术也有很多缺点需要我们继续深入的进行研究,比如数据库连接池管理程序与Web服务器、JSP引擎的管理策略有可能会发生冲突等,因此我们更应该从整体出发全面考虑系统中的每一部分。

摘要:在基于JSP的Web应用系统中,数据库连接管理是直接关系到数据库应用性能的一个关键因素。在深入分析了数据库连接方式的基础上,详细讨论了连接池技术的工作机制,并给出了一个数据库连接池的实例。

关键词:JSP,数据库,连接池

参考文献

[1]耿祥叉.张跃平.JSP实用教程口[M].北京:清年大学出版社,2003.5.

[2]宋善德.郭飞.基于Java的Web数据库连接池技术的研究[J].计算机工程与应用,2002,(8).201~206.

JSP数据库访问技术 第6篇

JSP技术是基于Java Servlet和整个Java体系的Web开发技术,利用这一技术可以建立先进、安全、快速和跨平台的动态网站。在传统的网页HTML文件中加入Java程序段和JSP标记,就构成了JSP网页。Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序片段,然后将执行结果以HTML格式返回给客户。程序片段可以操作数据库、重新定向网页、发送E-mail等,这就是建立动态网站所需要的功能[3]。

1.1 JSP的工作原理与技术特点。

类似于Microsoft的ASP技术,JSP也对HTML标记集合进行了扩展。这些扩展的标记只能由支持它的服务器上的JSP的引擎来识别并负责解释执行。JSP页面以扩展名为.JSP件的形式存于服务器上,当服务器接收到客户端对某个JSP页面的请求时,如果这是对该页面创建或修改后的第一次请求,那么JSP引擎就把该JSP页面内容转换成一个纯Java语言的Server源码,然后将其编译成Servlet字节代码,最后将Servlet的执行结果返回至浏览器。JSP页面被编译成Servlet之后,其执行代码一独立线程的方式一直存在服务器的内存中,以后对该JSP页面提出请求时,不需要重新编译,知道该页面被修改或Web应用程序重新启动。Java Servlet由于在服务器端运行,并且不包括会占用大量系统资源的GUI,因此运行的速度要比Java Applet和Java独立应用程序快,同时还可以通过预编译JSP页面以加快响应客户端请求的速度。

JSP技术是对Servlet技术的一种扩展,它为基于Java环境开发多层结构的动态Web应用程序提供一种方便、快捷的方法。JSP具有如下一些特点[4]。

1.1.1 简化的页面生成技术。

1.1.2 与Java平台有机集成。

1.1.3 硬件平台和服务器无关性。

1.1.4 功能可扩展性。

1.1.5 JSP可以通过JDBC与诸如Oracle, DB2、SQL Server这样的大型关系数据库进行连接。

1.1.6 JSP提供了一些隐含对象。

1.2 JSP的实现方式。

利用JSP开发动态Web页面的方式一般有两种:一种是HTML页面中直接嵌入Java程序,相当于把Servlet的源代码直接写到HTML页面中;另一种是在JSP页面中调用Java Bean,以充分发挥Java Bean的强大功能。

Java Bean技术是一种可重复使用且跨平台的软件组件,它为软件开发者提供了一种极佳的解决方案,使他们可以利用Java Bean技术封装事务逻辑,很好的实现业务逻辑和客户端操作的分离,使系统具有更好的灵活性和适用性。其工作原理是将数据库的基本操作逻辑封装在Java Bean包中,通过JSP调用Java Bean来实现数据库的连接。首先将用Java编写的数据库连接和对数据库的基本操作的程序编译,生成*.class文件,就可以通过JSP调用Java Bean来实现数据库的操作。使用Java Bean提高了代码的重用程度,简化了程序设计的复杂度。但Java Bean与数据库连接时耗时较多,当有过多的并发访问时,加之数据库所支持的并发连接数量有限,反而会使数据库的运行效率下降。

2. Browser/Server模式

Browser/Server是由传统的二层Client/Server结构发展而来的三层结构在Web上的应用特例。Browser/Server结构极大地简化了客户机的工作,客户机只需安装,配置少量的客户软件即可,对数据库的访问和应用程序的执行将在服务器上进行。客户机无法直接对数据库操纵,能有效地防止用户的非法入侵。三层结构如下。

2.1 表示层:Web浏览器。

表示层的任务是由Web浏览器向网络上的某一Web服务器提出服务请求,Web服务器对用户身份进行验证后用HTTP协议把所需的主页传送给客户端,客户机接受传来的主页文件,并把它显示在Web浏览器上。

2.2 功能层:具有应用程序扩展功能的Web服务器。

功能层的任务是接受用户的请求,首先需要执行相应的扩展应用程序与数据库进行连接,通过SQL等方式向数据库提出数据处理申请,而后等数据可服务器将数据处理结果提交给Web服务器,再有Web服务器传送给客户端。

2.3 数据层:数据库服务器。

数据层的任务是接受Web服务器对数据库操纵的请求,实现对数据库查询、修改、更新等功能,把运行结果提交给Web服务器。

这种三层结构层与层之间相互独立,任何一层的改变不影响其他层的功能。由于这种模式提供一个跨平台的简单一致的应用环境,实现了开发环境与应用环境的分离,故避免了为不同操作系统开发同一应用系统的重复操作,便于用户群的扩展、变化,以及应用系统的管理。鉴于B/S模式的突出优点,本系统采用了这种模式。

3. JDBC数据库访问机制

JDBC (Java DataBase Connectivity)是一种“开放”的方案,它为数据库应用开发人员、数据库前台工具开发人员提供一种标准的应用程序设计接口,使开发人员可以用纯Java语言编写完整的数据库应用程序。

JDBC是Java应用程序和数据库沟通的桥梁,通过JSP程序完成与数据库的连接,执行相应的数据库操作。JDBC 2.0标准扩展API可以实现具有以下特性的应用技术:

3.1

允许请求客户机透明地共享资源池的多个连接对象。

3.2 应用服务器供应商在其内存空间实现池管理器,并根据需要动态改变池的大小,从而优化资源的使用。

JDBC技术用于访问各种数据源的数据库,它提供了不同数据库的DBMS连接。JDBC与数据库相连有两种方法,其一是通过JDBC 2ODBC来连接各种支持ODBC驱动程序的数据库另一种方法是通过专用的JDBC驱动程序来与数据库连接。前者已被广泛使用并得到了大多数数据库的支持,后者是通过Java提供的用于各种数据库的专用驱动程序来实现数据库的连接,先把专用的驱动程序放在环境变量的ClassPath路径里,然后JSP程序中创建数据库连接就可以引用了。

程序访问数据库时,通过JDBC Driver Manager调度取得与要访问的数据库对应JDBC Driver,建立与数据库的连接,然后传送SQL语句,数据库处理SQL语句以及返回处理结果。最后,关闭数据库的连接。

通过JDBC提供的API,应用程序能够完成与数据库的连接和交互,JDBC作为一种数据库访问技术,具有使用简单、可移植性强、易于编写和维护等优点,可高效地实现数据库的连接。但也有其局限性,如访问速度慢,JDBC ODBC驱动桥的局限性等。因此使JDBC访问数据库受到了限制。

4. 连接池技术

为了解决JDBC (Java Bean)数据库连接时的效率下降、耗时多的缺陷,我们可以采用连接池技术。在JSP中,把连接池技术和JDBC (JavaBean)结合起来使用,就能极大地提高数据库的访问效率。

连接池(Connection Pool)就是众多连接对象的“缓冲存储池”,也就是连接对象的集合体。连接池内部提供了一种连接机制,能控制连接池内部连接对象的个数,对应用程序提供获取和释放连接的接口,完善的连接池还能控制连接对象的生存期。

连接池的工作原理包括3个方面:连接池的建立、管理和关闭。

建立一个连接池,池中的连接是在系统初始化时候就分配好的,并且不能够随意关闭的,以后所使用的连接都是从该连接池中获取的。连接池应从数据库一次性的获取预设数目的连接对象,这样就可以避免连接随意建立、关闭造成的开销。

连接池对连接的管理是连接池的核心部分,可以使用静态管理和动态管理两种策略。静态就是使用的时候发现空闲连接不够再去检查。动态就是使用了一个线程定时检查,外部应用程序访问数据库时,不是直接向数据库新建一个连接,而是向连接池申请一个连接,若连接池有空闲的连接,则分配一个连接;若没有空闲的连接,则有两种方法获得连接。其一是等待一个连接被释放其二就是在已经分配的连接中找一个合适的连接给用户,此时该连接在多个用户间复用。复用连接非常重要,我们可以采用这样的设计模式:Reference Counting(引用记数)。该模式在复用资源方面用的非常广泛,每一个数据库连接,保留一个引用记数,用来记录该连接的使用者的个数。具体的实现上,我们可采用空闲池和使用池技术。空闲池中存放目前还没有分配出去被使用的连接,一旦一个连接被分配出去,那么就会放入到使用池中,并且增加引用记数。这样就可以高效地使用连接,因为一旦空闲池中的连接被全部分配出去,我们就可以采用复用引用记数最小的连接的方法从池中挑选出一个已经正在使用的连接用来复用。关闭连接池也就是连接池向数据库归还所有的连接对象。连接池规定了相应的方法来关闭连接。

基于JSP和SQL Server的网上数据库系统开发技术已经相当成熟,本文介绍了网络数据库系统开发过程中的几个技术问题,如连接池技术、JDBC (Java Bean)数据库访问机制等。

参考文献

[1]赵松涛.SQL Server2000系统管理与应用开发.人民邮电出版社, 2006.2, (1) .

[2]耿祥义, 张跃平.Java程序设计 (第三版) [M].北京:清华大学出版, 2009.

[3]杨志姝, 李光海.SQL应用与开发, 北京:清华大学出版, 2006.7, (1) .

JSP数据库访问技术 第7篇

关键词:JSP,网站设计,环境信息化

一、引言

随着Internet的进一步发展, 静态Web站点的维护与管理变得越来越困难。信息的不断增加和变化, 使网站维护人员不得不经常修改网页, 特别是基于数据库驱动的Web更是如此。信息交互性的加强使HTML越来越难以胜任。因此, 铁岭市环保局提出设计动态网站, 以适应环境信息化建设的需要。

二、网站设计

1. 网站定位

铁岭环境信息网站为环保专业政府网站, 以公众为主要服务对象, 以发布环保信息与用户之间互动为主要功能, 实现网上办公, 提高信息管理水平。

2. 网站风格

页面体现大方、简洁、庄重、主次分明的特点, 主色调选择蓝和绿, 以简捷、生动、通俗易懂的方式展现, 增强公众对网站的注意力, 营造参与氛围。

3. 设计内容及结构

建设内容包括:形象定位、策略定位、访客定位、功能设计、结构设计、导航体系设计、版面布局设计、栏目页面设计等。网站结构见图1。

三、核心技术

1. JSP (Java Server Pages) 技术

JSP是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。JSP技术是用JAVA语言作为脚本语言的, JSP网页为整个服务器端的JAVA库单元提供了一个接口来服务于HTTP的应用程序。在传统的网页HTML文件 (*.htm, *.html) 中加入Java程序片段 (Scriptlet) 和JSP标记 (tag) , 构成JSP网页 (*.jsp) 。JSP的功能适用于工作需求, 决定选择JSP语言开发铁岭环境信息网站。

2. 数据库技术

SQL因功能丰富, 简单易学被国际标准化组织 (ISO) 定为关系数据库管理系统的标准语言, 而迅速得到推广和应用。MS SQL Server 2000因管理清晰、方便、容量大、便于信息保存和检索等特点, 为铁岭环境信息网站所采用。

四、系统实现

1. 网站实现

首先利用Dreamweaver MX2004设计首页框架, 然后利用Photoshop CS、Fireworks等图形处理工具进行美化、修饰。最后在前台需要变化的板块中添加相应的Script语句来调用后台数据库的内容。见图2。

2. 后台管理系统

后台管理分为网站维护、文章维护、链接维护、交互栏目维护、密码维护、首页图片维护等。见图3。

3. 性能分析

该网站实现了网站规划所涉及的内容、功能和技术等方面的要求, 界面友好、美观大方、安全可靠, 具有易操作、易使用、易维护等特点。

五、结语

该网站利用动态网站开发理论, 采用JSP技术与数据库技术的有效结合, 实现了环境信息动态网站的建设目标。

参考文献

JSP数据库访问技术

JSP数据库访问技术(精选7篇)JSP数据库访问技术 第1篇Java是公认的、第一个针对于Internet以及Web环境的专门的语言。其独特的优势为面向...
点击下载文档文档内容为doc格式

声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。

确认删除?
回到顶部