`
crazycat03
  • 浏览: 175601 次
  • 性别: Icon_minigender_2
  • 来自: 呼和浩特
社区版块
存档分类
最新评论

iBATIS配置文件说明

阅读更多

sql-map-config配置文件,可以查看sql-map-config-2.dtd可以有的标签和属性

SqlMapConfig.xml

 

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE sqlMapConfig
PUBLIC "-//ibatis.apache.org//DTD SQL Map Config 2.0//EN"
"http://ibatis.apache.org/dtd/sql-map-config-2.dtd">
<!-- Always ensure to use the correct XML header as above! -->
<sqlMapConfig>
<!-- The properties (name=value) in the file specified here can be used placeholders in this config
file (e.g. “${driver}”. The file is relative to the classpath and is completely optional. -->
<properties resource=" examples/sqlmap/maps/SqlMapConfigExample.properties " />
<!-- These settings control SqlMapClient configuration details, primarily to do with transaction
management. They are all optional (more detail later in this document). -->
<settings
cacheModelsEnabled="true"
enhancementEnabled="true"
lazyLoadingEnabled="true"
maxRequests="128"
maxSessions="10"
maxTransactions="5"
useStatementNamespaces="false"
defaultStatementTimeout="5"
/>
<!-- This element declares a factory class that iBATIS will use for creating result objects.
This element is optional (more detail later in this document). -->
<resultObjectFactory type="com.mydomain.MyResultObjectFactory" >
<property name="someProperty" value="someValue"/>
</resultObjectFactory>
<!-- Type aliases allow you to use a shorter name for long fully qualified class names. -->
<typeAlias alias="order" type="testdomain.Order"/>
<!-- Configure a datasource to use with this SQL Map using SimpleDataSource.
Notice the use of the properties from the above resource -->
<transactionManager type="JDBC" >
<dataSource type="SIMPLE">
<property name="JDBC.Driver" value="${driver}"/>
<property name="JDBC.ConnectionURL" value="${url}"/>
<property name="JDBC.Username" value="${username}"/>
<property name="JDBC.Password" value="${password}"/>
<property name="JDBC.DefaultAutoCommit" value="true" />
<property name="Pool.MaximumActiveConnections" value="10"/>
<property name="Pool.MaximumIdleConnections" value="5"/>
<property name="Pool.MaximumCheckoutTime" value="120000"/>
<property name="Pool.TimeToWait" value="500"/>
<property name="Pool.PingQuery" value="select 1 from ACCOUNT"/>
<property name="Pool.PingEnabled" value="false"/>
<property name="Pool.PingConnectionsOlderThan" value="1"/>
<property name="Pool.PingConnectionsNotUsedFor" value="1"/>
</dataSource>
</transactionManager>
<!-- Identify all SQL Map XML files to be loaded by this SQL map. Notice the paths
are relative to the classpath. For now, we only have one… -->
<sqlMap resource="examples/sqlmap/maps/Person.xml" />
</sqlMapConfig>

 相关标签的详细说明会在我上传的iBATIS中文版开发指南第10页开始介绍,英文版的官方可以下载,很多地方都说这个文件的作用相当于hibernate里的hibernate.cfg.xml文件,在实际应用中也可以综合到applicationContext.xml文件中。

 

下面是sqlmap配置文件

<?xml version="1.0" encoding="UTF-8" ?>

<!DOCTYPE sqlMap PUBLIC "-//ibatis.apache.org//DTD SQL Map 2.0//EN"
   "http://ibatis.apache.org/dtd/sql-map-2.dtd">

<sqlMap namespace="Person">

	<statement id="getAllUsers" resultClass="com.air.Account">
		SELECT * FROM USER_ACCOUNT order by USERID 
	</statement>
	
</sqlMap>

 这是最简单的一个配置文件,一般根据实体类的名称或功能会有多个这样的文件,防止id有冲突,一般都会指定namespace,多个文件只要在sql-map-config.xml文件里加入多个<sqlMap resource="examples/sqlmap/maps/Person.xml" />就可以了。 

上面使用的<statement>元素是个通用声明,可以用于任何类型的SQL语句。通常,使用具体的statement类型是个好主意。如<select>,<insert>,<update>,<delete>,<procedure>,各标签的详细说明请参见中文文档的第19页

 

 

为了重复使用sql代码片段,我们可以将<sql>,<include>标签结合使用,如下面这样

<sql id="selectItem_fragment">
FROM items
WHERE parentid = 6
</sql>
<select id="selectItemCount" resultClass="int">
SELECT COUNT(*) AS total
<include refid="selectItem_fragment"/>
</select>

 SQL显然是mapped statement中最重要的部分,可以使用对于数据库和JDBC Driver合法的任意SQL语句。只要JDBC Driver支持,可以使用任意的函数,甚至是多条语句。因为SQL语句是嵌在XML文档中的,因此有些特殊的字符不能直接使用,例如大于号和小于号(<>)。幸运的是,解决的办法很简单,只需将包含特殊字符的SQL语句放在XML的CDATA区里面就可以了。

<statement id="getPersonsByAge" parameterClass=”int” resultClass="examples.domain.Person">
<![CDATA[
SELECT *
FROM PERSON
WHERE AGE > #value#
]]>
</statement>

 

分享到:
评论

相关推荐

    ibatis用xml配置文件配置使用

    在IT行业中,iBATIS(现为MyBatis)是一个非常流行的数据访问框架,它将SQL语句与Java代码分离,使得数据库操作更加简洁、灵活。...希望这篇详细说明能帮助你理解和掌握iBATIS的XML配置文件配置使用。

    ibatis api,ibatis文档,ibatis说明文档

    SqlSessionFactory通常通过SqlSessionFactoryBuilder从XML配置文件或Java配置类构建。 2. SqlSession:代表一个数据库会话,可以在其中执行SQL命令并获取结果。SqlSession支持事务管理,包括开启、提交和回滚。 3....

    iBATIS2.3及其说明文档

    iBATIS,全称为“Infrastructure As A Business Logic Translation Service”,是一个优秀的开源持久层框架,它允许开发者将SQL语句直接写在Java代码中,通过XML配置文件或注解来映射SQL与Java对象之间的关系,简化...

    spring ibatis 配置(包括事务管理)

    以下是关于"spring ibatis 配置(包括事务管理)"的详细说明: 1. **引入依赖**:首先,我们需要在项目中添加Spring和iBatis的相关依赖。通常,这会在Maven或Gradle的配置文件中完成,确保引入了正确的版本。 2. *...

    stvrts+ibatis配置

    对于“stvrts+ibatis配置”这个主题,我们主要关注的是如何在实际开发中整合STVR(一个可能自定义或特定的框架)与iBatis,这是一个流行的数据访问层框架,用于简化Java应用程序中的SQL操作。以下是对这个配置的详细...

    struts+spring+ibatis配置

    iBatis 提供了映射配置文件,可以定义SQL语句、参数映射和结果集映射,简化了数据库操作。在 SSI 结构中,iBatis 负责与MySQL数据库的交互,处理数据的增删改查操作。 这个Web Project 包含的"数据库说明.txt"文件...

    ibatis 自己学的一个ibatis项目(只是打通了Oracle) 非常适合入门

    数据库自己建一张简单的表就行了,特别说明 只适合新手入门 只有三个java文件和三个xml配置文件 非常简单 但是包含了crud操作 非常适合新手入门,因为项目经理让我熟悉一下ibatis 我就自学写了一个,希望对你有帮助

    ibatisDemo.zip

    Ibatis的核心思想是将SQL语句与Java代码分离,通过XML配置文件或注解方式来定义SQL、存储过程以及高级映射,极大地提高了开发效率。 在这个"ibatisDemo.zip"压缩包中,我们可能找到了一系列关于快速入门Ibatis的...

    ibatis_sqlMap的配置总结

    **命名空间**是iBatis配置文件中的一个重要概念,它用于区分不同的SQL映射文件或同一文件中的不同部分。通过定义命名空间,可以避免SQL映射ID之间的冲突,并且方便地组织相关的映射信息。例如: ```xml ``` 在此...

    freemark与ibatis动态运用与说明,程序,源代码,文档

    iBatis的核心概念包括Mapper接口、Mapper XML配置文件和SqlSession。通过Mapper接口,开发者可以在代码中调用SQL方法;XML配置文件则用来定义SQL语句及其参数映射;SqlSession则是执行SQL操作的入口。动态SQL是...

    Spring+Struts2+iBatis简要说明

    `sql-map-config.xml`是iBatis的主要配置文件,包含了数据源、事务管理器和SQL映射文件的引用。`ibatis-sqlmaps-XXX.xml`则是具体的DAO配置,定义了如何映射Java对象与数据库操作。iBatis支持多种参数和结果类型,如...

    pojo+xDoclet生成ibatis映射文件

    XDoclet 是一个强大的源代码注释处理工具,它通过解析 Java 源代码中的 Javadoc 注释标签来生成各种类型的文档或配置文件。这种机制使得开发者能够在不离开 Java 代码的情况下,方便地指定所需的额外元数据,从而...

    ibatis官方中文文档

    iBatis是一个优秀的持久层框架,它允许开发者将SQL语句直接写在配置文件中,极大地提高了数据库操作的灵活性和便捷性。以下是对iBatis核心知识点的详细解析: 1. **简介**: iBatis是由Apache软件基金会维护的开源...

    ibatis3.1官方中文帮助文档

    iBatis是一个优秀的持久层框架,它允许开发者将SQL语句直接写在配置文件中,实现了SQL与Java代码的分离,提高了开发效率和可维护性。在iBatis 3.1版本中,框架进一步优化了设计,提供了更多便捷的功能和性能提升。 ...

    ibatis实例,mysql应用举例

    `iBatis` 的核心概念包括配置文件、映射文件、SqlSession和Mapper接口。配置文件通常包含数据源、事务管理器和环境设置等信息。映射文件则定义了SQL语句和结果集的映射规则,使得Java对象与数据库表之间可以进行透明...

    ibatis api 帮助文档+IBATIS 开发文档

    它允许开发者将SQL语句直接写在XML配置文件中,实现了SQL与Java代码的分离,提高了开发效率和数据库移植性。本篇将详细介绍IBATIS API和开发文档中的关键知识点。 **一、IBATIS API** `ibatis-api.chm`是IBATIS的...

    struts2 + spring2.5 + ibatis2.3.4整合包文件

    3. iBatis 2.3.4:iBatis是MyBatis的前身,它允许开发者编写动态SQL,将SQL语句直接写在XML配置文件中,或者通过注解方式定义在Mapper接口上。这种方式避免了将数据库逻辑混入Java代码,使得数据库操作更易于维护和...

    ibatis.Net

    它的核心设计理念是将SQL语句与.NET代码分离,通过XML配置文件或动态API来定义数据库交互逻辑,使得开发者能够更加灵活地管理和执行SQL,同时提高了代码的可维护性和可测试性。 Ibatis.Net的主要特点包括: 1. **...

    Ibatis增删改简单应用配置示例说明实例

    在Ibatis2版本中,开发者可以将SQL语句直接写在XML配置文件中,使得SQL与Java代码分离,提高了可维护性。本示例将详细介绍在Oracle 11g数据库环境下,如何使用Ibatis进行基本的增删改操作。 **1. 配置环境** 首先,...

    ibatis教程外加jar包

    - **SqlMapConfig.xml**:这是Ibatis的主要配置文件,用于配置数据源、事务管理器、SqlSessionFactory等。 - **SqlSession**:Ibatis中的会话接口,用于执行SQL语句并获取结果。 - **SqlSessionFactory**:创建...

Global site tag (gtag.js) - Google Analytics