java - JSTL 持久数据库连接

标签 java jsp jstl database-connection

是JSTL使用的数据库连接<sql:query>标签持久化?

  1. 我的意思是如果我使用很多 <sql:query>页面上的标签然后他们会 共享同一个数据库连接?
  2. 整个页面怎么样 连接? JSTL是否提供了一种使用持久连接的方法 喜欢mysql_pconnect()在 PHP 中?

最佳答案

在用于 SQL 标记的 JSTL 中,您可以提供要用于数据库连接的数据源。 由决定数据库连接管理的数据源。 SQL 标记提供如下数据源信息:

<sql:query var="order" 
  dataSource="${applicationScope.orderDS}">
   select * from PUBLIC.orders where id = ?
   <sql:param value="${id}" />
</sql:query>

数据源属性值可以是以下类型:

  1. 数据源 - 在这种情况下将使用此数据源。
  2. 字符串 - 在这种情况下,将使用该名称进行 JDNI 查找。
  3. NULL - 在这种情况下它将使用标签设置的数据源。

如果您在交易标签内有一个 SQL 查询标签。事务内的所有查询共享同一个事务管理连接。

<sql:transaction>
   <sql:query var="order" 
      dataSource="${applicationScope.orderDS}">
         select * from PUBLIC.orders where id = ?
         <sql:param value="${id}" />
   </sql:query>
   <sql:update var="order" 
      sql="update PUBLIC.orders set book_name = ? where id = ?">
         <sql:param value="${name}" />
         <sql:param value="${id}" />
   </sql:query>
<sql:transaction>

关于java - JSTL 持久数据库连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7992561/

相关文章:

javascript - 每页 csrf token - java.lang.IllegalStateException : must define 'uri' attribute when token per page is enabled

java - 如何在 JSF 2.0 中为一键操作设置两个 ajax 事件

java - 如何在jsp中的表格顶部显示变量值?

java - 分支重新集成期间 Subclipse 连接错误

java - 从实时视频设备捕获图像以供基于 Java 的应用程序使用的最佳方法是什么?

java - 从组合框获取值(value)到jsp中的servlet

java - 使用 JSTL 和数据库中的键/值在 JSP 中进行本地化

java - 自定义 Spinner Android?

java - 以编程方式解决 Bean 注入(inject)

java - JSP scriptlet 是反模式吗?