为了账号安全,请及时绑定邮箱和手机立即绑定

为什么不写parameterType也可以运行成功

 

为什么不写parameterType也可以运行成功?写别的类型可不会报错照常执行

command.xml:
  <select id="queryCommandListByPage" resultMap="CommandResult" >
      select <include refid="columns"/> from command a left join command_content b
    on a.id=b.command_id
      <where>
          <if test="command.name != null and !&quot;&quot;.equals(command.name.trim())">
            and a.name=#{command.name}
        </if>
        <if test="command.description != null and !&quot;&quot;.equals(command.description.trim())">
            and a.description like '%' #{command.description} '%'
        </if>
      </where>
      <if test="flag==1">
        group by aid
    </if>
      order by id
  </select>

  <sql  id="columns">
      a.id aid,a.name,a.description,b.content,b.id,b.command_id
  </sql>

接口:

/**
     * 拦截器实现分页
     */
    public List<command> queryCommandListByPage(Map<String,Object>parameter);

正在回答

1 回答

我自己测试了一下,用Mapper接口写的不用写类型是可以的,我没看过具体源码,但估计和老师说的差不多,动态代理应该知道你传入了什么参数,如果直接用原始的session.update("namespase.query") 会报如下异常!

http://img1.sycdn.imooc.com//5906e1d50001e44715910307.jpg

0 回复 有任何疑惑可以回复我~
#1

younghu

不好意思!不写好像还是没有关系!!!!!我上面的回复怎么删!!!!!!(尴尬!!!!)
2017-05-01 回复 有任何疑惑可以回复我~
#2

慕粉3796571 回复 younghu

你还是说没有关系 其实有关系
2017-06-25 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

为什么不写parameterType也可以运行成功

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信