xml中根据传入值动态设置查询表的表名
需要使用 <![CDATA[ ${databaseTableName} ]]> 或 ${databaseTableName}
包含特殊字符可使用前者
直接使用 #{databaseTableName} 会导致程序报错
Caused by: com.microsoft.sqlserver.jdbc.SQLServerException: 必须声明表变量 "@P0"。
<select id="queryReportDataList" parameterType="Entity" resultMap="EntityResult">
SELECT
id,
filePath
FROM <![CDATA[ ${databaseTableName} ]]>
<where>
<if test="applicationName != null and applicationName != ''"> and applicationName like concat('%', #{applicationName}, '%')</if>
<if test="startDate != null and startDate != ''">and applicationDate >= #{startDate}</if>
<if test="endDate != null and endDate != ''">and applicationDate <= #{endDate}</if>
</where>
</select>
Leslie Lee 随笔