import java.io.*; import java.text.*; import java.util.*; import javax.servlet.*; import javax.servlet.http.*; import org.jfree.chart.*; import org.jfree.data.category.*; import org.jfree.data.general.DefaultPieDataset; import org.jfree.data.xy.*; import org.jfree.data.*; import org.jfree.chart.renderer.category.*; import org.jfree.chart.plot.*; import java.awt.*;
public class ChartServlet extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { response.setContentType("image/png"); ServletOutputStream sos = response.getOutputStream(); JFreeChart chart = getBarChart(); ChartUtilities.writeChartAsPNG(sos, chart, 400, 400); }
public JFreeChart getBarChart() { DefaultCategoryDataset dataset = new DefaultCategoryDataset(); dataset.setValue(2, "Marks", "Rahul"); dataset.setValue(7, "Marks", "Vinod"); dataset.setValue(4, "Marks", "Deepak"); dataset.setValue(9, "Marks", "Prashant"); dataset.setValue(6, "Marks", "Chandan"); JFreeChart chart = ChartFactory.createBarChart ( "BarChart using JFreeChart","Student", "Marks", dataset, PlotOrientation.VERTICAL, false,true, false); chart.setBackgroundPaint(Color.yellow); chart.getTitle().setPaint(Color.blue); CategoryPlot p = chart.getCategoryPlot(); p.setRangeGridlinePaint(Color.red); return chart; } }
web.xml
<servlet> <servlet-name>ChartServlet</servlet-name> <servlet-class>ChartServlet</servlet-class> </servlet>
<servlet-mapping> <servlet-name>ChartServlet</servlet-name> <url-pattern>/ChartServlet</url-pattern> </servlet-mapping> </web-app>
chartviewer.html
<html> <head><title>JFreeChart with JSP example</title></head> <body> <center> HTML에서 ChartServlet을 사용하는 예제 <hr width="50%"> <img src="/ChartServlet"> </center> </body> </html> | |