Tutorial

static find
Parent parent = find("parent",1);
this will take string "parent" the table name and the next id i.e 1 and return instance of Parent class.

to access fields you have to make a call like......
parent.get("name");
parent.get("address");

There is 1..* relation between parent and child table.
This you dont need to define anywhere in class file.
Both Parent and Child class file are clean.

Child child = find("child", 1);
Parent p=child.belongsTo("parent");

to get the other side i.e all children of parent.
p.listOfAll("child") will return arraylist of all values.

Only thing that you have to write is for *..* as it doesn't makes sense for detecting this kind of relation from metadata.You will have to initialize the relation in constructor.
public Products() {
markMany("customers","through:customers_products");
}

to get arraylist of customers
Products products = find("products",1);
products.hasMany("customers");
usage:->
ArrayList<Customers> cst = products.hasMany("customers");
Customers c1 = cst.get(0);