在eclipse中怎麼把POJO插入到水晶報表裡面呢?這就是第四篇的所要做的
首先,應該就是要建立一個實體類了。
我這裡用一個OrderItems.java做例子,代碼
package com.JRC.beans;
public class OrderItems ...{
public int id; //對應資料庫表的id
public int quantity; //產品數量,資料庫表所沒有的
public OrderItems(int id, int quantity) ...{
super();
this.id = id;
this.quantity = quantity;
}
/** *//**
* @return id
*/
public int getId() ...{
return id;
}
/** *//**
* @param id 要設定的 id
*/
public void setId(int id) ...{
this.id = id;
}
/** *//**
* @return quantity
*/
public int getQuantity() ...{
return quantity;
}
/** *//**
* @param quantity 要設定的 quantity
*/
public void setQuantity(int quantity) ...{
this.quantity = quantity;
}
}
如果你還沒建好報表,建立一個報表如Report.rpt,並開啟這個報表
在項目資源管理員中,點擊OrderItems.java前面的+ (發不了圖片),可以看到 “綠點 OrderItems”,就是這個了,右擊-》crystal reports-》添加到當前crystal報表。或者你可以直接把“綠點 OrderItems”拉到報表中
這樣OrderItems就在報表的資料中了,在報表資料中再添加一個資料庫表,如products(product_id,product_name,product_price,....,)
如果沒出什麼問題,那Report.rpt報表資料中有了OrderItems表和products表,左鍵按緊OrderItems表的id,把他拉到products表的products_id上,你可以發現他們中間有條線。
這樣OrderItems.id就跟products.products_id關聯起來了。中間的線預設屬性是等於,你也可以改成其他的。
右擊 Report.rpt-》Crystal Reports-》建立查看器JSP—》選擇查看器API代碼插入-》選中 使用POJO填充報表、串連Crystal報表頁面查看器-》確定
一個新的Report-viewer.jsp頁面就出來了。不過現在很不能用,你要稍微改下裡面的一丁點東西才行。
注意:Report-viewer.jsp中用到JRCHelperSample類,這個在(一)中建立的CR項目中有,是非常非常好的工具類,沒事就把它拷到你的項目下吧,有很多地方要用到這個類。這個類在包com.businessobjects.samples裡面
String reportName = ""; //填上你的報表名字
List dataSet = new ArrayList();
dataSet.add(new OrderItems());
dataSet.add(new OrderItems());
dataSet.add(new OrderItems());
dataSet.add(new OrderItems());
dataSet.add(new OrderItems());
你可以用OrderItems的建構函式添加資料集,你可以用到很多方法來添加dataSet資料集的,只要添加的是準確有效OrderItems實體物件就行了
注意要把裡面的/* */這些去掉
啟動tomcat,運行Report-viewer.jsp吧