本文的主要参数来自于iBatis的邮件列表,自己暂时还没有做完整的测试。相信有些是具体参数设置所引起的,比如statement caching等等。
所谓的格式化SQL文和非格式化SQL文是指,为了提高可读性写法的不同。具体可以从详细的例子看出来。
Example 1.0:
<insert id="insertPerson" parameterClass="springibatis.
<![CDATA[
INSERT INTO people (
last_name,
first_name,
age
) VALUES (
#lastName#,
#firstName#,
#age#
);
]]>
</insert>
Example 1.1:
<insert id="insertPerson" parameterClass="springibatis.
<![CDATA[
INSERT INTO people (last_name, first_name, age) VALUES (#lastName#,#firstName#, #age#);
]]>
</insert>
下面是具体测试参数
1.) 使用(Format A)插入10,000条数据,花费大概12-15 seconds。
(Format A)
<![CDATA[
INSERT INTO people (
last_name,
first_name,
age
) VALUES (
#lastName#,
#firstName#,
#age#
);
]]>
2.) 使用(Format B)插入10,000条数据,花费大概7-8 seconds.
(Format B)
INSERT INTO people (
last_name,
first_name,
age
) VALUES (
#lastName#,
#firstName#,
#age#
);
3.) 使用(Format C)插入10,000条数据,花费大概3-4 seconds.
(Format C)
INSERT INTO people (last_name, first_name, age) VALUES
(#lastName#,#firstName#,#age#)
————————————————————————————————————————
以上是别人测试的记录,看到SQL书写格式对性能有如此的影响,比较惊讶,推测是因为statement caching设置的问题。有时间我要自己尝试一下。
Written on 2009/02/09 by MAN2
iBatis的Map文件中,格式化SQL文和非格式化SQL文的效率差异
Labels:
iBatis
0 Comments
Subscribe to:
Post Comments (RSS)
0 Responses to "iBatis的Map文件中,格式化SQL文和非格式化SQL文的效率差异"
Post a Comment