转载

BeetlSQL 2.11.6 发布,Java Dao 工具

BeetlSQL 2.11.6 发布增加了一个新特性,参考MyBatis,提供了SqlProvider 特性

@SqlProvider(provider = UserSqlProvider.class)
    User selectAll1( Integer id);

    @SqlProvider(provider = UserSqlProvider.class)
    @Sql()
    User selectAll2( Integer id);

    @SqlProvider(provider = UserSqlProvider.class,method="delete2")
    @Sql()
    int deleteUser(Integer id);

Provider类提供了如何生成sql语句,支持直接生成jdbc sql,也支持生成sql模板语句

public class UserSqlProvider {

    public String selectAll1(Integer id){
        StringBuilder sql = new StringBuilder("SELECT * FROM `user` WHERE 2 = 2 ");
        if (id!= null){
            sql.append("AND id = #id#");
        }
        return sql.toString();
    }

    public SQLReady selectAll2(Integer id){
        StringBuilder sql = new StringBuilder("SELECT * FROM `user` WHERE 2 = 2 ");
        if (id!= null){
            sql.append("AND id = ?");
        }
        SQLReady  sqlReady = new SQLReady(sql.toString(),new Object[]{id});
        return sqlReady;
    }
    ......
}

Maven

<dependency>
    <groupId>com.ibeetl</groupId>
    <artifactId>beetlsql</artifactId>
    <version>2.11.6</version>
</dependency>

BeetSql是一个全功能DAO工具, 同时具有Hibernate 优点 & Mybatis优点功能,适用于承认以SQL为中心,同时又需求工具能自动能生成大量常用的SQL的应用。

  • 无需注解,自动生成大量内置SQL,轻易完成增删改查功能

  • 数据模型支持Pojo,也支持Map/List这种快速模型,也支持混合模型

  • SQL 以更简洁的方式,Markdown方式集中管理,同时方便程序开发和数据库SQL调试。

  • SQL 模板基于Beetl实现,更容易写和调试,以及扩展

  • 简单支持关系映射而不引入复杂的OR Mapping概念和技术。

  • 具备Interceptor功能,可以调试,性能诊断SQL,以及扩展其他功能

  • 内置支持主从数据库,通过扩展,可以支持更复杂的分库分表逻辑

  • 支持跨数据库平台,开发者所需工作减少到最小

原文  https://www.oschina.net/news/106505/beetlsql-2-11-6-released
正文到此结束
Loading...