_parameter:代表整个参数
public List<Employee> getEmp(Employee employee);
<select id="" result="">
<if test="_databaseId='mysql'">
select * from tbl_employee
<if test="_parameter!=null">
where last_name=#{_parameter.lastName}
</if>
</if>
</select>
上面的意思是如果传入的参数不是空,则根据last_name进行查询,此时的_parameter是一个Employee对象。
_databaseId:如果在mybatis配置文件中配置了databaseIdProvider标签,_databaseid就代表当前数据库的别名。
<databaseIdProvider type="DB_VENDER">
<property name="MySql" VALUE="mysql"/>
<property name="Oracle" VALUE="oracle"/>
<property name="SQL Server" VALUE="sqlserver"/>
</databaseIdProvider>
使用时可以这么使用:
<select id="" result="">
<if test="_databaseId='mysql'">
select * from tbl_employee
</if>
<if test="_databaseId='oracle'">
select * from employee
</if>
</select>