日期:2014-05-16  浏览次数:20606 次

mongoDB的jdbc driver,支持以sql形式访问mongodb
支持以sql形式访问mongodb,在mongo-jdbc基础上改写,依赖jsqlparser。适合习惯了sql的懒人们。
功能特性支持绑定变量,字段选择,语法包括大于,小于,between,in,is null,count(),distinct,and,or,括号,limit,order by。
由于mongodb与关系型数据库还是存在较大差异,某些sql语法没有支持,mongodb也有一些查询语法是sql没有的就没有实现。
性能上做了简单测试,在我本机跑1000次下来,大概平均每次查询的速度比直接调用慢0.1ms,在可以接受的范围内。
语法与jdbc基本相同:
Class.forName("com.mongodb.jdbc.MongoDriver");

Connection c = DriverManager
.getConnection("mongodb://192.168.44.129/yangtest");
PreparedStatement st = (c.prepareStatement("select * from blogposts where num > ? and tags=?");
st.setInt(1,1);
st.setString(2,"fun");
ResultSet res = st.executeQuery();
while (res.next()) {
System.out.println(res.getString("num"));
}