FastSQL 1.2.1 发布,让 JDBC 使用更简单 - 开源中国社区
Float_left Icon_close
FastSQL 1.2.1 发布,让 JDBC 使用更简单
chenjazz 2018年04月07日

FastSQL 1.2.1 发布,让 JDBC 使用更简单

chenjazz chenjazz 发布于2018年04月07日 收藏 24

FastSQL是一个基于spring-jdbc的简单ORM框架,它支持sql构建、sql执行、命名参数绑定、查询结果自动映射、数据库事务和通用DAO。结合了Hibernate/JPA快速开发和Mybatis高效执行的优点。

FastSQL既可以使用在web项目中,也可以使用在非web项目中

FastSQL已发布到maven中央库,使用只需将下面的 dependency 代码置于 pom.xml 文件中:

<dependency>
    <groupId>top.fastsql</groupId>
    <artifactId>fastsql</artifactId>
    <version>1.2.1</version>
</dependency>

简单使用步骤如下:

1.构建全局工厂类SQLFactory--最简单的就是使用单例模式或者静态单例模式 (如果在Spring环境中,利用Spring容器的功能,你完全可以把它设置为一个单例bean)

//新建一个DataSource(这里使用了Spring-Jdbc的SimpleDriverDataSource)
DataSource dataSource = new SimpleDriverDataSource([传入url,username等]);

SQLFactory sqlFactory = new SQLFactory();
sqlFactory.setDataSource(dataSource);

2.从 SQLFactory 中获取 SQL并执行查询方法:SQL类完全包含了面向数据库执行 sql 命令所需的所有方法。SQL 实例是有状态的 ,不是线程安全的,是不能被共享的。

Student student = sqlFactory.createSQL().SELECT("id,name").FROM("student").WHERE("id=101").queryOne(Student.class);

Student类包含的字段与student表列名称相同(或下划线对应驼峰形式)。

插入示例:

sqlFactory.createSQL()
    .INSERT_INTO("sys_users", "id").VALUES(":id")
    .mapItemsParameter("id", 234)
    .update();

当然你也可以直接使用字符串生成sql:

sqlFactory.createSQL()
    .useSql("INSERT INTO users(id,name) VALUES (:id,:name)")
    .mapItemsParameter("id", 1,"name","小明")
    .update();

更多请查看教程:https://github.com/fast-sql/FastSQL

本站文章除注明转载外,均为本站原创或编译。欢迎任何形式的转载,但请务必注明出处,尊重他人劳动共创开源社区。
转载请注明:文章转载自 开源中国社区 [http://www.oschina.net]
本文标题:FastSQL 1.2.1 发布,让 JDBC 使用更简单
分享
评论(15)
最新评论
0
有什么特色呢?感觉sql没有spring jdbcTemplete 中的
SQL好调试
0

引用来自“蓝水晶飞机”的评论

https://my.oschina.net/rocbin/blog/1790951
@chenjazz
哈哈,有些功能是目前有的。其他的多谢啦
0

引用来自“蓝水晶飞机”的评论

https://my.oschina.net/rocbin/blog/1790951
@chenjazz
多谢建议!!!
0

引用来自“linxyruffy”的评论

代码里边加入top216就不正经了
你是怎么看到的
0

引用来自“Flylinran”的评论

请问和jooq比起来怎么样呢
jooq高级特性需要收费
0

引用来自“我是一只鱼_”的评论

https://my.oschina.net/donger11/blog/994435 我有一个类似的
加油
0
使用简单,高效
0
0
mybatas,hibernate,jooq,querydsl都有各自的独有特色。fastsql有什么特色呢。
0
代码里边加入top216就不正经了
0
请问和jooq比起来怎么样呢
0

引用来自“xiaose1205”的评论

命名太长了

引用来自“chenjazz”的评论

?哪个
这还长?!!!!看看spring的源码去,
0

引用来自“xiaose1205”的评论

命名太长了
?哪个
0
命名太长了
顶部