Wing4j family - Wing4j ORM 系列组件


Apache
跨平台
Java

软件简介

使用Java的小伙伴们,被JDBC的SQL语句组装折磨了很久,出现了ORM,例如Hibernate和MyBatis为代表的两大流派。

Hibernate这个流派还是不错的,但是设计这个的小伙子可能没有做过复杂的金融项目,所以觉得全对象映射用起来很方便。但是我们更多的是成百上千行的复杂业务场景,所以更多行业里选择MyBatis。因为我们能够控制SQL的编写,但是也有她不好的地方,那就是单表操作需要自己写,要不就是
MyBatis code generator生成大量的不能改的自动代码。

你也许会说难道就没有一种既有Hibernate那样好用的方式,又能使用MyBatis的手工SQL编写,那么告诉你,Wing4j ORM组件就是为此而生的。

关于JPA

全称Java Persistence API,通过JDK
5.0注解或XML描述对象-关系表的映射关系,并将运行期的实体对象持久化到数据库中。起源Sun引入新的JPA ORM规范出于两个原因:其一,简化现有Java
EE和Java SE应用开发工作;其二,Sun希望整合ORM技术,实现天下归一。

所以现在存在大量的JPA编写的数据库访问对象,那么Wing4j ORM就要支持JPA,将JPA带到MyBatis的世界来。

wing4j家族

  1. wing4j common

  2. wing4j orm

  3. wing4j test

  4. wing4j toolkit

wing4j common

提供开发过程中的公共程序,日志跟踪模块,序号服务生成服务。

wing4j orm

目前基于MyBatis深度开发,完成单表的操作的自动生成,完全告别mybatis code generator方式,不再维护冗余的自动生成代码;

  1. 基于注解方式申明表结构,支持JPA注解和Wing4j注解两种方式,JPA方式用于移植老旧的Hibernate程序;

  2. 实现完整的物理分页功能,拥有简单易用;

  3. 支持单元测试时开发数据源,可以进行单机免数据库方式和MySQL数据源方式,详细见wing4j test。

wing4j test

为TDD而生的测试开发支持,提供完整的数据库支持

  1. 自动创建表结构,无论多少次运行单元测试,结果始终如一;

  2. 开发数据可以进行本地数据库方式和MySQL数据源的选择;

  3. 能够根据环境选择数据源,如果进行的是Maven编译,则不能使用MySQL数据源,必须使用本地数据源。

wing4j toolkit

wing4j family的cli方式支持,提供强大的交互界面,完成项目整个过程的支持。