В этой главе объясняется, как вы можете читать простые данные из таблицы базы данных, а затем использовать JFreeChart для создания диаграммы по вашему выбору.
Бизнес-данные
Предположим, у нас есть следующая таблица MySQL mobile_tbl (mobile_brand VARCHAR (100) NOT NULL, unit_sale INT NO NULL);
Считайте, что эта таблица имеет следующие записи —
Мобильные бренды | Единица продаж |
---|---|
Айфон 5с | 20 |
Samsung Grand | 20 |
MotoG | 40 |
Нокиа Люмия | 10 |
Генерация диаграммы с использованием базы данных
Ниже приведен код для создания круговой диаграммы на основе информации, представленной в таблице mobile_tbl, доступной в test_db в базе данных MySQL. Исходя из ваших требований, вы можете использовать любую другую базу данных.
import java.io.*; import java.sql.*; import org.jfree.chart.ChartUtilities; import org.jfree.chart.ChartFactory; import org.jfree.chart.JFreeChart; import org.jfree.data.general.DefaultPieDataset; public class PieChart_DB { public static void main( String[ ] args )throws Exception { String mobilebrands[] = { "IPhone 5s", "SamSung Grand", "MotoG", "Nokia Lumia" }; /* Create MySQL Database Connection */ Class.forName( "com.mysql.jdbc.Driver" ); Connection connect = DriverManager.getConnection( "jdbc:mysql://localhost:3306/jf_testdb" , "root", "root123"); Statement statement = connect.createStatement( ); ResultSet resultSet = statement.executeQuery("select * from mobile_data" ); DefaultPieDataset dataset = new DefaultPieDataset( ); while( resultSet.next( ) ) { dataset.setValue( resultSet.getString( "mobile_brand" ) , Double.parseDouble( resultSet.getString( "unit_sale" ))); } JFreeChart chart = ChartFactory.createPieChart( "Mobile Sales", // chart title dataset, // data true, // include legend true, false ); int width = 560; /* Width of the image */ int height = 370; /* Height of the image */ File pieChart = new File( "Pie_Chart.jpeg" ); ChartUtilities.saveChartAsJPEG( pieChart , chart , width , height ); } }
Давайте сохраним указанный выше Java-код в файле PieChart_DB.java , а затем скомпилируем и запустим его из команды, отображаемой как —
$javac PieChart_DB.java $java PieChart_DB
Если все в порядке, он скомпилируется и запустится для создания файла изображения JPEG с именем Pie_Chart.jpeg, имеющего следующую диаграмму.