JDBI 介绍
jdbi 提供一个 Java 简单操作接口, 它不是一个抽象层而是一个类库是的公共的操作更简单、还有能力去做一些更复杂的操作。
jdbi 是 Java 的 sql 便捷操作库,尝试使用集合,beans 等等来暴露 Java 中的关系型数据库,可以维护相同级别的
JDBC。提供两个不同样式的 APIs:fluent 和 sql object。
Fluent API
// using in-memory H2 database DataSource ds = JdbcConnectionPool.create("jdbc:h2:mem:test", "username", "password"); DBI dbi = new DBI(ds); Handle h = dbi.open(); h.execute("create table something (id int primary key, name varchar(100))"); h.execute("insert into something (id, name) values (?, ?)", 1, "Brian"); String name = h.createquery("select name from something where id = :id") .bind("id", 1) .map(StringMapper.FirsT) .first(); assertthat(name, equalTo("Brian")); h.close();
sql Object API
public interface MyDAO { @sqlUpdate("create table something (id int primary key, name varchar(100))") void createSomethingTable(); @sqlUpdate("insert into something (id, name) values (:id, :name)") void insert(@Bind("id") int id, @Bind("name") String name); @sqlQuery("select name from something where id = :id") String findNameById(@Bind("id") int id); /** * close with no args is used to close the connection */ void close(); }
Maven:
<dependency> <groupId>org.jdbi</groupId> <artifactId>jdbi</artifactId> <version>${jdbi.version}</version> </dependency>
JDBI 官网
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。