_parameter:代表整個參數
- 單個參數:就是這個參數
- 多個參數:參數會被封裝成一個Map
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>