beetlsql 1.0.0 正式发布,此版本更新内容如下: 新增 1 mysql 数据库支持 运行运行sql 3 spring,jfinal 集成 4 新增use 和 join 函数,use 可以重用sql片段和,join函数用于sql的 in语句 5 增加了只用master 库运行和只用slave库运行 的api,sqlManager.useMaster(DBRunner runner),sqlManager.useSlave(DBRunner runner) 修复 1 SQL模板错误提示行数不正确 2 jfinal 事务集成bug修复 3 完善DebugInterceptor,将执行结果包含进debug信息 maven <dependency> <groupId>com.ibeetl</groupId> <artifactId>beetlsql</artifactId> <version>1.0.0</version> </dependency> BeetSql是一个全功能DAO工具, 同时具有Hibernate 优点 & Mybatis优点功能,适用于承认以SQL为中心,同时又需求工具能自动能生成大量常用的SQL的应用。 无需注解,自动生成大量内置SQL,轻易完成增删改查功能 数据模型支持Pojo,也支持Map/List这种快速模型,也支持混合模型 SQL 以更简洁的方式,Markdown方式集中管理,同时方便程序开发和数据库SQL调试。 SQL 模板基于Beetl实现,更容易写和调试,以及扩展 简单支持关系映射而不引入复杂的OR Mapping概念和技术。 具备Interceptor功能,可以调试,性能诊断SQL,以及扩展其他功能 内置支持主从数据库,通过扩展,可以支持更复杂的分库分表逻辑 支持跨数据库平台,开发者所需工作减少到最小 代码例子 // 初始化部分:创建一个简单的ConnectionSource,只有一个master库 ConnectionSource source = ConnectionSourceHelper.simple(driver,url,userName,password); // 采用mysql 习俗 DBStyle mysql = new MysqlStyle(); // sql语句放在classpagth的/sql 目录下 SQLLoader loader = new ClasspathLoader("/sql"); // 数据库命名跟java命名采用驼峰转化 NameConversion nc = new HumpNameConversion(); // 最后,创建一个SQLManager SqlManager sqlManager = new SqlManager(source,mysql,loader); //使用内置的生成的sql 新增用户 User user = new User(); user.setAge(19); user.setName("xiandafu"); sqlManager.insert(user); //使用内置sql查询用户 int id = 1; user = sqlManager.unique(User.class,id); //使用user.md 文件里的select语句,参考下一节 User query = new User(); query.setName("xiandafu"); List<User> list = sqlManager.select("user.select",User.class,query) sql例子(在user.md 文件里) select === select * from user where 1=1 @if(!isEmpty(age)){ and age = #age# @} @if(!isEmpty(name)){ and name = #name# @} beetlsql 1.0.0 正式发布,mybatis 的 beetl 实现下载地址