JfreeChart로 데이터를 시각화 해보자.Backend/jdbc2018. 8. 22. 17:12
Table of Contents
반응형
package JDBC_Example2;import java.sql.Connection;import java.sql.DriverManager;import java.sql.PreparedStatement;import java.sql.ResultSet;import org.jfree.chart.ChartFactory;import org.jfree.chart.ChartPanel;import org.jfree.chart.JFreeChart;import org.jfree.chart.plot.PlotOrientation;import org.jfree.data.category.CategoryDataset;import org.jfree.data.category.DefaultCategoryDataset;import org.jfree.ui.ApplicationFrame;import org.jfree.ui.RefineryUtilities;public class BarChart_AWT extends ApplicationFrame {public BarChart_AWT(String applicationTitle, String chartTitle) {super(applicationTitle);JFreeChart barChart = ChartFactory.createBarChart(chartTitle, "ENAME", "Sal", createDataset(), // 도표의 x축과 y축의 이름 설정PlotOrientation.VERTICAL, true, true, false);ChartPanel chartPanel = new ChartPanel(barChart);chartPanel.setPreferredSize(new java.awt.Dimension(560, 367)); // 크기설정setContentPane(chartPanel);}private CategoryDataset createDataset() {final DefaultCategoryDataset dataset = new DefaultCategoryDataset();try {String driver = "oracle.jdbc.driver.OracleDriver";String url = "jdbc:oracle:thin:@localhost:1521:orcl";String user = "scott";String pass = "tiger";Connection con = null;Class.forName(driver);con = DriverManager.getConnection(url, user, pass);System.out.println("연결성공");String sql = "SELECT * FROM EMP WHERE sal>0"; // Sal의 값이 존재하는 컬럼만 추출할 것이다.PreparedStatement st = con.prepareStatement(sql); // 전송객체를 생성해 준다.ResultSet rs = st.executeQuery(); // 전송while (rs.next()) {System.out.println("ENAME : " + rs.getString("ENAME"));System.out.println("sal : " + rs.getInt("sal"));dataset.addValue(rs.getInt("sal"),rs.getString("ENAME"), rs.getString("ENAME"));// 도표에 sal의 값을 대입 , 막대그래프 ENAME , 막대그래프의 값 ENAME}} catch (Exception ex) {System.out.println(ex.getMessage());ex.printStackTrace();}return dataset;}public static void main(String[] args) {BarChart_AWT chart = new BarChart_AWT("Sal", "Who many have Sal?");chart.pack();RefineryUtilities.centerFrameOnScreen(chart);chart.setVisible(true);}}
scott 계정에 존재하는 EMP테이블의 sal컬럼의 값들을 시각화 해 볼것이다.
jfreechart를 통해서 도표를 나타내 보았다.
특정 조건의 값만 SELECT를 통해서 추출하고 , 전송객체의 next 존재한다는 가정하에 while문을 돌린다.
while문 안에서는 dataset.addValue 를 통해서 값을 추출한다.
다음은 결과화면이다.
반응형
'Backend > jdbc' 카테고리의 다른 글
JFreeChart를 사용하기 위한 환경설정 (0) | 2018.08.22 |
---|---|
eclips에서 SQL 데이터 보기 (0) | 2018.08.22 |
eclipse에서 SQL 데이터 수정하기 (0) | 2018.08.22 |
elipse에서 SQL로 데이터 보내기. (0) | 2018.08.22 |
JDBC 하기 위한 사전조건을 해보자. (0) | 2018.08.22 |
@IT grow. :: IT grow.
#IT #먹방 #전자기기 #일상
#개발 #일상