FastSQL一个基于spring-jdbc 的简单 ORM 框架,它支持 sql 构建、sql 执行、命名参数绑定、查询结果自动映射和通用 DAO。结合了 Hibernate/JPA 快速开发和 Mybatis 高效执行的优点。
FastSQL 可以完全满足你控制欲,可以用 Java 代码清晰又方便地写出 sql 语句并执行。
FastSQL已发布到maven中央仓库。
如果使用 Maven 来构建项目,则需将下面的 dependency 代码置于 pom.xml 文件中:
<dependency> <groupId>top.fastsql</groupId> <artifactId>fastsql</artifactId> <version>1.1.1</version> </dependency>
如果使用 Gradle 来构建项目,则需将下面的代码置于 build.gradle 文件的 dependencies 代码块中:
compile 'top.fastsql:fastsql:1.0.0'
你可以直接从 Java 程序构建一个 SQLFactory ,如果使用SQL的执行功能,至少需要设置 DataSource 。
//新建一个DataSource(这里使用了Spring-Jdbc的SimpleDriverDataSource) DataSource dataSource = new SimpleDriverDataSource([传入url,username等]); SQLFactory sqlFactory = new SQLFactory(); sqlFactory.setDataSource(dataSource);
既然有了 SQLFactory ,我们就可以从中获得 SQL 的实例了。SQL类完全包含了面向数据库执行 sql 命令所需的所有方法。 你可以通过 SQL 实例来构建并直接执行 SQL 语句。例如:
SQL sql = sqlFactory.createSQL(); Student student = sql.SELECT("*").FROM("student").WHERE("id=101").queryOne(Student.class);
使用beanParameter方法支持传入一个参数bean
public class StudentDTO{ private String name; private int age; //省略set和get方法 }
StudentDTO dto =new StudentDTO(); dto.setName="小明"; dto.setAge=10; sqlFactory.createSQL().SELECT("*") .FROM("student") .WHERE("name=:name") .AND("age>:age") .beanParameter(dto).queryList(StudVO.class);