`
sbpya
  • 浏览: 615724 次
  • 性别: Icon_minigender_1
  • 来自: 杭州,长沙
社区版块
存档分类
最新评论

iBATIS动态查询简介

阅读更多

iBATIS动态查询的实现主要是在iBATIS中使用安全的拼接语句,动态查询

  iBATIS比JDBC的优势之一,安全高效

  iBATIS动态查询实例:(说明文字在注释中)

 

﹤ select  id ="selectAllProducts"  parameterClass ="Product"  resultMap ="ProductResult" ﹥   
 select id,note from Product  
     ﹤ dynamic  prepend ="WHERE" ﹥   
     ﹤!--  isNotNull判断参数是否存在,Integer类型  --﹥   
          ﹤ isNotNull  property ="id" ﹥   
              ﹤!--  isGreaterThan判断参数是否大于compareValue,isGreaterEquals是大于等于  --﹥   
              ﹤ isGreaterThan  prepend =" and "  property ="id"  compareValue ="0" ﹥   
             id = #id#  
              ﹤/ isGreaterThan ﹥   
          ﹤/ isNotNull ﹥   
          ﹤!--  isNotEmpty判断字串不为空,isEmpty可以判断字串为空  --﹥   
          ﹤ isNotEmpty  prepend =" and "  property ="note" ﹥   
          ﹤!--  模糊查询不能用#,#在是用prepareStatement的?插入参数,$是文本替换  --﹥   
         note like '%$note$%' 
          ﹤/ isNotEmpty ﹥   
      ﹤/ dynamic ﹥   
﹤/ select ﹥ 

  iBATIS动态查询解释:

  用Map传参数

﹤ select  id ="selectAllProducts"  parameterClass ="java.util.HashMap"  resultMap ="ProductResult" ﹥   
  select id,note from Product  
      ﹤ dynamic  prepend ="WHERE" ﹥   
      ﹤!--  isPropertyAvailable判断属性是否有效  --﹥   
         ﹤ isPropertyAvailable  property ="id" ﹥   
           ﹤ isNotNull  property ="id" ﹥   
               ﹤!--  isLessThan判断参数是否小于compareValue,isLessEquals是小于等于  --﹥   
               ﹤ isLessThan  prepend =" and "  property ="id"  compareValue ="10" ﹥   
              id = #id#  
               ﹤/ isLessThan ﹥   
           ﹤/ isNotNull ﹥   
         ﹤/ isPropertyAvailable ﹥   
       ﹤/ dynamic ﹥   
 ﹤/ select ﹥ 

  iBATIS动态查询几个常用属性

  ﹤ isPropertyAvailable ﹥  属性是存在

  ﹤ isNotPropertyAvailable ﹥  属性不存在

  ﹤ isNull ﹥  属性值是null

  ﹤ isEmpty ﹥  判断Collection.size ﹤ 1 或String.length()﹤1

  ﹤isEqual ﹥  等于

  ﹤ isNotEqual ﹥  不等于

  ﹤ isGreaterThan ﹥  大于

  ﹤ isGreaterEqual ﹥  大于等于

  ﹤ isLessThan ﹥  小于

  ﹤ isLessEqual ﹥  小于等于

  iBATIS动态查询的相关信息就向你介绍到这里,希望对你了解iBATIS动态查询有所帮助。

<!-- 分页 --><!-- 分页end -->

 

分享到:
评论

相关推荐

    Ibatis查询Id列表.doc

    根据提供的文档信息,我们可以深入探讨Ibatis框架中的一个具体应用场景:如何通过动态SQL查询特定条件下的ID列表。本文将从以下几个方面进行详细解析: ### 一、Ibatis简介 Ibatis是一个基于Java的持久层框架,它...

    ibatis and和or联合查询 .doc

    在ibatis中,实现复杂的`AND` 和 `OR` 联合查询可以通过动态SQL来完成。动态SQL允许在运行时动态地构建SQL语句,从而实现更加灵活的查询功能。 #### 四、示例解析 根据提供的部分代码,我们可以详细分析如何在...

    ibatis多表查询过程

    通过以上讲解,我们了解到在iBatis中进行多表查询的基本方法和策略,包括如何设置映射关系、使用JOIN操作、动态SQL以及结合Spring进行事务管理。实际开发中,根据具体需求灵活运用这些技巧,能够有效提高代码质量和...

    Ibatis查询语句里,可以使用多表查询

    #### 一、iBatis简介 iBatis 是一款优秀的持久层框架,它将 SQL 映射到 Java 对象,简化了 JDBC 编程过程中的繁琐操作,提高了开发效率。iBatis 的核心功能包括 SQL 映射、动态 SQL 生成等,它通过配置文件或者注解...

    ibatis3应用实例(oracle数据库)

    一、Ibatis3简介 Ibatis3是MyBatis的前身,它放弃了Hibernate的全对象关系映射,转而采用XML或注解方式来配置SQL语句,这使得SQL与Java代码完全分离,增强了代码的可读性和可维护性。Ibatis3的主要优势在于灵活性高...

    IBatis .NET框架实例

    例如,使用`&lt;if&gt;`、`&lt;choose&gt;`、`&lt;when&gt;`、`&lt;otherwise&gt;`等标签来构建动态查询。 **八、性能优化** 通过合理的缓存策略、批处理和预编译SQL等手段,IBatis可以在不影响灵活性的同时提供良好的性能。 总结,IBatis ...

    ibatis拼接字符串

    ### 一、iBatis 框架简介 iBatis 是一个基于 Java 的持久层框架,它将 SQL 映射语句与 Java 代码分离,使得开发者能够更加灵活地控制 SQL 的执行逻辑。虽然 iBatis 在某些方面与 Hibernate 类似,但它们之间的主要...

    ibatis开发指南 经典教材

    ### ibatis简介 ibatis主要针对的是那些对数据库性能有极高要求或需要复杂SQL查询的应用场景。与“一站式”ORM解决方案相比,ibatis要求开发者更直接地参与到SQL语句的编写中,这对于那些希望对数据库操作有更多...

    ibatis基础知识详解

    Ibatis简介 Ibatis最初由Clinton Begin创建,后被Google Code托管,并在2010年迁移到GitHub。其设计理念是将SQL语句与Java代码解耦,通过XML配置文件或注解方式定义SQL语句,使得数据库操作更加灵活且易于维护。 ...

    ibatisDemo 入门源码

    一、Ibatis框架简介 Ibatis是由MyBatis团队开发的一款轻量级Java ORM(Object-Relational Mapping)框架,它的核心理念是将SQL语句与Java代码分离,使得SQL与业务逻辑更好地解耦。Ibatis提供了映射机制,通过XML或...

    ibatis 开发指南 2004

    1. **iBatis简介**:介绍iBatis的基本概念,作为一款轻量级的数据持久层框架,如何简化传统JDBC的复杂性,提供更直观的数据库操作方式。 2. **配置文件**:讲解iBatis的核心配置文件(mybatis-config.xml),包括...

    ibatis资料ibatis资料

    **iBATIS简介** iBATIS(发音为“eye-batts”)在Java世界中一度非常流行,它的核心理念是分离应用程序的业务逻辑层和数据访问层。它不是完整的ORM(对象关系映射)解决方案,而是更注重SQL的控制权,使得开发者...

    iBatis执行非查询语句(CRUD,函数和过程)

    一、iBatis简介 iBatis最初由MyBatis的创始人Clinton Begin创建,后来发展为MyBatis。它是一个基于Java的持久层框架,消除了几乎所有的JDBC代码和参数手动设置,以及结果集的映射。通过XML或注解方式配置和原始映射...

    IBATIS DOC

    3. **动态SQL**: IBATIS 支持动态SQL,这意味着你可以根据条件在运行时构建SQL语句。这增强了SQL的灵活性,减少了重复代码。 4. **事务管理(Transaction Management)**: IBATIS 提供了简单的事务管理功能,允许...

    ibatis官方中文文档

    动态SQL是iBatis的一大特色,通过`&lt;if&gt;`, `&lt;choose&gt;`, `&lt;when&gt;`, `&lt;otherwise&gt;`, `&lt;where&gt;`, `&lt;set&gt;` 等标签,可以在XML中编写条件判断,构建灵活的SQL语句。 8. **缓存**: iBatis提供了本地缓存和二级缓存机制...

    ibatis jar

    一、iBatis简介 iBatis是由Clinton Begin创建的一个开源项目,最初名为“Apache MyBatis”。它并非ORM(Object-Relational Mapping)框架,而是一个SQL映射框架,允许开发者编写动态的SQL,将SQL与Java代码解耦,...

    Ibatis常用sql语句

    ### Ibatis简介 Ibatis是一个支持普通SQL查询、存储过程以及高级映射的优秀持久层框架。Ibatis可以让你直接编写原生态SQL,可以严格控制SQL执行性能,灵活度极高,尤其适合对SQL有特殊需求的项目。 ### SQL语句...

    iBATIS 模板

    1. **iBATIS简介** iBATIS最初由James Gulick开发,后来成为Apache软件基金会的一个顶级项目。它的主要功能是将SQL查询映射到Java对象,提供了一种灵活的、非侵入式的持久层解决方案。iBATIS的核心概念包括:...

    ibatis2.0开发指南(官网)

    1. **iBatis简介**:首先介绍iBatis的起源、目标和设计理念,帮助读者理解为何选择iBatis作为持久层解决方案。 2. **环境搭建**:详述如何配置Java开发环境,以及如何集成iBatis到项目中,包括添加依赖、配置数据源...

Global site tag (gtag.js) - Google Analytics