2个不稳定版本
0.1.0 | 2023年8月28日 |
---|---|
0.0.0 | 2023年8月21日 |
#2126 in 数据库接口
49KB
1K SLoC
jdbc-rs
中文 | 英语
Rust对Java Jdbc的绑定。
如今,许多数据库没有官方对Rust的支持,因此许多数据库无法使用Rust连接。然而,大多数数据库官方提供了Java版本的JDBC驱动程序,这些驱动程序非常稳定。
使用此库,您可以使用Java的JDBC连接到任何类型的数据库。
Rust没有官方的数据库驱动抽象,最广泛使用的非官方crate是Sqlx。此库的最终目的是提供Sqlx的实现,以暂时支持Sqlx不支持的数据库。
英文文档使用Google翻译.
入门
介绍Rust依赖
Cargo.toml
[dependencies]
jdbc = "0.1.0"
下载Java依赖
1、从网络下载jar文件。
您可以从MVN仓库或其他方式下载jar文件,并将其放在项目的libs
目录中。
2、使用Maven
在项目根目录中创建一个新的pom.xml
文件,您可以从项目根目录复制此文件。
执行mvn命令将依赖项复制到目标目录。或者从本项目复制build.rs
,请自行修改目标目录。
mvn dependency:copy-dependencies -DoutputDirectory=./libs
示例
let datasource = jdbc::Builder::new()
.jdbc_url("jdbc:sqlite::memory:")
.build()
.expect("Failed to initialize data source.");
let conn = datasource.get_connection()?;
let statement = conn
.prepare_statement("select username,age from user where id=?")?
.set_int(1, 1000)?;
let result = statement.execute_query()?;
while result.next()? {
let username = result.get_string(1)?;
let age = result.get_int(1)?;
println!("user:{:?} age:{:?}", username, age);
}
支持类型
- char
- byte
- short
- int
- long
- float
- double
- boolean
- String
- Date
- Object
- Blob
- Clob
- byte[]
- BigDecimal
- AsciiStream
- BinaryStream
- CharacterStream
依赖
~2–14MB
~121K SLoC