Mybatis內建引數之_parameter和_databaseId
阿新 • • 發佈:2019-01-22
Mybatis中提供了兩個常用的內建引數:
_parameter
和_databaseId
當mybatis的核心配置檔案中配置了databaseIdProvider
:
<databaseIdProvider type="DB_VENDOR">
<property name="MySQL" value="mysql"/>
<!--//多個數據庫提供商配置...-->
</databaseIdProvider>
此時mybatis中內建的引數_databaseId
中儲存了使用者所指定的對應的資料庫廠商標識。
<select id="selectUsrs" databaseId="mysql" resultType="com.heiketu.pojo.Users">
<if test="_databaseId == 'mysql'">
select * from usrs where id = 2
</if>
</select>
mybatis的另一個內建引數_parameter
儲存了對應傳入的物件:
<insert id="insertData" parameterType="com.heiketu.pojo.Users">
insert into usrs values(
null,
<if test="_parameter != null">
#{_parameter.name},
</if>
#{_parameter.age},
#{_parameter.address},
#{_parameter.companyId}
)
</insert>
此時,_parameter
引數儲存了com.heiketu.pojo.Users
這個物件。所以可以通過OGNL表示式從_parameter
Users
的對應屬性值(也就是把_parameter
看作了users
的別名)。