How to compare strings in mybatis 3 with if statem

2019-06-16 16:40发布

问题:

In myBatis 3 how do you compare a string when using dynamic sql?

With iBatis previously you could do the following:

        <isEqual property="sortBy" compareValue="portfolio_id">order by p.portfolio_id</isEqual>

Now with myBatis can you do the following:

        <if test="sortBy.equals('facility_id')">
          order by pd.facility_id
        </if>

sortBy is a property in the parameter map and "facility_id" is the value

I'm a little bit confused as it was straight forward in ibatis.

回答1:

All you have to do is

<if test="sortBy == 'facility_id' ">
    order by pd.facility_id
</if>