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

开发 后端
本文向你讲述在实施JSP访问数据库的时候,通过JSP源码的形式说明建立良好的数据库连接的重要性以及通过优化JDBC设计操作加快访问数据库的方法。

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

完美的JSP访问数据库设计模式是Model-View-Controller (MVC)。传统三层体系为:Model为程序逻辑和数据;View为查看;以及Controller为请求处理。遵循这一模型,一个JSP程序包含客户端-服务器“对话框”的每一“行”的页面。在一个典型的程序中,你可以看到一个查询页面,一个验证页面,一个数据库插入页面,一个数据库更新页面,等等。

如何在每一页面中嵌入JDBC,以保证程序的结构更加合理。然而,建立可执行的SQL命令,正如变量通过JDBC命令而传递一样,也有可能会增加程序的复杂性。

JDBC设计的JSP操作

JSP数据库操作的另一方法是,在不使用JDBC的情况下为数据库建立一些操作的集合。使用这种方法,你可以得到两种好处:第一,你可以消除使用JDBC设计的必要,这就使得很多工作得以简化;第二,你的设计和代码的组织更加合理(比如可读性,灵活性,以及可维护性)。

你仍然需要一些驱动程序,但你首先简化以上的操作。JSP程序中的操作都是一些逻辑块,通常被其它的JSP程序开发者编写和利用,但你可以把它们当成子程序来使用。使用JSP操作的意义是标准化某些功能,以及最大程度地减少嵌入在JSP的Java代码数量。

JSP提供了一套标准扩展的类。通过这些类,你可以通过一个标签管理器(tag handler)定义一个操作。这里有两个JSP定义的Java接口:Tag接口和BodyTag接口,分别是由TagSupport类和BodyTagSupport类执行。

你可以建立通用JSP用途的一个标签库,并且你也可以执行标签管理器(tag handler)以扩展类的支持。以下是实现这些过程的步骤。

首先,执行一个标签管理器的类:

  1. packagecom.myactions;  
  2.  
  3. (import statements go here)  
  4.  
  5. public class MyActionTag extends TagSupport {  
  6. ...  
  7. }  
  8.  

接着,编译这段代码,并将类文件放置在程序的类库中。然后,你将需要一个Tag Library Descriptor (TLD)文件,这是一个XML文件,以匹配你的操作名称和相应的标签管理器的类。

  1. ﹤tag﹥  
  2. ﹤name﹥MyAction﹤/name﹥  
  3. ﹤tagclass﹥com.myactions.MyActionTag﹤/tagclass﹥  
  4. ﹤bodycontent﹥ (whatever) ﹤/bodycontent﹥  
  5. ﹤attribute﹥myData﹤/attribute﹥  
  6. ﹤/tag﹥  
  7.  
  8. ﹤/tag﹥  
  9.  

假设你已经建立一个名为MyAction的操作,这是一个与com.myactions.MyActionTag类匹配的TLD。TLD文件必须位于程序的TLDs路径。

当你从一个JSP访问数据库页调用操作时,TLD告诉JSP正确的类以使用操作。这就带来极大的方便,而且只需要少量的代码。

但是,从何引入SQL?首先,你需要建立具有连接功能的数据库访问。你可以使用javax接口来完成,而javax可见于JDBC 2.0 Optional工具箱。JDBC 2.0的javax.sql.DataSource类提供了你所需要的连接。

此时,SQL位于什么地方?它在bean中。你可以使用JDBCcreateStatement和PreparedStatement在bean中建立一个方法。将这一方法成为一个公共的Vector,并正确地将你的SQL声明传递到这一方法。

总结

你的数据库bean执行一个嵌入在操作体的SQL语句,你可以传递一个语句给SQL语句,或者使用它来执行一个预先的操作。可以通过标签管理器来执行你的操作。由于这种JDBC设计实现JDBC被嵌入于库代码中,你将不能在JSP程序中明确地使用它。

初次使用这种JDBC设计会觉得它比JDBC中的嵌入SQL,以及JSP访问数据库中的嵌入JDBC更加复杂,但是,你建立SQL操作并将它们存放在一个TLD,你只需做一次,在所有的JSP程序中就可以访问这些操作。这就是这种方法的优点。

 


【编辑推荐】

  1. JSP编程应注意的六个常见问题
  2. 实现JSP论坛树型结构的具体算法
  3. JSP入门之避免Form表单重复提交的几种方案
  4. li>JSP教程之访问量计数JSP源码
  5. JSP入门之网站环境搭建的步骤
责任编辑:仲衡 来源: 互联网
相关推荐

2009-07-01 16:01:58

JSP数据库

2009-03-16 09:09:18

数据库JDBCJSP

2009-07-01 15:02:56

JSP程序JSP操作

2009-07-03 14:10:59

2009-06-30 14:37:08

数据库JSP

2009-07-14 18:13:36

Microsoft J

2009-07-01 10:46:57

JSP程序JSP代码

2009-07-20 10:48:08

JDBC API

2010-03-04 17:19:40

2009-06-30 15:54:00

数据库访问JSP

2009-07-06 15:57:56

获取数据库连接JSP

2011-08-02 13:44:49

JSPJDBCSQL Server

2011-03-11 17:16:02

JSP操作数据库访问效率

2013-08-07 10:24:24

JDBC链接池

2009-07-16 17:22:56

JDBC数据库编程

2009-07-06 17:23:34

JDBC连接数据库

2011-03-17 15:59:37

c#数据库

2021-07-11 17:01:22

数据库数据算法

2009-06-30 15:15:30

JSP数据库

2011-03-21 13:53:45

数据库开发书写规范
点赞
收藏

51CTO技术栈公众号