jSqlBox 4.0.6 版更新,Java 数据库 ORM 工具

栏目: 软件资讯 · 发布时间: 4年前

内容简介:jSqlBox是一个Java全功能数据库持久层工具,主页 https://gitee.com/drinkjava2/jsqlbox jSqlBox主要特点是架构优、尺寸小、功能全,基本上所有与数据库操作相关的功能,jSqlBox都已提供。它的主要特点有: 1.内核...

jSqlBox是一个 Java 全功能数据库持久层工具,主页 https://gitee.com/drinkjava2/jsqlbox

jSqlBox主要特点是架构优、尺寸小、功能全,基本上所有与数据库操作相关的功能,jSqlBox都已提供。它的主要特点有:  
1.内核基于DbUtils并与之兼容。 
2.jSqlBox提倡在java里拼写SQL,独创参数内嵌式 SQL 写法, 任意DAO方法甚至ActiveRecord方法都可以混插SQl片段,例如:  
  new Demo().setName(""张三"").insert().putField("name", "李四").update(" and name=", ques("李四"), " and age> ",ques(20));
3.单个jar包,无须引入任何第三方库即可实现声明式事务、分库分表和分布式事务 
4.ActiveRecord实体类可以只声明接口,不占用宝贵的单继承
5.支持80多种数据库方言的DDL生成、分页、函数变换、实体源码生成
6.在低版本Java里也可以存放并利用IDE定位多行SQL文本   
7.学习成本低,实体注解尽量兼容JPA注解,不支持级联、不支持隋性加载 。
jSqlBox的目标是做最好用的数据库持久层工具,正如我喜欢给别的项目找缺点一样,也欢迎大家来找jSqlBox的缺点。

本次更新是最近三次更新的汇总,最新版本为jsqlbox-4.0.6.jre8,有以下内容变更:
1. 从数据库生成Java源码时,char(xx) 类型不再映射成单个Character字符类型, 而是映射成String类型.
2. DB类中增加一个静态iPrepare方法以方便使用。
3. 新增一个SQL工具类,保存了SQL关键字常量,以减少拼写SQL的错误和去除字符引号,如字符" select " 可以用SQL.SELECT代替,例如以下SQL:
  User u=DB.eLoadBySQL(User.class, "select * from user_tb where user_id=", ques(3), " or user_name=", ques("other"));
   如果配合源码自动生成的列名常量,以及静态引入的SQL常量,则可以写成以下支持SQL重构的形式:
  User u=DB.eLoadBySQL(User.class, SELECT_STAR, FROM, User.TABLE_NAME, WHERE, User.ID, EQ, ques(3), OR, User.NAME, EQ, ques("other"));
   这种写法相比与JOOQ之类的SQL工具来说,优点是秒懂、学习负担轻,因为本质上jSqlBox就是在Java里拼接SQL字符串。
4. DbContext和DB类中新增了一个eFindOneBySQL方法,这个方法如果没有发现实体将会返回null, 而不是象eLoadBySQL方法一样抛出异常。
5. StrUtils工具类中增加了一个array方法,用于将数组转换写成("abc", 12, 345)类型的字符串形式。
6. TableModelUtilsOfDb和TableModelUtilsOfJavaSrc中,改成用字符串常量的形式,并有功能调整,
7. 允许使用@Column(name="`xxx`") 的方式使用数据库关键字作为列名,支持反单引号、双引号、中括号三种引用符,视不同的数据库而定。使用数据库关键字作为列名这种做法不推荐,通常只用于旧项目改造,新项目强烈不建议使用关键字作为列名。
8. TypeUtils中更正了实体不支持基本数据类型如int、short等类型的bug
9. 更正了@IdentityId注解在 MySql 下出错的bug,这是BigInteger类型转换有bug造成的
10. 更正了@Enumerated注解的字段应该允许为null

以上更新内容感谢mr.fire同学提交pr和weishengbin同学提交issue!


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

ACM国际大学生程序设计竞赛题解

ACM国际大学生程序设计竞赛题解

赵端阳//袁鹤 / 电子工业 / 2010-7 / 39.00元

随着各大专院校参加ACM/ICPC热情的高涨,迫切需要有关介绍ACM国际大学生程序设计竞赛题解的书籍。《ACM国际大学生程序设计竞赛题解(2)》根据浙江大学在线题库的部分题目,经过分类、筛选、汇编,并进行了解答(个别特别简单或者特别复杂的题目未选择),比较详细地分析和深入浅出地讲解了解题的方法和用到的算法。题目的类型包括基础编程、模拟、字符串处理、搜索、动态规划、回溯、图论、几何和数学题。 ......一起来看看 《ACM国际大学生程序设计竞赛题解》 这本书的介绍吧!

在线进制转换器
在线进制转换器

各进制数互转换器

HTML 编码/解码
HTML 编码/解码

HTML 编码/解码

XML 在线格式化
XML 在线格式化

在线 XML 格式化压缩工具