Ujorm1.22发布Java的轻量级ORM框架

Ujorm 1.22 发布,改进内容:

  • The UjoProperty interface extends the CriterionMaker now for a simpler Criterion building.
  • A new annotation parameter called converter can be assigned for a special reading data from/to ResultSet.
  • A new method UjoComparator.sort() is implemented, as well as a better type safe using Java generics.
  • Solid database names of foreign columns name constraints are implemented.
  • The right parameter of Criterion can be an indirect property.
  • The default implementation toString() of the AbstractUjo object is improved

Ujorm是一个新的开源Java版ORM框架,Ujorm的作 者目标是开发一个足够敏捷的ORM框架作为Java应用的持久层,以适合快速迭代开发的敏捷团队。Ujorm的第一个优势是性能上的优势,从一个简单的 SELECT来时,Ujorm的性能要远远高于同类框架。当然Ujorm还包括有:类型安全的查询参数,更小的性能开销,和最简化的实体解决方案。

[代码] 保存数据

 
 
 
  1. OrmHandler.getInstance().loadDatabase(Database.class);  
  2.  
  3. Order order = new Order();  
  4. order.setDate(new Date());  
  5. order.setDescr("John's order");  
  6.  
  7. Item item1 = new Item();  
  8. item1.setOrder(order);  
  9. item1.setDescr("Yellow table");  
  10.  
  11. Item item2 = new Item();  
  12. item2.setOrder(order);  
  13. item2.setDescr("Green window");  
  14.  
  15. Session session = OrmHandler.getInstance()  
  16.                   .createSession();  
  17. session.save(order);  
  18. session.save(item1);  
  19. session.save(item2);  
  20.  
  21. session.commit();  
  22. session.close(); 

[代码] 查询数据

 
 
 
  1. Criterion cn1, cn2, criterion;  
  2.  
  3. cn1 = Criterion.where( Item.ID, Operator.GE, 1L );  
  4. cn2 = Criterion.where( Item.ORDER.add(Order.DESCR)  
  5.                      , "John's order" ); // Equals to  
  6. criterion = cn1.and(cn2);  
  7.  
  8. Session session = OrmHandler.getInstance()  
  9.                   .createSession();  
  10. Query items = session.createQuery(criterion)  
  11.          .orderBy ( Item.ORDER.add(Order.CREATED)  
  12.                   , Item.ID.descending() );  
  13. System.out.println( "Row count: " + items.getCount());  
  14.  
  15. for (Item item : items) {  
  16.     String descr = item.getDescr();  
  17.     Date created = item.getOrder().getDate();  
  18.     System.out.println( created + " : " + descr );  
  19. }  
  20. session.close(); 

[代码] 排序

 
 
 
  1. OrmHandler hr = OrmHandler.getInstance();  
  2.  
  3. MetaColumn col = (MetaColumn)  
  4.            hr.findColumnModel(Order.DESCR);  
  5.  
  6. StringBuilder msg = new StringBuilder()  
  7.     .append("Length : " + col.getMaxLength() + '\n')  
  8.     .append("NotNull: " + col.isMandatory()  + '\n')  
  9.     .append("PrimKey: " + col.isPrimaryKey() + '\n')  
  10.     .append("DB name: " + col.getFullName()  + '\n')  
  11.     ;  
  12. System.out.println(msg); 

原文链接:http://www.oschina.net/news/25177/ujorm-1-2-2-java-orm-framework

【编辑推荐】

  1. JActor 1.1.0发布 Actor模式的Java实现
  2. 基于Java的XWiki 3.4 发布第一个里程碑版本
  3. OpenXava 4.3.1发布 Java快速Web开发框架
  4. Dzo 3.0发布 基于Java的数据库结构维护工具
  5. Hibernate Core 4.0.1发布 Java持久层框架

新闻标题:Ujorm1.22发布Java的轻量级ORM框架
转载注明:http://www.mswzjz.cn/qtweb/news2/462052.html

攀枝花网站建设、攀枝花网站运维推广公司-贝锐智能,是专注品牌与效果的网络营销公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 贝锐智能