• 服务热线: 13500063673   15815537879   
  • English

当前位置:网站首页 > 新闻中心 > 智能蓝牙app

深圳网站建设教您JSP如何提高数据库访问效率

点击次数:2005  更新时间:2014-03-13 16:43:46  发布者:www.maxhom.com  【关闭

[摘要]  从服务器端促进程序疾速开发的Java Server Pages (JSP)抉择它成为一种广为流行的工具。虽然板滞的一面依然存在,但是不管它包括多少缺陷,JSP可以为Web程序计划者提供许多东西,尤其是与数据库的输入和输出操作...。

  从服务器端促进程序疾速开发的Java Server Pages (JSP)抉择它成为一种广为流行的工具。虽然板滞的一面依然存在,但是不管它包括多少缺陷,JSP可以为Web程序计划者提供许多东西,尤其是与数据库的输入和输出操作与数据的处置。

  经过JSP来进行数据库访问不需要太多的引导。问题是怎么使开发者可以接受Web程序的数据库访问比传统的本地OLAP体系的数据库访问愈加具有吸引力,而且使他们认识到,整齐和简要的数据访问办法才是关键的。在这一点上,JSP可以极好地处理。

  你可以做哪些?

  如果你正在编写高数据量、数据密度大的Web程序时,你的数据库访问大概具有哪一方面的要求?如果你正在运用JSP,那么你有必要处置许多的服务器端的数据。程序或许需要许多的数据,或许许多用户,或许这二者的联系。你所思考的可能规模还会包括:性能的优化,可检测性,每一用户的多个查询的影响,查询的杂乱性,以及当单一的会话处置许多数据时,高等级的类型转换。

  这其间包括大规模的处置。可是,JSP可以帮助你极好地处置,因为它可以与Java Database Connectivity API (JDBC)极好的兼容。你可以将JDBC包括在JSP代码中,而且JDBC可以传递声明实行类似数据库的指令,只需你可以正确地运用JDBC驱动程序。

  开端

  这里是一个通常的、抽象的JSP程序实行的体系。首选的JSP计划形式为模型-视图-控制器(MVCModel-View-Controller),即传统三层体系的一种变异,以十分好的适合于服务器程序。在JSP的MVC计划形式中,Model指的是程序的逻辑与数据,View为查看,以及Controller为恳求处置。

  当你计划一个JSP程序时,在客户端与服务器交互之间树立榜首进程的页面,这是最佳的一个进程。例如,在一个典型程序中,在数据交换中的每一个特定进程都会有页面:一个数据入口页面,一个验证恳求页面,一个数据库呼应页面,以及这些页面的子页面(一个更改记录的页面,一个删去记录的页面,等等)。

  你可以将JDBC嵌入到每一页面中,以结束被恳求的数据库操作。但是,这一操作也会冒很大的风险,因为因为混合了JSP和JDBC而混合了整个程序──JDBC是依据SQL。这也便是SQL被封装在JDBC,而JDBC也被封装在JSP──这也满足让你晕头转向的。如果你挑选这一办法,你将会取得你想要的功用,但一定要保证你的程序逻辑与数据库访问代码的联系十分清晰,这一点分外留神。

  嵌入式JDBC

  JDBC API不会直接地与数据库进行沟通。其间的驱动程序结束的实践的衔接,你可以在卖方的Web站点上下载这些驱动程序。除此之外,还有四种JDBC的驱动程序类型,如果你抉择运用JDBC,你需要正确地挑选最为适合你需要的那种类型。你将运用一个DriverManager类来处置依据驱动程序的衔接。

  深圳网站建设提示你可以运用一个名为getConnection的DriverManager办法来树立你的数据库衔接。你还可以运用它的URL参数来辨认数据库:

  public static Connection getConnection(jdbc:odbc:nameOfDatabase)

  如今,通知DriverManager有关驱动程序的信息(大概在你的classpath中):

  Class.forName(“sun.jdbc.odbc.nameOfJDBCDriver”);

  你已经将数据库衔接到JSP程序,但你依然不可以实行一个数据库指令。处理这一点,你可以在JSP代码中生成声明以树立数据库指令,如下所示:

  public Statement createStatement(intresultSetType, intresultSetConcurrency)

  其间的参数可以让你控制从数据库查询得到的结果。当运用榜首个参数时,可以在程序中看到结果;当运用第二个参数时,你可以经过查询来更新数值(这是一个难以相信的功用,在往后的文章中值得进一步评论)。

  AListing A显现列举了下两种办法的杂乱性。

  声明(Statement)便是SQL指令。PreparedStatement便是SQL的声明,你可以经过其间的参数来控制程序的进程。CallableStatement是用于访问SQL存储程序。你是不是开端意识到,如果你没有看到这些阐明,你是不是觉得这些声明很杂乱?请注意到,经过调用rollback办法,你可以撤消交易进程。

  如果你想彻底运用这些数据库访问的办法,你唯一丢失的还有:

  ResultSetexecuteQuery(string sqlQuery)

  (你可以运用executeQuery来结束以上进程。你也可以运用一个executeUpdate来结束更新、插入和删去)。你以上的声明接口使你可以运用一些办法来实行SQL声明。ResultSet所做的便是访问从查询得到的数据,所以你可以在JSP程序中运用这些数据。

  经过将JSP程序分解成单一的、功用显着的页面,以及在任何给定页面中实行一个单一的数据库操作,可以很大程度地简化你的数据库操作,以及树立可以用于往后程序开发的页面,即便你将SQL嵌入到这些页面的JDBC中。

  可是你还可以做更多的工作,以使得你的JSP数据库访问愈加整齐和简单保护。在JSP代码中嵌入JDBC,以及经过发送SQL指令与数据库通讯,这些进程都极好。可是,它要求在不能增加代码杂乱程度下,树立经过接口的SQL指令的程序。当你的SQL处置需要提高灵活性的时分,你可以进一步地分离你的数据库接口代码,以清洗你的JSP程序。鄙人面的文章中,我将通知你怎么实现这些进程。


Contact us

联系我们

深圳驰骋网络

深圳

服务热线: :13500063673   15815537879   

地址:深圳市宝安区沙井镇中心路高盛大厦903室

收缩