`

myBatis3之SQL映射的XML文件(select元素)

 
阅读更多

myBatis3之SQL映射的XML文件(select元素)

----------

 

select

 

对简单类别的查询元素是非常简单的。比如:

<select id="selectPerson" parameterType="int" resultType="hashmap"> 
	SELECT * FROM PERSON WHERE ID = #{id} 
</select> 

这个语句被称作selectPerson,使用一个int(或Integer)类型的参数,并返回一个HashMap类型的对象,其中的列名列对应的值。 注意参数注释: #{id}. 这就告诉MyBatis创建一个预处理语句参数。使用JDBC,这样的一个参数在SQL中会由一个"?"来标识,并被传递到一个新的预处理语句中,就像这样:

String selectPerson = "SELECT * FROM PERSON WHERE ID=?"; 
PreparedStatement ps = conn.prepareStatement(selectPerson); 
ps.setInt(1,id); 

 

select元素有很多属性允许你配置,来决定每条语句的作用细节。 

<select 
	id=”selectPerson” 
	parameterType=”int” 
	parameterMap=”deprecated” 
	resultType=”hashmap” 
	resultMap=”personResultMap” 
	flushCache=”false” 
	useCache=”true” 
	timeout=”10000” 
	fetchSize=”256” 
	statementType=”PREPARED” 
	resultSetType=”FORWARD_ONLY”> 
属性 描述
id  在命名空间中唯一的标识符,可以被用来引用这条语句。
parameterType  将会传入这条语句的参数类的完全限定名或别名。
resultType 

从这条语句中返回的期望类型的类的完全限定名或别名。注意集合情形,那应该是集合

可以包含的类型,而不能是集合本身。使用 resultType或 resultMap,但不能同时使用。

resultMap

命名引用外部的resultMap。返回map是MyBat is 最具力量的特性,对其有一个很好的理解的话,

许多复杂映射的情形就能被解决了。使用 resultMap 或 resultType,但不能同时使用。

flushCache 将其设置为 true,不论语句什么时候被调用,都会导致缓存被清空。默认值:false。
useCache  将其设置为 true,将会导致本条语句的结果被缓存。默认值:true。
timeout   这个设置驱动程序等待数据库返回请求结果,并抛出异常时间的最大等待值。默认不设置(驱动自行处理)
fetchSize  这是暗示驱动程序每次批量返回的结果行数。默认不设置(驱动自行处理)

statementType 

STATEMENT,PREPARED 或 CALLABLE 的一种。这会让 MyBat is使用选择使用Statement,

PreparedStatement或 CallableStatement。默认值:PREPARED。 

resultSetType  FORWARD_ONLY|SCROLL_SENSITIVE|SCROLL_INSENSITIVE中的一种。默认是不设置(驱动自行处理)

 

 

分享到:
评论

相关推荐

    Mybatis动态SQL高级映射.zip

    在XML文件中,标签通常被嵌套在其他标签内,如&lt;select&gt;、和等标签内,用于控制生成的SQL语句的结构和内容。 标签通常包含一个test属性,该属性被用于指定条件表达式。如果表达式的结果为true,则标签内的内容会被...

    mybatis笔记.zip

    使用&lt;select&gt;、、、等元素来定义SQL语句。 使用${}和#{}来插入参数,其中${}会直接替换,#{}会被预编译防止SQL注入。 5. 参数映射: 参数映射使用#{}或${}来引用参数,#{}使用PreparedStatement,$${}直接替换。 6....

    free-idea-mybatis.zip

    支持查找映射器接口和映射器xml元素的用法 突出显示mapper xml的冲突元素为错误 自动注册映射器为spring bean 在编辑sql时,Mapper参数在xml中自动完成 #{} yourParameter 基于@Param注解

    mybatis知识点总结.docx

    MyBatis知识点总结 MyBatis是一款优秀的持久层框架,为Java应用程序提供了数据库访问的灵活性和...使用&lt;select&gt;、、、等元素来定义SQL语句。 使用${}和#{}来插入参数,其中${}会直接替换,#{}会被预编译防止SQL注入

    mybatis动态sql.doc

    MyBatis 动态 SQL 是一种在 MyBatis 映射文件中使用条件语句来生成动态 SQL 语句的技术。它可以根据不同的条件生成不同的 SQL 语句,从而实现灵活的查询和操作。 在 MyBatis 中,可以使用 `&lt;if&gt;`、`&lt;choose&gt;`、`...

    mybatis 样例,包含xml和annotation方式、关联映射、动态SQL等内容.zip

    在XML文件中,标签通常被嵌套在其他标签内,如&lt;select&gt;、和等标签内,用于控制生成的SQL语句的结构和内容。 标签通常包含一个test属性,该属性被用于指定条件表达式。如果表达式的结果为true,则标签内的内容会被...

    MyBatis3_用户指南(附JavaDB实例)

    SQL 映射 XML 文件.......23 Select元素....... 24 Insert、 update、 delete元素......25 Sql元素.....28 MyBatis 3 - User Guide 4 参数(Parameters)..28 resultMap元素..30 高级结果映射.32 id, result元素.......

    springmybatis

    2. Configuration.xml 里面 的&lt;mapper resource="com/yihaomen/mybatis/model/User.xml"/&gt;是包含要映射的类的xml配置文件。 3. 在User.xml 文件里面 主要是定义各种SQL 语句,以及这些语句的参数,以及要返回的类型...

    MyBatis-3-User-Guide用户手册(中文英文)

    SQL 映射的 XML 文件 \ 19 select\ 20 insert,update,delete \ 21 sql\ 23 Parameters \ 24 resultMap \ 25 高级结果映射\ 27 id,result \ 29 支持的 JDBC 类型 \ 30 构造方法\ 30 关联\ 31 集合\ 34 ...

    mybatis思维导图总结.zip

    SQL 映射的基本元素:&lt;select&gt;、、、。 参数映射和结果映射。 4. 动态 SQL 使用 、、、&lt;otherwise&gt; 构建动态 SQL。 动态 SQL 的应用场景和语法示例。 5. 注解配置 使用注解替代映射器文件。 常用注解:@Select、@...

    Mybatis面试题(含答案)_.pdf

    2. 通常一个 Xml 映射文件,都会写一个 Dao 接口与之对应, 请问,这个 Dao 接口的工作原理是什么?Dao 接口里的方法, 参数不同时,方法能重载吗? 3. Mybatis 是如何进行分页的?分页插件的原理是什么? 4. ...

    mybatis课件.rar

    使用&lt;select&gt;、、、等元素定义SQL语句。 参数映射和结果映射。 5. 动态SQL: 使用、、、、、等元素构建动态SQL。 动态SQL的应用场景和实例。 6. 注解配置: 使用注解代替XML映射器文件。 常用的注解如@Select、@...

    mybatis对象关系映射框架基础、动态SQL、关联关系..zip

    在XML文件中,标签通常被嵌套在其他标签内,如&lt;select&gt;、和等标签内,用于控制生成的SQL语句的结构和内容。 标签通常包含一个test属性,该属性被用于指定条件表达式。如果表达式的结果为true,则标签内的内容会被...

    Mybatis中的动态SQL语句解析

     Mybatis常用xml配置的方式,使用xml的几个简单的元素,便能完成动态SQL的功能,大量的判断都可以在mybaties的映射xml里面配置,以达到许多需要大量代码才能实现的功能,大大减少了代码量,体现了Mybatis的灵活、

    day01_eesy_01mybatis.zip

    学习笔记——mybatis的起步(1) ... 第五个:映射配置文件的操作配置(select),id属性的取值必须是dao接口的方法名 当我们遵从了第三、四、五之后,我们在开发中就无需再写dao的实现了。 mybatis的入门案列

    quarkus-mybatis:Quarkus MyBatis扩展

    Quarkus MyBatis扩展 MyBatis是一流的持久性框架,支持自定义SQL,存储过程和高级映射。 此扩展为开发人员提供了易于配置和本机支持的功能。 在pom.xml中添加以下依赖项以开始使用, &lt; dependency&gt; &lt; groupId&gt;io....

    day01_eesy_03mybatis_dao.zip

    把IUserDao.xml移除,在dao接口的方法上使用@Select注解,并且指定SQL语句 同时需要在SqlMapConfig.xml中的mapper配置时,使用class属性指定dao接口的全限定类名。 明确: 我们在实际开发中,都是越简便越好,...

    MyBatis 简单样例

    DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"&gt; &lt;!-- 映射关联的对象 --&gt; &lt;sql id="where"&gt; &lt;where&gt;userName =#{...

Global site tag (gtag.js) - Google Analytics