在java中,我们是否有一个开源来从xml文件生成sql?例如,最简单的情况是:
<query>
<select>id</select>
<from>student</from>
<equal><column>name</column><val>john</val></equal>
<equal><column>age</column><val>23</val></equal>
<equal><column>registerDate</column><val>03/04/1990</val></equal>
</query>
然后它将生成一个sql:
select id
from student
where name = 'john'
and age = 23
and registerDate = '03/04/1990'
当然,这是最简单的情况,当我们介于加入之间时,它会更复杂。那么我们有一个开源来处理这个吗?我不想像hibernate一样使用ORM,因为它太过分了。
感谢。
答案 0 :(得分:0)
您是否必须使用此XML格式?它是以某种方式内部定义的吗?
如果您关于XML的目标纯粹是让动态查询更容易创建,那么您可以尝试MyBatis。它使用XML定义文件将SQL查询组合在一起,并允许您根据参数动态更改查询,而无需使用字符串连接组装SQL查询。您不会将每个元素定义为XML标记,而只是可以更改的部分元素。有关更多信息和代码示例,请查看MyBatis User Guide。以下是一个简单的动态查询:
<select id=”findActiveBlogWithTitleLike” parameterType=”Blog” resultType=”Blog”>
SELECT * FROM BLOG
WHERE state = ‘ACTIVE’
<if test=”title != null”>
AND title like #{title}
</if>
</select>
这只是为了让你一瞥它会是什么样子。有很多可能性和标签可以帮助您构建您可能需要的任何查询,因此我建议您花一些时间阅读用户指南以完全理解框架功能。