`
- 浏览:
24324 次
- 性别:
- 来自:
深圳
-
- <?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="Category">
-
-
<typeAlias alias="subject" type="com.lhq.prj.bms.po.Subject" />
-
<typeAlias alias="category" type="com.lhq.prj.bms.po.Category" />
-
<typeAlias alias="page" type="com.lhq.prj.bms.core.Page" />
-
-
<parameterMap class="category" id="pm_category_without_id">
-
<parameter property="categoryName" javaType="string" jdbcType="VARCHAR" />
-
<parameter property="subjectId" javaType="integer" jdbcType="NUMBER" />
-
<parameter property="subjectName" javaType="string" jdbcType="VARCHAR" />
-
<parameter property="remark" javaType="string" jdbcType="VARCHAR" />
-
</parameterMap>
-
<sql id="byCategoryIdCondition">
-
<![CDATA[
- categoryId = #categoryId:NUMBER#
- ]]>
-
</sql>
-
-
<insert id="save" parameterMap="pm_category_without_id">
-
<![CDATA[
- INSERT INTO t_category
- (categoryName,subjectId,subjectName,remark)
- VALUES (?,?,?,?)
- ]]>
-
<selectKey resultClass="int">
-
<![CDATA[
- SELECT @@IDENTITY AS ID
- ]]>
-
</selectKey>
-
</insert>
-
-
<delete id="deleteById" parameterClass="integer">
-
<![CDATA[
- delete t_category
- ]]>
-
<dynamic prepend="WHERE">
-
<include refid="byCategoryIdCondition" />
-
</dynamic>
-
</delete>
-
-
<select id="findAll" resultClass="category">
-
<![CDATA[
- SELECT * FROM t_category
- ]]>
-
</select>
-
-
<update id="update" parameterClass="category">
-
<![CDATA[
- UPDATE t_category
- ]]>
-
<dynamic prepend="SET">
-
<isNotNull property="categoryName" prepend=",">
-
<![CDATA[
- categoryName = #categoryName:VARCHAR#
- ]]>
-
</isNotNull>
-
<isNotNull property="subjectId" prepend=",">
-
<![CDATA[
- subjectId = #subjectId:NUMBER#
- ]]>
-
</isNotNull>
-
<isNotNull property="subjectName" prepend=",">
-
<![CDATA[
- subjectName = #subjectName:VARCHAR#
- ]]>
-
</isNotNull>
-
<isNotNull property="remark" prepend=",">
-
<![CDATA[
- remark = #remark:VARCHAR#
- ]]>
-
</isNotNull>
-
</dynamic>
-
<dynamic prepend="WHERE">
-
<include refid="byCategoryIdCondition" />
-
</dynamic>
-
</update>
-
-
<sql id="findCategoryByPageCondition">
-
<isNotEmpty property="conditions">
-
<iterate property="conditions" open="(" close=")" conjunction="OR">
-
<![CDATA[
- upper(categoryName) LIKE '%' + upper(#conditions[]:VARCHAR#) + '%'
- OR upper(subjectName) LIKE '%' + upper(#conditions[]:VARCHAR#) + '%'
- OR upper(remark) LIKE '%' + upper(#conditions[]:VARCHAR#) + '%'
- ]]>
-
</iterate>
-
</isNotEmpty>
-
</sql>
-
-
<select id="findByPage" parameterClass="page" resultClass="category">
-
<![CDATA[
- SELECT TOP $limit$ * FROM t_category
- WHERE (categoryId >= (SELECT MAX(categoryId) FROM (SELECT TOP $start$ categoryId FROM t_category
- ]]>
-
<dynamic prepend="WHERE">
-
<include refid="findCategoryByPageCondition" />
-
</dynamic>
-
<![CDATA[
- ORDER BY categoryId ) AS T))
- ]]>
-
<dynamic prepend="AND">
-
<include refid="findCategoryByPageCondition" />
-
</dynamic>
-
<![CDATA[
- ORDER BY categoryId
- ]]>
-
</select>
-
-
<select id="findByCount" parameterClass="page" resultClass="int">
-
<![CDATA[
- SELECT COUNT(*) FROM t_category
- ]]>
-
<dynamic prepend="WHERE">
-
<include refid="findCategoryByPageCondition" />
-
</dynamic>
-
</select>
-
-
<select id="findCategoryBySubject" parameterClass="subject" resultClass="category">
-
<![CDATA[
- SELECT * FROM t_category
- ]]>
-
<dynamic prepend="WHERE">
-
<isNotNull property="subjectId" prepend="OR">
-
<![CDATA[
- subjectId = #subjectId:NUMBER#
- ]]>
-
</isNotNull>
-
<isNotNull property="subjectName" prepend="OR">
-
<![CDATA[
- subjectName like '%' + #subjectName:VARCHAR# + '%'
- ]]>
-
</isNotNull>
-
</dynamic>
-
</select>
-
</sqlMap>
分享到:
Global site tag (gtag.js) - Google Analytics
相关推荐
在Ibatis中,`sql-map-2.dtd`和`sql-map-config-2.dtd`分别对应于`sql-map`和`sql-map-config`文件的DTD定义。 `sql-map-2.dtd`文件主要用于定义SQL映射文件的结构。在这个文件中,你可以找到如下的元素和属性定义...
PUBLIC "-//iBATIS.org//DTD SQL Map Config 2.0//EN" "http://ibatis.apache.org/dtd/sql-map-config-2.dtd"> ``` 在这个配置文件中: - `<dataSource>`元素定义了数据源类型为“POOLED”,即使...
### ibatis_sql_map教程知识点详解 #### 一、引言 本教程旨在引导读者通过一个典型的应用场景了解和掌握ibatis SQL Maps框架的基本用法。ibatis SQL Maps是一款开源持久层框架,它允许开发者通过XML配置文件来实现...
在本文中,作者以物流系统开发为实例,介绍了基于iBatis SQL Map实现数据持久层的主要内容,这包括映射关系的建立、SQL Map配置文件的编写,以及SQL Map API的使用。 iBatis SQL Map的核心是基于XML配置文件的映射...
本文将深入探讨与“sql-map-2.dtd”和“sql-map-config-2.dtd”相关的知识点,以及它们在Ibatis中的作用。 Ibatis是一个轻量级的ORM(对象关系映射)框架,它允许开发者将SQL语句直接写在配置文件中,通过XML映射...
以上就是Ibatis SQL Map PPT中涉及的主要知识点,包括动态SQL的灵活性、事务处理的严谨性和缓存机制的高效性。理解并熟练运用这些特性,能帮助开发者更好地利用Ibatis来设计和实现高效的数据访问层。
iBATIS-SqlMaps-2 是一个 Java 持久层框架,用于简化 Java 应用程序中的数据库交互。快速入门教程旨在帮助开发者快速了解 iBATIS-SqlMaps-2 的使用和配置。 知识点1:iBATIS-SqlMaps-2 简介 iBATIS-SqlMaps-2 是一...
在XML描述文件中,SQL Maps定义了Java Bean、Map实现以及基本数据类型的包装类如何与数据库中的表和记录对应。这些映射文件通常包含SQL查询、存储过程以及事务管理等元素,使得开发者无需编写大量JDBC代码就能完成...
**iBATIS-SqlMaps**(也称为**DataMapper**或**SQLMaps**)是一个轻量级的Java持久层框架,它通过简单的XML配置文件将Java对象映射到数据库中的SQL语句,从而大大减少了在访问关系型数据库时所需的Java代码量。...
本文是《iBatis SQL Maps Developer Guide》的中文版,仅供读者参考,最权威的应以Clinton Begin的官方文档为准。如果中文翻译有错误,请通知译者(email:toleu@21cn.com,Blog:...
IBatis.NET是SQL Map的一种实现,它是一个持久层框架,用于将SQL查询与.NET应用中的业务逻辑分离。 在Mygeneration_1309_20081006中,内置了IBatisObject模板,这是Mygeneration的一个重要功能。这个模板允许用户...
在“iBATIS-SqlMaps中文教程集合”中,你将找到四本深入浅出的教程,这些教程涵盖了iBATIS的基础使用、高级特性和实战案例,帮助开发者快速掌握并熟练运用iBATIS解决项目中的实际问题。 1. **基础篇** - iBATIS...
在使用iBATIS(现已被MyBatis取代)进行数据库操作时,我们常常需要传递参数到SQL语句中。在iBATIS中,有两种主要的方式来处理这些参数:使用`$`和`#`。这两种方式在不同的场景下有不同的效果。 首先,让我们来看看...
SQL Map XML 文件是 iBATIS 的核心配置文件,包含了所有 SQL 映射规则。这些规则包括: - **Mapped Statements**:具体描述了 SQL 语句以及其对应的 Java 对象映射规则。 - **Statement 类型**:如 SELECT、INSERT、...
iBATIS SQL Maps的核心概念是SQL Map,它是一个XML文件,包含了SQL语句和结果映射。通过这种方式,SQL逻辑被封装在XML配置文件中,与业务逻辑代码解耦,使得代码更易于维护和测试。在XML文件中,可以定义查询、插入...
本文将详细介绍ibatis中的SQL语句编写方法,主要包括查询、插入、更新和删除等基本操作,并通过一个具体的例子来加深理解。 #### 二、ibatis简介 Ibatis是一个基于Java的持久层框架,它支持定制化SQL、存储过程...
一旦我们熟悉了将要处理的类和表,下一步就是创建SQL Map配置文件。此文件作为SQLMap实现的根配置,是XML格式的。在其中,我们可以配置属性、JDBC数据源和SQL Maps。它为集中管理配置信息提供了方便的位置。 #### ...