`
中华好儿孙
  • 浏览: 68783 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

mybatis的select标签里从一个对象参数里取其中的map属性里的一个list里的某个特定元素

阅读更多
<select id="selectTest" parameterType="cn.com.n22.global.common.query.Query" resultType="java.util.LinkedHashMap">
<bind name="halo" value="searchMap['wordItem'][0]"/>
  	select #{halo} name1
</select>


package cn.com.n22.global.common.query;

import java.util.Map;

import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonInclude.Include;

@JsonInclude(Include.NON_NULL)  
public class Query{

	/**
	 * 查询页码
	 */
	private Integer pageNum = 1;
	
	/**
	 * 查取记录数
	 * 默认
	 */
	private Integer pageSize = 10;

	/**
	 * 排序集合
	 * key = 排序字段 
	 * value = 排序方式
	 */
	private Map<String,Object> orderMap;
	
	/**
	 * 模糊查詢
	 * 界面写法:searchMap['case_type']
	 */
	private Map<String,Object> searchMap;
	/**
	 * 精确查询
	 */
	private Map<String,Object> accurateSearchMap;
	/**
	 * 范围查询Map
	 */
	private Map<String,Object> rangeSearchMap;
	/**
	 * 不等集合
	 */
	private Map<String,Object> unEqualMap;
	

	public Map<String, Object> getUnEqualMap() {
		return unEqualMap;
	}

	public void setUnEqualMap(Map<String, Object> unEqualMap) {
		this.unEqualMap = unEqualMap;
	}

	public Map<String, Object> getRangeSearchMap() {
		return rangeSearchMap;
	}

	public void setRangeSearchMap(Map<String, Object> rangeSearchMap) {
		this.rangeSearchMap = rangeSearchMap;
	}

	public Map<String, Object> getOrderMap() {
		return orderMap;
	}

	public void setOrderMap(Map<String, Object> orderMap) {
		this.orderMap = orderMap;
	}
	
	public Map<String, Object> getSearchMap() {
		return searchMap;
	}

	public void setSearchMap(Map<String, Object> searchMap) {
		this.searchMap = searchMap;
	}

	public Integer getPageNum() {
		return pageNum;
	}

	public void setPageNum(Integer pageNum) {
		this.pageNum = pageNum;
	}

	public Integer getPageSize() {
		return pageSize;
	}

	public void setPageSize(Integer pageSize) {
		this.pageSize = pageSize;
	}

	public Map<String, Object> getAccurateSearchMap() {
		return accurateSearchMap;
	}

	public void setAccurateSearchMap(Map<String, Object> accurateSearchMap) {
		this.accurateSearchMap = accurateSearchMap;
	}
	
	public Query(){}
	
	public Query(Map<String,Object> rangeSearchMap){
		this.rangeSearchMap = rangeSearchMap;
	}
}

分享到:
评论

相关推荐

    MyBatis传入多个参数的问题

    当使用`selectList()`方法时,如果需要同时传递不同类型的参数,可以通过将所有参数封装到一个`Map`对象中来实现。例如: ```java List&lt;String&gt; list_3 = new ArrayList(); Map, Object&gt; map2 = new HashMap, ...

    Mybatis多参数查询与列表查询不同方式实现

    Mybatis是一个优秀的Java持久层框架,它允许开发者将SQL语句直接写在XML配置文件或者Mapper接口中,从而简化了DAO(数据访问对象)层的开发工作。在处理多参数查询时,Mybatis提供了灵活的方式。 1. **Map参数传递*...

    MyBatis传入集合 list 数组 map参数的写法

    当传入的参数是一个List时,`&lt;foreach&gt;`标签的`collection`属性应设置为`list`。例如,以下是一个查询员工的例子,其中`list`参数包含员工ID的列表: ```xml &lt;select id="getEmployeesListParams" resultType=...

    SpringBoot+Mybatis,返回Map的时候,将Map内的Key转换为驼峰的命名

    在这个例子中,`toCamelCaseMap`方法接收一个Map,并使用Java 8的Stream API来创建一个新的Map,其中的Key已经被`underscoreToCamelCase`方法转换为驼峰命名。`underscoreToCamelCase`方法则负责将下划线分隔的字符...

    测试mybatis里foreach用法

    在MyBatis中,`&lt;foreach&gt;`标签是一个非常重要的元素,它主要用于动态SQL语句的构建,尤其是在处理集合数据类型如List、Array、Map时。`&lt;foreach&gt;`标签的使用可以极大地提高代码的可读性和可维护性,避免了传统的字符...

    MyBatis的resultMap详解

    例如,在上面的示例代码中,我们定义了一个 Blog 对象,其中包含 id、title、content、owner 等属性,以及一个 comments 属性,该属性是一个 List&lt;Comment&gt; 类型的对象。在 MyBatis 的配置文件 mybatis_config.xml ...

    Mybatis参数传递1

    如果需要更复杂的查询条件,可以将参数封装到一个对象中,比如`MessageQuery`类,然后通过对象的属性来作为查询条件。这时,`parameterType`应设置为对象的全限定类名。例如: ```xml &lt;select id="queryMessageList1...

    Mybatis框架 mapper.xml文件中parameterType传递参数常用的几种方式.pdf

    在Mybatis框架中,mapper.xml文件是定义SQL语句、映射规则以及参数传递方式的重要组成部分。正确地使用parameterType传递参数对于开发高质量的应用程序至关重要。以下是几种常用的parameterType参数传递方式以及#和$...

    深入了解MyBatis参数

    MyBatis作为一个流行的持久层框架,对参数的处理和使用是非常重要的。本文将深入了解MyBatis参数,了解参数处理过程,参数传递方式,参数类型等知识点。 参数处理过程 ---------------- 在MyBatis中,参数处理是...

    springmybatis

    请注意,这里面有一个方法名 selectUserByID 必须与 User.xml 里面配置的 select 的id 对应(&lt;select id="selectUserByID") 重写测试代码 程序代码 程序代码 public static void main(String[] args) { ...

    mybatis参数解说

    在这个例子中,`collection="list"`表示传入的参数是一个列表,`item`和`index`分别表示列表中的每个元素和当前元素的索引。通过这种方式,可以实现动态SQL的构建。 #### 六、总结 本文详细介绍了MyBatis中不同...

    MyBatis调用存储过程

    在MyBatis的映射文件(mapper.xml)中,我们需要为存储过程创建一个`&lt;select&gt;`标签,但与通常的查询不同,这里需要设置`id`(标识符)、`resultMap`(结果映射)以及`statementType="CALLABLE"`,这表明这是一个调用...

    关于 MyBatis 我总结了 10 种通用的写法.docx

    如果传入的是单参数且参数类型是一个List,那么collection属性值为list。如果传入的是单参数且参数类型是一个数组,那么collection属性值为array。如果传入的参数是多个,那么需要将它们封装成一个Map,然后...

    mybatis 多层级collection嵌套.docx

    在MyBatis的映射文件中,我们需要定义一个`resultMap`来映射`Car`对象,并使用`&lt;collection&gt;`标签来处理`light`属性。例如: ```xml &lt;resultMap id="jxhJSZBH5ListMap" type="Light"&gt; &lt;!-- 这里添加Light对象的...

    mybatis文档

    - `&lt;select&gt;` 元素定义了一个查询 SQL 语句。 - `id` 属性是这个 SQL 语句的唯一标识符。 - `resultType` 指定了返回结果的类型。 ##### 4.2 注解方式示例 ```java public interface UserMapper { @Select(...

    Map接收Mybatis的结果,字段1为Key,字段2为Val

    然而,有时候我们可能希望将查询结果以Map的形式存储,其中特定的字段作为Key,另一个字段作为Value,以便于根据Key快速访问Value。传统的MyBatis默认会将每一行数据的字段名作为Key,字段值作为Value存入Map,但这...

    mybatis基本例子的简单实现

    7. **参数和结果集映射**:MyBatis支持多种参数和结果集的映射方式,包括#{}和${}的使用,以及Map、Pojo对象、自定义结果处理器等。文档中可能会详细解释这些映射的差异和应用场景。 8. **动态SQL**:MyBatis允许在...

    mybatis动态sql之Map参数的讲解

    在Mapper文件中,我们可以定义一个SELECT语句,参数类型为Map: ```xml &lt;select id="findAll" parameterType="Map" resultType="Purchase"&gt; select * from prod_purchase where 1=1 !=''"&gt; and purc_id=#{purc_...

    mybatis foreach标签的使用详解

    MyBatis foreach 标签的使用详解 ...MyBatis foreach 标签是一个非常强大的标签,它可以帮助我们简化 SQL 语句的编写,并提高代码的可读性和可维护性。但是,需要注意 foreach 标签的使用注意事项,以避免出现错误。

    尚硅谷Mybatis视频教程21-30

    4. **resultMap**:resultMap是Mybatis中的一个重要元素,用于自定义结果集的映射规则。视频28和30中,讲师展示了如何使用resultMap进行复杂结果的映射,包括级联属性的封装,以及关联查询的设置。 5. **select语句...

Global site tag (gtag.js) - Google Analytics