精华内容
下载资源
问答
  • 多个参数判断怎么优化
    千次阅读
    2019-10-23 16:13:52

    当mybatis有多个参数时,mapper.java文件即dao层必须写上@Param注解

    List<AddressBean> listAddressByDate(@Param("startDate")String startDate, @Param("endDate")String endDate);

    然后在xml文件里用where if判断是否为空,注意if的test判断里不要加#{  }

    <select id="listAddressByDate" resultType="cn.zwkj.beans.AddressBean" parameterType="String">
    		select biaozhunmingcheng,hanyuduyin,dzzzcode,dengjishijian,id from t_placecommon
    		<where>
    			<if test="startDate!=null and startDate != '' ">
    				and to_char(dengjishijian,'yyyy-MM-dd') <![CDATA[>=]]> #{startDate}
    			</if>
    			<if test="endDate!=null and endDate != '' ">
    				and to_char(dengjishijian,'yyyy-MM-dd') <![CDATA[<=]]> #{endDate}
    			</if>
    		</where>				 
    </select>

     

    更多相关内容
  • mybatis多个参数 判断非空

    千次阅读 2017-05-03 09:38:21
    只传一个参数判断非空的情况&lt;if test="type!=null and type!=''"&gt; AND type = #{type} &lt;/if&gt; b.传多个参数不判断非空的情况AO层的函数方法 Public User selectUser...
    这个标题放在百度上估计也只能搜到在下的这篇小贴子.其他贴子都是把问题拆开的
    a.只传一个参数判断非空的情况

    1. <if test="type!=null and type!=''">  
    1.     AND type = #{type}  
    1. </if>  
    b.传多个参数不判断非空的情况

    AO层的函数方法 

    Public User selectUser(String name,String area);

    对应的Mapper.xml  

    <select id="selectUser" resultMap="BaseResultMap">
     	select  *  from user_user_t   where user_name = #{0} and user_area=#{1}
    </select>
    这两个方法拿过来一点辙也没有,又不能把它们生生的拼在一块
    终于让小菜发现了第三个方法使用@Param("参数")
    public List<Map> statistics( @Param("startTime")String startTime,@Param("endTime")String endTime,Integer pageIndex,Integer pageSize);
    <select id="statistics"  resultType="java.util.Map">
      SELECT COUNT(*) AS 'total_cnt',SUM(consume_change) AS 'change_cnt',COUNT(DISTINCT(uid)) AS 'user_cnt',DATE_FORMAT(`consume_time`,'%Y-%m-%d') 'data_time'
        FROM kpl_matchs_vote.guess_consume
        WHERE consume_status=0 AND consume_type='bet'
        <if test="startTime != null" >
          AND consume_time >= #{startTime,jdbcType=TIMESTAMP}
        </if>
        <if test="endTime != null" >
          AND #{endTime,jdbcType=TIMESTAMP} >= consume_time
        </if>
        GROUP BY DATE_FORMAT(`consume_time`,'%Y-%m-%d') limit #{2},#{3}
    </select>
    这样子有多参数都可以判断
    这里面用到了 MyBatis 3提供的映射注解.最初设计的时候mybatis是一个XML驱动的框架.MyBatis3构建在强大而全面的java配置API上.这个配置 API 是基于 XML 的 MyBatis 配置的 基础,也是新的基于注解配置的基础。注解提供了一种简单的方式来实现简单映射语句,而 不会引入大量的开销。
    注解非常多可以参考这里(http://www.mybatis.org/mybatis-3/zh/java-api.html)
    我们只看@Param它的目标是注解在参数上,如果你的映射器的方法需要多个参数, 这个注解可以被应用于映射器的方法 参数来给每个参数一个名字。否则,多 参数将会以它们的顺序位置来被命名 (不包括任何 RowBounds 参数) 比如。 #{param1} , #{param2} 等 , 这 是 默 认 的 。 使 用 @Param(“person”),参数应该被命名为 #{person}。

    展开全文
  • if条件中有多个判断条件,代码优化

    万次阅读 2018-05-11 16:26:19
    代码:优化后的代码:

    代码:


    优化后的代码:


    展开全文
  • 是因为在controller层会写很if else 这样代码很冗余,封装一种方法可以判断参数是否为空,判断集合,是否为0,因为现在业务使用需要判断类型不是很,如果多种类型可以考虑新增方法去判断,最好不要在一方法中...

    判断参数是否为空,是因为在controller层会写很多if else 这样代码很冗余,封装一种方法可以判断参数是否为空,判断集合,是否为0,因为现在业务使用需要判断类型不是很多,如果多种类型可以考虑新增方法去判断,最好不要在一个方法中写太多代码,这样不方便阅读,希望帮助到大家。

    /**
    	 * 判断参数是否为空
    	 * 
    	 * @param keys
    	 *              1、代表需要判断是否小于或等于0
    	 *              2、判断集合
    	 * @param strs
    	 *            具体值
    	 * @return
    	 */
    	public static boolean isNotEmptyBatch(String[] keys, Object... strs) {
    		for (int i = 0; i < strs.length; i++) {
    			Object string = strs[i];
    			if (string == null || "".equals(string)) {
    				return false;
    			}
    			if (null != keys[i] ) {
    				if (keys[i].equals("1")) {
    					String strValue = strs[i].toString();
    					if (!isDigit(strValue) || Integer.valueOf(strValue) <= 0) {
    						return false;
    					}
    				}
    				if (keys[i].equals("2")) {
    					List<?> list = (List<?>)strs[i];
    					if (list.size() <=0) {
    						return false;
    					}
    				}
    			}
    		}
    		return true;
    	}
    
    	/**
    	 * 判断是否是数字
    	 * 
    	 * @param str
    	 * @return
    	 */
    	public static boolean isDigit(String str) {
    		if (isNull(str))
    			return false;
    		for (int i = 0, size = str.length(); i < size; i++) {
    			if (!Character.isDigit(str.charAt(i)))
    				return false;
    		}
    		return true;
    	}
    
    	public static boolean isNull(String str) {
    		return (str == null || str.equals("null") || str.trim().length() == 0);
    	}
    
    	public static void main(String[] args) {
    		System.out.println(isNotEmptyBatch(new String[]{"1","2"}, "1",new ArrayList()));
    	}

     

    展开全文
  • 记一次多重if判断优化

    万次阅读 2020-01-22 11:37:41
    那可就完了,这么多个类型你要挨个判断不说,业务逻辑都写在了一个方法里,你不觉得这样耦合太紧了吗?你当然可以在订阅主题的方法里只写判断然后调用相应的方法,但是这么做。。总有点不好吧,如果你觉得没事...
  • 由于v-for 与 v-if 一起使用时有诸多麻烦,所以当需要通过判断显示不同内容时,可使用过滤器。 话不说,上主菜。 首先前台页面接收到该参数: <template> <view class="content" v-if="hasLogin"> ...
  • vue中可以通过 :class=""这样来根据一定的条件来动态添加class,但是有时候需要判断的条件比较,需要动态添加的class也比较,这时候其实也很简单。详细看代码 <template> <div class="app" :class=...
  • 其实,在xml中判断多个参数不为空和null有以下两种方式,具体操作如下: Mybatis中where 标签知道只有在一个以上的if条件有值的情况下才去插入“where”子句,若最后的内容是“and”或“or”开头的,where 标签会...
  • java判断多个参数不为空的公共方法

    千次阅读 2014-09-25 17:02:28
    首先将多个参数放在一个map里面,然后用map传参数,最后写一个boolean方法,循环这个map 代码如下: public boolean checkIsNull(Map, Object> map){ for(Map.Entry, Object> entry : map.entrySet()){ ...
  • if(id == null || id.isEmpty()){ if(type == null){ if(name==null || name.isEmpty()){ //...select..sql... }else { //...select..sql... } }else { if(name==null || name.isEmpty()){ //...select..sql......
  • 效果:Spring Data JPA根据接口方法传入的值是否为空判断是否执行限定查询语句。 情景:最近在做项目的时候遇到一问题,项目有一 停车场表 ParkingLotsEntity,一停车场产品表 FixedValidityTermEntity,现有...
  • 在myBatis 框架中,有时候需要在mapper配置文件中 采用 if判断传入的参数是否为null或者为空? 怎么办呢,不废话直接上干货 共有两种方式:  方式1:  第一步:在DAO接口方法中采用@Param注解声明参数,如  ...
  • C#WinForm判断界面上多个TextBox控件的值是否为空

    千次阅读 热门讨论 2019-04-09 22:25:22
    说明:当WinForm界面上面有多个控件需要判断是否为空,如果用if(){}else,难免有些繁琐。在参考了其他博主的资料以后,我这里也做了一些整理,以TextBox控件示例,如下。 VS打开创建一个WinForm窗体程序 添加...
  • 在前面有一篇文章,我...这看起来没有什么问题,那么如果一个项目真的需要很多个参数化变量去构建,那么我们直接这样写肯定不行,本篇就来讨论如下如何优化这个问题。 1.问题场景 之前的场景是这样,相关文章ht...
  • @RequestBody接收前端传来的多个参数

    万次阅读 2020-07-13 21:39:45
    在使用ajax发送请求时,如果发送的JSON数据是一类中的不同属性,在Controller方法中使用@RequestBody会直接封装进该类中 例如: 前端部分代码 JavaScript 1 <script language="JavaScript"> 2 ...
  • 今天小编就为大家分享一篇Python3 main函数使用sys.argv传入多个参数的实现,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧 在运维过程中,有些时候需要向main函数中传递参数,以方便运维与测试...
  • Shell——判断传入参数的个数

    千次阅读 2021-06-12 00:03:05
    工作中常会用到shell脚本,总结一些常用的简单操作。 1. 判断传入参数的个数 #!/bin/bash # author:geekzw if [ $# -eq 2 ]; then echo "$1 $2" exit else echo "错误" fi 运行结果
  • 第一种:使用where标签 select t.* from 表名 t and t.字段 like '%${传进来的字段}%' ...Mybatis中where 标签知道只有在一以上的if条件有值的情况下才去插入“where”子句,若最后的内容是“and”
  • vue v-if 判断某个元素满足多个条件的写法

    万次阅读 多人点赞 2020-10-10 10:29:29
    v-if判断active满足0的时候写法是:v-if="active === 0" 那如果active同时要满足0,1,2三个值的时候,如果在v-if里用 || 并列写 ...第二种,使用方法,复用性高,适用场景:多个标签都需要用到此判断 标签中:
  • 模型参数优化(一):遗传算法

    万次阅读 多人点赞 2019-06-25 15:57:39
    在使用选定算法进行建模时,设定或得到的参数很可能不是最优或接近最优的,这时需要对参数进行优化以得到更优的预测模型。常用的参数优化方法主要包括交叉验证、网格搜索、遗传算法、粒子群优化、模拟退火,本节介绍...
  • 然后将这一条的相关数据带到下页面中显示,无论点哪一条都是跳到相同的页面结构(下一页面的页面使用的组件是一样的),只是填的数据不一样,这时候就需要实现跳转的时候一起把参数携带过去。 &lt;...
  • /** @ClassName StrUtils * @Description // 判断多个对象是否同时为null(支持空集合判断),或者都不为空,或者混合存在 * @Author WHX **/ public class StrUtils { public static void main(String[] args) { ...
  • vue 项目@change多个参数传值多个事件

    万次阅读 多人点赞 2019-01-16 11:26:38
    多个事件用;分割开来 此时发现changelevel()不执行那么加上()呢 changelevel(val) { console.log(val) =&gt; //undefined } 表示未传参数 输出undefined 那么要传值传谁呢 ...
  • 小程序多个条件判断

    万次阅读 2018-04-10 16:43:00
    小程序的多个条件判断:上代码 &lt;view wx:for="{{myattacheArr}}" wx:key="{{id}}" wx:for-item="AttacheItem" class='call-attache' wx:if="{{AttacheItem....
  • echo "第一个参数为:$1"; echo "第二个参数为:$2"; echo "第三个参数为:$3"; arg1=arg; if [ -n "$1" ] then echo "第一个参数$1" else echo "第一个参数为空" fi 测试: ./test.sh a b c d 结果: ...
  • shell参数判断

    千次阅读 2017-11-13 17:08:03
    对于只判断个参数的 #!/bin/bash if [ ! -n "$1" ] ;then  echo "you have not input a agrs!" else  echo "the args you input is $1" fi 或者 在shell中$1变量表示脚本的第一个参数。所以如果...
  •  用来验证字符串的是否为空等一些判断,那么同时要验证多个String 参数,就需要一个个判断,增加代码 量,且不美观。 所以写了一个简单方法,包了一层,同时也是使用 StringUtils,如下    /** * 检查字符...
  • 1.可传参数与不传参数,在定义中给参数设置默认值 class HandleYmal: """ 获取测试环境的配置 """ def __init__(self,file_path=None): if file_path: self.file_path=file_path else: ...
  • MySQL数据库:参数优化

    千次阅读 2021-03-08 01:31:33
    数据库属于 IO 密集型的应用程序,其...本文先从 MySQL 数据库IO相关缓存参数的角度来介绍可以通过哪些参数进行IO优化: 一、参数说明: 1、query_cache_size / query_cache_type (global): Query cache 主要.

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,714,672
精华内容 685,868
关键字:

多个参数判断怎么优化