<!--StartFragment-->
parameterClass
parameterClass 属性的值是 Java 类的全限定名(即包括类的包名)。 parameterClass 属性
是可选的,但强烈建议使用。它的目的是限制输入参数的类型为指定的 Java 类, 并优化框
架的性能。 如果您使用 parameterMap , 则没有必要使用 parameterClass 属性。 例如, 如果要
只允许 Java 类“ examples.domain.Product ”作为输入参数,可以这样作:
<statement id=”statementName” parameterClass=”examples.domain.Product”>
insert into PRODUCT values (#id#, #description#, #price#)
</statement>
<!--StartFragment-->
重要提示: 虽然 2.0 向后兼容,但强烈建议使用 parameterClass (除非没必要)。通过
提供 parameterClass ,您可以获得更好的性能,因为如果框架事先知道这个类,就可以优化
自身的性能。
如果不指定 parameterClass 参数,任何带有合适属性( get/set 方法)的 Java Bean 都可
以作为输入参数。
<!--EndFragment-->
<!--StartFragment-->
parameterMap
属性 parameterMap 的值等于一个预先定义的 元素的名称。 parameterMap
属性很少使用,更多的是使用上面的 parameterClass 和 inline parameter (接下来会讨论)。
注意! 动态 mapped statement 只支持 inline parameter ,不支持 parameter map 。
parameterMap 的基本思想是定义一系列有次序的参数系列,用于匹配 JDBC
PreparedStatement 的值符号。例如:
<parameterMap id=”insert-product-param” class=”com.domain.Product”>
<parameter property=”id”/>
<parameter property=”description”/>
</parameterMap>
<statement id=”insertProduct” parameterMap=”insert-product-param”>
insert into PRODUCT (PRD_ID, PRD_DESCRIPTION) values (?,?);
</statement>
<!--StartFragment-->
上面的例子中, parameter map 的两个参数按次序匹配 SQL 语句中的值符号( ? )。因此,
第一个“ ? ”号将被“ id ”属性的值替换,而第二个“ ? ”号将被“ description ”属性的值替
换。 Parameter Map 及其选项将在以后详细讨论
<!--StartFragment-->
Inline Parameter 简介
现在简单介绍一下 inline parameter ,详细讨论见后面章节。 Inline parameter 可以嵌在
mapped statement 内部使用。例如:
<!--EndFragment-->
<statement id=”insertProduct” >
insert into PRODUCT (PRD_ID, PRD_DESCRIPTION)
values (#id#, #description#);
</statement>
<!--StartFragment-->
以上例子中, 内嵌的参数是 #id# 和 #description# 。 每个参数代表一个 Java Bean 属性, 用
于给 SQL 语句中相应的位置赋值。 上面例子中, Product 对象的 id 和 description 属性的值将
会替换 SQL 语句中相应的符号。 因此, 对于 id=5 , description= ‘ dog ’的 Product 对象, SQL
语句变为:
insert into PRODUCT (PRD_ID, PRD_DESCRIPTION)
values (5, ‘dog’);
<!--EndFragment-->
<!--EndFragment--><!--EndFragment-->
分享到:
相关推荐
#### 一、SqlParameter简介 `SqlParameter`是System.Data.SqlClient命名空间下的一个类,用于表示SQL Server存储过程中的输入参数、输出参数和返回值等。通过使用`SqlParameter`,开发人员可以有效地避免SQL注入...
- **插件简介**:Git Parameter 插件允许用户在构建时选择一个Git仓库中的分支或标签作为构建的起点。 - **应用场景**: - 当需要根据不同的分支进行构建时。 - 当需要根据特定的标签或提交记录进行构建时。 - **...
这里 `<SID>` 表示服务标识符(Service Identifier),`<Parameter>` 可以是数据标识符(DID)、输入参数或其他自定义值。DID在此处被视为参数的一种类型。 ##### 2.2 带有子功能的请求 子功能(Sub-function)是某些...
#### 二、S参数简介 S参数是一种用于描述网络中信号散射行为的数学模型,主要用于表征网络内部结构对信号的影响。它主要关注正弦波信号的反射和传输特性,并且可以扩展到时域信号的分析中。S参数的核心思想是通过...
#### 存储过程简介 存储过程是一种预编译的SQL代码块,它被保存在数据库中,并通过一个名称来调用。存储过程可以接受输入参数并返回输出值,类似于编程语言中的函数。它们的主要优点包括提高性能(因为它们只需要...
Oracle 数据库入门简介 一、Oracle 体系结构 Oracle 体系结构包括物理结构和内存结构。物理结构包括数据文件、redo log files、control files 和 parameter files 等组件。数据文件是实际存储数据的文件,redo ...
本文档介绍了无人机航飞方案的简介,covers the key points of unmanned aerial vehicle (UAV) flight planning, camera parameter settings, data processing, and quality control. The document provides a ...
- F2层使用归一化的警戒参数(vigilance parameter)p来判断输入模式是否可以归入某个聚类。 - 如果没有找到匹配的聚类,则创建一个新的聚类。 - 完成学习后,网络会更新底上权重和顶下权重。 #### 三、快速自适应...
#### 一、简介 本文档主要涵盖了个人在学习QT过程中的基础知识总结和笔记,包括但不限于信号槽机制、事件处理机制、菜单栏设计等内容。虽然覆盖的知识点较为基础,但旨在通过浅显易懂的方式帮助读者理解和掌握QT的...
- **版本**:8.1版是其经典版本之一,广泛用于企业和组织内部部署各种Java应用程序。 **2. JDK 1.4** - **简介**:Java Development Kit (JDK) 1.4是Java SE平台的一个版本,发布于2002年。 - **特点**:相较于之前...
### RTSP交互命令详解及其过程参数描述 #### 一、RTSP概述 Real Time Streaming Protocol (RTSP) 或实时流媒体协议,是由 RealNetworks 和 Netscape 共同提出的一种应用层协议,用于有效地在 IP 网络上传输流媒体...
JNDI(Java Naming and Directory Interface),即Java命名和目录接口,是在分布式计算环境中使用的一种标准化接口,它允许Java应用程序查找和访问各种命名和目录服务中的共享组件及资源。 在分布式系统中,命名和...
#### 二、C3P0简介 C3P0(Concurrent DataSources Proxy Pool)是一个开源的JDBC连接池实现,旨在为JDBC提供额外的连接池功能,并且与大多数主流的JDBC驱动程序兼容。C3P0能够有效管理数据库连接资源,减少频繁创建...
**1.1 PDFLib库简介** PDFLib是一个强大的工具库,它允许开发者使用多种编程语言来创建、操作和修改PDF文件。对于C语言开发者来说,PDFLib提供了一系列简单而功能强大的API接口,使得开发过程变得更为高效。 **1.2...
在实际应用中,ADO.NET的灵活性体现在其组件可以独立使用,也可以组合使用以满足各种需求。例如,可以使用DataReader进行大量数据的快速读取,使用DataSet进行复杂的离线数据操作,或者结合Transaction对象实现高...
JNDI(Java Naming and Directory Interface)是Java平台提供的一种标准接口,用于访问各种命名和目录服务。它允许开发者以统一的方式访问不同的命名和目录服务,如DNS、LDAP等。在Web应用中,JNDI通常用于查找和...
#### 标题解读:Exchange 命令行管理程序简介 **Exchange 命令行管理程序**是微软为Exchange Server设计的一种高级管理工具,旨在通过命令行接口提供对Exchange Server的全面控制。此工具基于Windows PowerShell...
Zabbix 简介 Zabbix 是一个基于 Web 的监控解决方案,提供了实时监控和报警功能。它支持多种数据库类型,包括 MySQL、PostgreSQL、Oracle 等。Zabbix 可以监控服务器的状态、进程、磁盘使用情况、网络流量等。 ...
### VerilogA语法简介 #### 一、VerilogA基础概念 VerilogA是一种用于模拟电路行为级仿真的高级描述语言。它通过数学方程来描述电路元件的行为,支持多种物理领域的模型描述,如电子、热力学、力学等。VerilogA的...