Package org.ujoframework.orm

The ORM support.

See:
          Description

Interface Summary
ExtendedOrmUjo<UJO_IMPL extends Ujo> Extended ORM Ujo.
OrmUjo The OrmUjo is a basic interface of the persistent object in the ORM support.
 

Class Summary
AbstractMetaModel Abstract Metamodel
CriterionDecoder SQL Criterion Decoder.
DbProcedure<UJO extends DbProcedure> Abstract database procedure.
ForeignKey A Unique key of the entity OrmUjo
JdbcStatement JdbcStatement
OrmHandler The basic class for an ORM support.
Query<UJO extends OrmUjo> ORM query.
Session The ORM session.
SqlDialect SQL dialect abstract class.
TypeService A type service for popular Java types and more.
UjoSequencer The default sequence provider.
 

Enum Summary
DbType Supported DbTypes
 

Package org.ujoframework.orm Description

The ORM support.

logo

ORM module of the UJO Framework

am easy to use implementation of the object-relation mapping
Why a new ORM mapping? Some other features:

A sample of use

See how to create database and to how to INSERT an order with two items into database:
  OrmHandler.getInstance().loadDatabase(Database.class);

  Order order = new Order();
  order.setDate(new Date());
  order.setDescr("John's order");

  Item item1 = new Item();
  item1.setOrder(order);
  item1.setDescr("Yellow table");

  Item item2 = new Item();
  item2.setOrder(order);
  item2.setDescr("Green window");

  Session session = OrmHandler.getInstance().getSession();
  session.save(order);
  session.save(item1);
  session.save(item2);

  session.commit();
            
The next source code calls a SELECT by the UJO Criteria:
  Criterion<Order> criter1 = Criterion.newInstance(Order.DESCR, "John's order");
  Criterion<Order> criter2 = Criterion.newInstance(Order.DATE, Operator.LE, new Date());
  Criterion<Order> criterion = criter1.and(criter2);

  Session session = OrmHandler.getInstance().getSession();
  UjoIterator<Order> orders = session.createQuery(criterion).iterate();
  System.out.println("ORDER COUNT: " + orders.count()); // method calls SQL SELECT COUNT(*) in case the iterator can provide first item!

  for (Order order : orders) {
      String descr = order.getDescr();
      System.out.println("ORDER ROW: " + order + " // descr: " + descr);
  }
            
The next source code calls a SELECT by an UJO object relation:
  Session session = OrmHandler.getInstance().getSession();
  Database db = session.getDatabase();
  UjoIterator<Order> orders = db.get(Database.ORDERS);

  for (Order order : orders) {
      String descr = order.getDescr();
      System.out.println("Order: " + order + " // descr: " + descr);

      for (Item item : order.getItems()) {
          Long itemId = item.getId();
          String itemDescr = item.getDescr();
          System.out.println(" Item id: " + itemId + " descr: " + itemDescr);
      }
  }
            

More sources:

License:



Copyright © 2010. All Rights Reserved.