springside2allOne中ibatis只用几个孤零的ibatis的dao封装,没看到什么demo。
官网http://wiki.springside.org.cn/display/springside/iBatis的说明也很简略。在Springside中使用ibatis,参考这里,http://leondu.iteye.com/blog/54694。
IBatisGenericDao中get、getall明显公用一个statement,因此sql是动态的,参考
http://ibatis.apache.org/docs/dotnet/datamapper/ch03s09.html
个人ibatis配置如下
<?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">
<sqlMapConfig>
<settings
cacheModelsEnabled="true"
enhancementEnabled="true"
lazyLoadingEnabled="true"
errorTracingEnabled="true"
maxRequests="32"
maxSessions="10"
maxTransactions="5"
useStatementNamespaces="true"
/>
<sqlMap resource="com/jake/ibatis/conf/attraction-ibatis.xml" />
</sqlMapConfig>
<?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="com.jake.model.Attraction">
<!-- Use type aliases to avoid typing the full classname every time. -->
<typeAlias alias="Attraction" type="com.jake.model.Attraction" />
<!-- Select with no parameters using the result map for Account class. -->
<select id="select" resultClass="Attraction" parameterClass="int">
select * from Attraction
<isGreaterThan compareValue="0">
where id = #id#
</isGreaterThan>
</select>
<!--
<select id="com.jake.model.Attraction.select" resultClass="Attraction" parameterClass="int">
select * from Attraction where id=#id#
</select>
-->
<insert id="insert" parameterClass="Attraction">
insert into Attraction(id,name,description) values ( #id#,#name#,#description# )
</insert>
<update id="update" parameterClass="Attraction">
update Attraction set name = #name#,description=#description#
where id=#id#
</update>
<delete id="delete" parameterClass="int">
delete from Attraction where id=#id#
</delete>
<select id="load" resultClass="Attraction" parameterClass="int">
select * from Attraction where id=#id#
</select>
</sqlMap>
分享到:
相关推荐
iBatis动态SQL标签用法 iBatis是Java持久层框架,提供了动态SQL标签来实现动态查询。动态SQL标签可以根据不同的条件生成不同的SQL语句,从而提高查询效率和灵活性。 动态SQL片段 iBatis提供了动态SQL片段的功能,...
在探讨ibatis中的动态SQL(Dynamic SQL)及`prepend`的使用时,我们首先需要对ibatis有一个基本的理解。ibatis是一种开源的数据访问层框架,它简化了Java应用程序与数据库之间的交互过程。通过使用XML配置文件来定义...
`<dynamic>`标签是iBATIS动态标签的核心,它允许在其内部包含一系列的条件标签,根据不同的条件来决定哪些部分应该被插入到最终的SQL语句中。`<dynamic>`标签有三个主要属性: 1. `prepend`: 在动态内容前添加的字符...
6. **Dynamic SQL**:允许在XML映射文件中进行条件判断,动态生成SQL语句,提高了SQL的灵活性和复用性。 7. **Transactions**:SQL Maps支持声明式和编程式的事务管理,确保数据的一致性和完整性。 通过使用iBATIS...
iBATIS的核心功能在于其强大的SQL映射能力和动态SQL生成机制,这使得开发人员能够灵活地处理复杂的数据库交互需求。 ### 输入参数为单个值 在iBATIS中,当输入参数为单个值时,如示例中的`long`类型,可以使用`...
根据给定的文件信息,以下是对“Ibatis常用...Ibatis通过其动态SQL标签如`iterate`, `isNotNull`, `dynamic`等提供了极高的灵活性,能够有效应对复杂多变的业务需求。掌握这些基本用法对于提升Ibatis开发效率至关重要。
iBATIS,作为一款优秀的持久层框架,提供了强大的动态SQL功能,解决了直接使用JDBC时编写复杂动态SQL的难题。本文将深入探讨iBATIS动态注入的相关知识点。 iBATIS动态SQL主要通过XML映射文件中的特定标签实现,允许...
ibatis,ibatis,ibatis,ibatis,ibatis
根据提供的文件信息,我们可以深入探讨ibatis框架中的动态SQL元素及其使用方法。下面将详细介绍标题、描述以及部分内容中涉及的关键知识点。 ### ibatis 动态代理DTD #### 标题解释 - **ibatis**: 是一个开源的...
在IT领域的数据库操作中,IBATIS框架提供了一种强大且灵活的方式来进行SQL查询,尤其在动态查询方面表现得尤为突出。本文将深入探讨IBATIS动态查询语句的运用,解析其背后的逻辑与机制,以及如何利用这些特性来增强...
5. **Dynamic SQL**:iBATIS的动态SQL功能使得开发者能够在运行时根据条件构造SQL,避免了大量冗余的SQL语句,提高了代码的复用性。 6. **Transaction Management**:iBATIS支持JDBC和Spring两种事务管理方式,可以...
Dynamic SQL 功能是 ibatis 中的一项重要特性,允许开发者根据运行时的条件动态构建 SQL 语句。本文将详细介绍 ibatis 中 Dynamic SQL 的使用方法,特别关注 `<dynamic>` 标签及其相关的子标签。 #### 二、Dynamic ...
在 iBatis 中,动态查询条件是通过 `<dynamic>` 元素来实现的,该元素可以根据参数的值来生成不同的 SQL 语句。 在 iBatis 中,参数可以是基本类型、字符串、集合等,它们可以通过 `#` symbols 来传递给 SQL 语句。...
"ibatis in action" 暗示这可能是一本关于如何有效使用iBATIS的实战指南,通常这类书籍会深入讲解框架的各个方面,包括安装配置、基本概念、映射文件、事务管理、动态SQL以及最佳实践等。 标签 "教程" 指出这是一个...
这篇入门教程将引导初学者深入理解Ibatis的核心概念,包括SQL Map配置、动态SQL、事务管理以及与Spring框架的整合。 **1. SQL Map配置** SQL Map是Ibatis中的核心组件,它定义了数据库操作与Java对象之间的映射关系...
iBatis 16个常用SQL语句 iBatis是一个基于Java的持久层框架,提供了一个简洁的方式来访问和操作数据库。在iBatis中,SQL语句是通过XML文件来配置的。下面是16个常用的iBatis SQL语句,涵盖了基本的CRUD(Create、...
动态SQL是Ibatis的一大亮点,但在3.x中,动态SQL表达式变得更加强大,可以更好地处理复杂的查询条件。例如,`<if>`、`<choose>`、`<when>`、`<otherwise>`等标签的使用,让SQL语句可以根据条件动态生成,提高了代码...
例如,在上面的示例代码中,我们使用 `<dynamic>` 元素来定义动态 SQL 语句,在其中使用 `<isNotNull>`、`<isGreaterThan>`、`<isLessThan>` 等元素来构建条件语句。 这些元素可以根据参数的值动态地生成 SQL 语句...