<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;
}
}
分享到:
相关推荐
当使用`selectList()`方法时,如果需要同时传递不同类型的参数,可以通过将所有参数封装到一个`Map`对象中来实现。例如: ```java List<String> list_3 = new ArrayList(); Map, Object> map2 = new HashMap, ...
Mybatis是一个优秀的Java持久层框架,它允许开发者将SQL语句直接写在XML配置文件或者Mapper接口中,从而简化了DAO(数据访问对象)层的开发工作。在处理多参数查询时,Mybatis提供了灵活的方式。 1. **Map参数传递*...
当传入的参数是一个List时,`<foreach>`标签的`collection`属性应设置为`list`。例如,以下是一个查询员工的例子,其中`list`参数包含员工ID的列表: ```xml <select id="getEmployeesListParams" resultType=...
在这个例子中,`toCamelCaseMap`方法接收一个Map,并使用Java 8的Stream API来创建一个新的Map,其中的Key已经被`underscoreToCamelCase`方法转换为驼峰命名。`underscoreToCamelCase`方法则负责将下划线分隔的字符...
在MyBatis中,`<foreach>`标签是一个非常重要的元素,它主要用于动态SQL语句的构建,尤其是在处理集合数据类型如List、Array、Map时。`<foreach>`标签的使用可以极大地提高代码的可读性和可维护性,避免了传统的字符...
例如,在上面的示例代码中,我们定义了一个 Blog 对象,其中包含 id、title、content、owner 等属性,以及一个 comments 属性,该属性是一个 List<Comment> 类型的对象。在 MyBatis 的配置文件 mybatis_config.xml ...
如果需要更复杂的查询条件,可以将参数封装到一个对象中,比如`MessageQuery`类,然后通过对象的属性来作为查询条件。这时,`parameterType`应设置为对象的全限定类名。例如: ```xml <select id="queryMessageList1...
在Mybatis框架中,mapper.xml文件是定义SQL语句、映射规则以及参数传递方式的重要组成部分。正确地使用parameterType传递参数对于开发高质量的应用程序至关重要。以下是几种常用的parameterType参数传递方式以及#和$...
MyBatis作为一个流行的持久层框架,对参数的处理和使用是非常重要的。本文将深入了解MyBatis参数,了解参数处理过程,参数传递方式,参数类型等知识点。 参数处理过程 ---------------- 在MyBatis中,参数处理是...
请注意,这里面有一个方法名 selectUserByID 必须与 User.xml 里面配置的 select 的id 对应(<select id="selectUserByID") 重写测试代码 程序代码 程序代码 public static void main(String[] args) { ...
在这个例子中,`collection="list"`表示传入的参数是一个列表,`item`和`index`分别表示列表中的每个元素和当前元素的索引。通过这种方式,可以实现动态SQL的构建。 #### 六、总结 本文详细介绍了MyBatis中不同...
在MyBatis的映射文件(mapper.xml)中,我们需要为存储过程创建一个`<select>`标签,但与通常的查询不同,这里需要设置`id`(标识符)、`resultMap`(结果映射)以及`statementType="CALLABLE"`,这表明这是一个调用...
如果传入的是单参数且参数类型是一个List,那么collection属性值为list。如果传入的是单参数且参数类型是一个数组,那么collection属性值为array。如果传入的参数是多个,那么需要将它们封装成一个Map,然后...
在MyBatis的映射文件中,我们需要定义一个`resultMap`来映射`Car`对象,并使用`<collection>`标签来处理`light`属性。例如: ```xml <resultMap id="jxhJSZBH5ListMap" type="Light"> <!-- 这里添加Light对象的...
- `<select>` 元素定义了一个查询 SQL 语句。 - `id` 属性是这个 SQL 语句的唯一标识符。 - `resultType` 指定了返回结果的类型。 ##### 4.2 注解方式示例 ```java public interface UserMapper { @Select(...
然而,有时候我们可能希望将查询结果以Map的形式存储,其中特定的字段作为Key,另一个字段作为Value,以便于根据Key快速访问Value。传统的MyBatis默认会将每一行数据的字段名作为Key,字段值作为Value存入Map,但这...
7. **参数和结果集映射**:MyBatis支持多种参数和结果集的映射方式,包括#{}和${}的使用,以及Map、Pojo对象、自定义结果处理器等。文档中可能会详细解释这些映射的差异和应用场景。 8. **动态SQL**:MyBatis允许在...
在Mapper文件中,我们可以定义一个SELECT语句,参数类型为Map: ```xml <select id="findAll" parameterType="Map" resultType="Purchase"> select * from prod_purchase where 1=1 !=''"> and purc_id=#{purc_...
MyBatis foreach 标签的使用详解 ...MyBatis foreach 标签是一个非常强大的标签,它可以帮助我们简化 SQL 语句的编写,并提高代码的可读性和可维护性。但是,需要注意 foreach 标签的使用注意事项,以避免出现错误。
4. **resultMap**:resultMap是Mybatis中的一个重要元素,用于自定义结果集的映射规则。视频28和30中,讲师展示了如何使用resultMap进行复杂结果的映射,包括级联属性的封装,以及关联查询的设置。 5. **select语句...