java - SQL 实用函数的开源 Java 库?

标签 java sql

我正在寻找一个 SQL 实用程序库,它允许我执行一些操作,例如使用 LIKE 转义前缀搜索的字符串或通过添加术语(支持占位符)以编程方式编写查询的 WHERE 部分。

最佳答案

类似 Quaere 的项目, LIQUidFORM , jaQu , JEQUEL (Java 嵌入式查询语言)都提供了一个流畅的界面来编写 SQL 语句,并且可能正是您正在寻找的。例如,使用 JEQUEL:

public void testParameterExample() {
    final Sql sql = select(ARTICLE.NAME, ARTICLE.ARTICLE_NO)
            .from(ARTICLE)
            .where(ARTICLE.OID.in(named("article_oid"))).toSql();
    assertEquals("select ARTICLE.NAME, ARTICLE.ARTICLE_NO from ARTICLE where ARTICLE.OID in (:article_oid)", sql.toString());

    final Collection<String> articleDesc = sql.executeOn(dataSource)
            .withParams("article_oid", Arrays.asList(10, 11, 12))
            .mapBeans(new BeanRowMapper<ArticleBean, String>() {
                public String mapBean(final ArticleBean bean) {
                    return bean.getArticleNo() + "/" + bean.getName();
                }
            });
    assertEquals(1, articleDesc.size());
    assertEquals("12345/Foobar", articleDesc.iterator().next());
}

更多内容位于 jaQu 的底部网页。

关于java - SQL 实用函数的开源 Java 库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3542966/

上一篇:Java 线程对象

下一篇:Java Servlet 静态类

相关文章:

java - 如何修改我的 setter 方法来更新结果?

java - OAuth 签名验证失败

mysql - 如何从 ORACLE 中的函数中将 1,2,3.... 返回到单独的行中的 N?

sql - MySQL 查询 : Winning Auction Bid

mysql - Grails:如何减少数据库查询

java - getClass().getName() 不返回 fragment 中的类名

java - 如何检查固定线程池的利用率

java - 在 CSS 中访问 Java 类变量

php - SQL 记录集混淆结果

mysql - 有没有办法在使用 SQL 从表中提取列时更改列中的现有数据