页面参数传递有关问题

页面参数传递问题
做了一个查找,同样一个方法,查找用户时
==>  Preparing: select count(1) from t_query_log WHERE deptname like '%'||?||'%' 
 ==> Parameters: 0(Integer)
是integer类型的,在debug的时候,参数数据传递无误。
查找用户IP时,可以查找
Preparing: select * from ( select ID,USERNAME,USERNUMBER,DEPTNAME,DEPCODE,QUERYPARAM,QUERYDATE,REMOTEADDR,QUERYTYPE,QUERYRESULT from t_query_log WHERE usernumber like '%'||?||'%' order by querydate desc ) where rownum <= 10 
==> Parameters: z(String)

就是不明白为什么一个传递的是integer,一个传递的是string型的,求大神解答页面参数传递有关问题
------解决思路----------------------
我自己的理解

类型转换 是由TypeHandler接口来控制
每个类型都有默认的TypeHandler来控制

前台传参过来都是 当做String类型

然后在mybatis转 数据库类型的时候
它应该调用了某TypeHandler,能够自动识别 转换
------解决思路----------------------
引用:
Quote: 引用:

 自己 找 mybatis 里面 的具体的sql  看看 sql的 参数  是怎么写的  就知道了

values(#{id,jdbcType=VARCHAR}
,#{username,jdbcType=VARCHAR},#{usernumber,jdbcType=VARCHAR}
,#{deptname,jdbcType=VARCHAR},#{depcode,jdbcType=VARCHAR}
,#{queryparam,jdbcType=VARCHAR},#{querydate,jdbcType=TIMESTAMP}
,#{remoteAddr,jdbcType=VARCHAR},#{queryType,jdbcType=NUMERIC}
,#{queryResult,jdbcType=NUMERIC})
<if test="usernumber !=null and usernumber !=''">
usernumber like '%'
------解决思路----------------------
#{usernumber}
------解决思路----------------------
'%'
</if>
<if test="deptname !=null and deptname !=''">
and deptname LIKE CONCAT(CONCAT('%', #{deptname}), '%')
</if>

实体类里也都是设置的String。。。

usernumber like '%'
------解决思路----------------------
#{usernumber}
------解决思路----------------------
'%'
用#号 标示 里面是数字, 用$  标示是 字符串

------解决思路----------------------
mybatis我一般这么写like
select count(1) from t_query_log WHERE deptname like '%${value}%'
------解决思路----------------------
public HSSFWorkbook readerFromExcel(String path){  
  POIFSFileSystem fs = null; 
  HSSFWorkbook workbook = null; 
  File file = new File(path); 
   
  if(file.exists()){ 
  FileInputStream fin; 
  try { 
   fin = new FileInputStream(file); 
   fs = new POIFSFileSystem(fin); 
   workbook = new HSSFWorkbook(fs); 
  } catch (FileNotFoundException e) { 
   // TODO Auto-generated catch block 
   e.printStackTrace(); 
  } catch (IOException e) { 
   // TODO Auto-generated catch block 
   e.printStackTrace(); 
  } 
   
  return workbook;
  }
  return null;
 }