Я хотел бы поместить фрагменты sql, используемые несколькими моими XML-файлами SQL Map, в отдельный файл.На данный момент элементы <sql>
с этими фрагментами находятся в одном из картографов вместе с другими элементами, такими как <select>
, что затрудняет их поиск.
Могу ли я иметь картограф, который определяет только несколько <sql>
элементы и не используется для генерации реализации интерфейса?Каково будет правильное пространство имен этого преобразователя?
Это файл карты SQL с фрагментами:
<mapper namespace="com.company.project.dao.someDao">
<sql id="whereDate">
WHERE date(`time`) BETWEEN #{startDate} AND #{endDate}
</sql>
<sql id="someOtherSqlFragment">
...
</sql>
<select id="getSomeData"
resultType="SomeClass"
parameterType="DateParam" >
SELECT some_column, another_column
</select>
FROM some_table
<include refid="whereDate"/>
<include refid="otherSqlFragment"/>
</select>
</mapper>
Я бы хотел разделить элементы следующим образом:
ПервыйФайл карты Sql:
<mapper namespace="com.company.project.dao.???">
<sql id="whereDate">
WHERE date(`time`) BETWEEN #{startDate} AND #{endDate}
</sql>
<sql id="someOtherSqlFragment">
...
</sql>
</mapper>
Второй файл карты Sql:
<mapper namespace="com.company.project.dao.someDao">
<select id="getSomeData"
resultType="SomeClass"
parameterType="DateParam" >
SELECT some_column, another_column
</select>
FROM some_table
<include refid="whereDate"/>
<include refid="otherSqlFragment"/>
</select>
</mapper>