mybatis 動態傳入表名,表名作爲參數示例

1,Mybatis 使用xml加載Sql語句,如果表名不確定,需要動態傳入

                                                                                                                                                                 

1.1   需要添加一個參數  statementType="STATEMENT"


1.2 傳遞參數需要使用map,不能使用字符串傳參數。例如下面的查詢,我需要傳入參數 map.put("tableName","table_name"),如果傳遞參數爲字符串是無法解析的;


<select id="selectByTableName" parameterType="map" resultType="map" statementType="STATEMENT">
		<![CDATA[ 
			select * from ${tableName} 
		]]>  
	</select>


statementType 有三種狀態:
 statementType:STATEMENT(非預編譯),PREPARED(預編譯)或CALLABLE中的任意一個,這就告訴 MyBatis 分別使用Statement,PreparedStatement或者CallableStatement。默認:PREPARED。這裏顯然不能使用預編譯,要改成非預編譯。
 

${xxxx}:$將傳入的數據直接顯示生成在sql中,對於字符串數據,需要手動加上引號。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章