aSQLite+ 介绍
asqlite+ 是一个小巧的数据库工具包,正如其名字的意思,定位于为Android
sqlite数据库添加一些实用的功能。提供相当多便利的方法帮助开发人员拼接和执行增删改查的sql语句。
Android的核心类库也提供了一些生成sql语句,执行sql操作的工具类,但基本上都不太实用,体现在方法的签名众多,调用后仍然到开发者做游标关闭或数据库关闭等非业务逻辑的操作。
SELECT product_id, product_name FROM Products WHERE price >= 10 ORDER BY price DESC LIMIT 10
如果使用Android sqlite类库来实现,大致写法如下:
String sql = android.database.sqlite.sqliteQueryBuilder.buildQueryString(false, "Products", new String[]{"product_id", "product_name"}, "price >= 10", null, null, "price DESC", "10");
当然,还有ORM或直接用”+”操作符连接各个子句的字符串拼接方法。个人认为,在中小型的Android应用中使用ORM纯属杀鸡用牛刀,里面的反射操作也会对主线程产生性能影响。至于传统的用”+”拼接字符串,更是增大开发与维护的成本。那,以上的sql如果使用asqlite+将会是如何做?
Statement statement = QueryStatement.produce("product_id", "product_name") .from("Products").where("price").egt(10).orderBy("price").desc().limit(10); String sql = statement.toString();
asqlite+通过将每个sql关键字或子句映射为方法,基本覆盖了全部的语法,实现sql的简易拼接,使代码更清晰易懂,便于维护,大大简化了sql的构造。开发者可以通过github上的众多示例查看其完善的功能。
另外,asqlite+实现了一个名为DBOverseer.java的类,用于执行生成的sql语句,使得开发者可以用两三行以内的代码实现提取整数、字符串、列表、分类列表、反射实例,执行插入、更新,批量操作。
项目内提供详细的代码注释,外加覆盖所有功能的测试用例,还有Maven及jar包等不同的集成方式可供选择。欢迎开发者试用并提供测试意见。
aSQLite+ 官网
https://github.com/vince-styling/aSQLitePlus-android
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。