Beruflich Dokumente
Kultur Dokumente
JFreeCharts Example
<dependency>
<groupId>org.jfree</groupId>
<artifactId>jfreechart</artifactId>
<version>1.5.0</version>
</dependency>
IShipmentDao:-
public List<Object[]> getShipmentModeCount();
DaoImpl:-
public List<Object[]> getShipmentModeCount() {
String hql=" select shipMode,count(shipMode) "
+ " from in.nit.model.ShipmentType "
+ " group by shipMode ";
ShipmentTypeUtil.java
package in.nit.util;
import java.io.File;
import java.io.IOException;
import java.util.List;
import org.jfree.chart.ChartFactory;
import org.jfree.chart.ChartUtils;
import org.jfree.chart.JFreeChart;
import org.jfree.data.category.DefaultCategoryDataset;
import org.jfree.data.general.DefaultPieDataset;
import org.springframework.stereotype.Component;
@Component
public class ShipmentTypeUtil {
1|Page
- by RAGHU SIR, NARESH IT, Hyderabad.
/**
* ----------------------------
*/
public void generateBar(String path,List<Object[]> data) {
//1. Create DataSet
DefaultCategoryDataset dataset=new DefaultCategoryDataset();
for(Object[] arr:data) {
//val-index-1(y-axis), key-index-0(x-axis)
dataset.setValue(Double.valueOf(arr[1].toString()),
arr[0].toString(), "");
}
//2. Create JFreeChart using ChartFactory
JFreeChart chart=ChartFactory.createBarChart("ShipmentType
Mode", "Modes", "COUNT", dataset);
//3. Save as Image using ChartUtil
try {
ChartUtils.saveChartAsJPEG(new
File(path+"/resources/images/shipmentB.jpg"), chart, 400, 400);
} catch (IOException e) {
e.printStackTrace();
}
}
2|Page
- by RAGHU SIR, NARESH IT, Hyderabad.
ShipmentTypeCharts.jsp
<html>
<body>
<h3>WELCOME TO SHIPMENT CHARTS</h3>
<img src="../resources/images/shipmentA.jpg" />
<img src="../resources/images/shipmentB.jpg" />
</body>
</html>
ShipmentCntroller:-
@Autowired
private ServletContext context;
@Autowired
private ShipmentTypeUtil util;
@RequestMapping("/charts")
public String showCharts() {
List<Object[]> list=service.getShipmentModeCount();
String path=context.getRealPath("/");
util.generatePie(path, list);
util.generateBar(path, list);
return "ShipmentTypeCharts";
}
FB: https://www.facebook.com/groups/thejavatemple/
3|Page