rockydan - 2015-02-02

Koru project is a small but smart and efficient ORM(Object Relational Mapping) framework focusing on simple and rapid development.

For 'ORM' easily,please download Koru!

It supports most of popular databases like MYSQL, MS SQLServer,Oracle and so on.

It supports all kinds of cascaded query with easy annotations perfectly! including 'one to one','one to many','many to one' and 'many to many'.

Its lazy-load rules works well on cascade and any table column.

Cached query is available in the Koru,which base on ehcache.

It has many excellent features:
1.small and rapid.
2.easy to learn.
3.minimum configuration.but if necessary,you can configure it flexibly too.
4.including easy file uploading and rapid paged query basing on database dialect.
5.easy to put the web form data to database.
6.supporting all kinds of cascaded query.
7.supporting cached query basing on ehcache.

Koru is very simply,efficient and flexible ORM framework, it is very small even you can call it a "java database tools" -_-!.

for an example,here is the code to select the records from table User:
Model m=new Model(User.class);//class "User" is a persistent class corresponding the table "User"
List list=m.where("userId>3").orderBy("userName asc").list();
m.destroy();

When you are going to add a record to a table from the submited form in a web project,the following code is an example:
User user=new User();
user.setUserName('jack');
Model m=new Model(User.class);
m.add(user);
m.destroy();

//if you are developing a simple JSP project,you can use the WebModel to handle a web form data easily:
WebModel wm=new WebModel(User.class);
wm.add();
wm.destroy();

There is no more code!

Koru include a quickly paged class using the database dialect,the following code is an example:
Model m=new Model(User.class);//class "User"
Page p=m.where("userId>3").orderBy(userName asc").page(pageSize,pageNum);
List list=p.getList();
m.destroy();

The transaction in Koru bases on JDBC Transaction.There are three general methods,they are used very simply like:
m.beginTransaction();
m.commit();
m.rollback();

Koru is good at dealing file uploading. You can see more in the proect named 'koru_example_project'.

Koru is so flexible that You even can get a rowset result from a query:
Model m=new Model(User.class);//class "User" is a persistent class corresponding the table "User"
RowSet rs=m.where("userId>3").orderBy("userName asc").select();
m.destroy();

by rockydan(rockydan79@hotmail.com)
1/2/2015
Please contact me with any questions. ^_^.

 

Last edit: rockydan 2019-04-02