ibatis 入门

来源:互联网 发布:c语言用迭代法求平方根 编辑:程序博客网 时间:2024/04/30 22:27

sqlMapConfig为根元素

1:
SQL Map配置文件拥有唯一的<properties>元素,用于在配置文件中使用标准的Java属性文件(name=value)。这样做后,在属性文件中定义的属性可以作为变量在SQL Map配置文件及其包含的所有SQL Map映射文件中引用。
也可以从合法的URL中加载(使用url属性)。例如,要加载固定路径的属性文件,使用:
<properties url=”file:///c:/config/my.properties” />


2:
<setting>元素用于配置和优化SqlMapClient实例的各选项。<setting>元素本身及其所有的属性都是可选的


3:
<typeAlias>元素让您为一个通常较长的、全限定类名指定一个较短的别名。


4:
<transationManager>元素让您为SQL Map配置事务管理服务。
属性type指定所使用的事务管理器类型。这个属性值可以是一个类名,也可以是一个别名。包含在框架的三个事务管理器分别是:JDBC,JTA和EXTERNAL。


5:
<datasource>是<transactionManager>的一部分,为SQL Map数据源设置了一系列参数。目前SQL Map架构只提供三个DataSource Factory,但您也可以添加自己的实现。
type="SIMPLE"  "DBCP"  "JNDI"


6:
<sqlMap>元素用于包括SQL Map映射文件和其他的SQL Map配置文件。每个SqlMapClient对象使用的所有SQL Map映射文件都要在此声明。映射文件作为stream resource从类路径或URL读入。您必须在这里指定所有的SQL Map文件。
<!-- CLASSPATH RESOURCES -->
<sqlMap resource="com/ibatis/examples/sql/Product.xml" />
<!-- URL RESOURCES -->
<sqlMap url="file:///c:/config/Customer.xml " />


Mapped Statements
SQL Map的核心概念是Mapped Statement。Mapped Statement可以使用任意的SQL语句,并拥有parameter map(输入)和result map(输出),。如果是简单情况,Mapped Statement可以使用Java类来作为parameter和result

。Mapped Statement的结构如下所示:
<statement id=”statementName”
[parameterClass=”some.class.Name”]
[resultClass=”some.class.Name”]
[parameterMap=”nameOfParameterMap”]
[resultMap=”nameOfResultMap”]
[cacheModel=”nameOfCache”]
>
select * from PRODUCT where PRD_ID = [?|#propertyName#]
order by [$simpleDynamic$]
</statement>
在上面的表达式中,括号[]里的部分时可选的属性,并且在某些情况下只有特定的组合才是合法的。因此下面这个简单的例子也是正确的:
<statement id=”insertTestProduct” >
insert into PRODUCT (PRD_ID, PRD_DESCRIPTION) values (1, “Shih Tzu”)
</statement>