Jav ORM框架:Darks ORM

jopen 7年前

Darks ORM框架是多年前开发的一个Java web ORM框架,现在整理更新后发布。Darks ORM框架综合了hibernate及mybatis的特点,同时也加入了很多新元素。它可以像hibernate一样通过简单易用的API接口进行 CRUD数据库操作,也可以像mybatis一样通过XML分离进行高效可配的操作;同时它可以混合两种调用方式,简单普遍的操作采用API,复杂的操作采用XML映射,集各家之所长。并且它可以在XML映射时通过python/JAVA/Javascript进行面向切面的动态处理。

主要特性:

  • 支持通过session直接调用CRUD API方法(对象映射方法以及JDBC方法)。

  • 采用注解方式配置数据模型实体。

  • 支持链式数据源。如果主数据源出现异常,会启用子节点数据源,以此类推。

  • 支持一对一、一对多、多对一注解方式的关联查询。

  • 支持在实体模型类方法上配置query注解。可直接调用实体方法进行相关查询。

  • 框架全部采用懒加载机制。

  • 支持单对象查询、分页查询、集合查询、级联查询。

  • 默认集成BoneCP数据连接池框架。

  • 支持Spring集成配置。配置简单易用。

  • 支持XML映射的SQL mapper。支持DML及DDL配置。

  • SQL mapper支持if/elseif/else/foreach/where/set/trim标签的相互嵌套。

  • 支持Python/Javascript/Java脚本对SQL mapper进行面向切面的开发。

  • 默认集成Ehcache缓存框架。

示例代码:

List users = session.queryList(User.class, "select * from users where name = ?", "darks");  Page page = session.queryPageList(User.class, "select * from users", page, pageSize);  session.save(new User(....));  session.update(user);  session.delete(User.class, userId);  session.delete(user);  session.executeQuery(....);

项目主页:http://www.open-open.com/lib/view/home/1410483588851