1. 程式人生 > >Mybatis內建引數之_parameter和_databaseId

Mybatis內建引數之_parameter和_databaseId

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的別名)。