我已经使用 xml dom 解析成功地将数据插入到 mysql 中,现在我想在我的条形图上显示 mysql 数据,所以请帮助提供正确的代码。
我的数据库有4列,分别是“姓名”、“学院”、“年级”、“自然”
所以我插入了 4 个不同的名字,在 4 个名字中,有 2 个共享同一所大学。每个都有不同的等级,如好坏和中等。等级也是如此,比如一、二、三等。所以现在我需要为此编写条形图。请帮帮我。
这里我做了一个例子。
work[]
andvalues[]
中。JApplet
import java.awt.*;
import javax.swing.JApplet;
public class BarChart extends JApplet
{
private final int n=5;
private String work[];
private int value[];
@Override
public void init()
{
work = new String[n];
value = new int[n];
work[0] ="name";
work[1] = "college";
work[2] = "grade";
work[3] = "nature";
work[4] = "extra";
value[0] = 20;
value[1] = 10;
value[2] = 4;
value[3] = 15;
value[4] = 5;
}
@Override
public void paint(Graphics g)
{
Font font = new Font("Arial",Font.BOLD,15);
g.setFont(font);
for(int i = 0; i < n; i ++)
{
g.setColor(Color.BLUE);
g.drawString(work[i], 20, i * 50 + 30);
g.setColor(Color.RED);
g.fillRect(70, i * 50 + 10, value[i], 40);
g.drawString(String.valueOf(value[i]) + "%", 180, i * 50 + 35);
}
}
}
编辑 :
对于您选择的 stmt。,我去谷歌并输入 -select query msql java
我得到了这个:
+----+------------+-----------+---------------------+----------+------------+
| id | first_name | last_name | date_created | is_admin | num_points |
+----+------------+-----------+---------------------+----------+------------+
| 2 | Fred | Flinstone | 2010-06-23 00:00:00 | 0 | 6000 |
| 3 | Barney | Rubble | 2010-06-23 00:00:00 | 0 | 5000 |
+----+------------+-----------+---------------------+----------+------------+
import java.sql.*;
/**
* A Java MySQL SELECT statement example.
* Demonstrates the use of a SQL SELECT statement against a
* MySQL database, called from a Java program.
*
* Created by Alvin Alexander, http://devdaily.com
*/
public class JavaMysqlSelectExample
{
public static void main(String[] args)
{
try
{
// create our mysql database connection
String myDriver = "org.gjt.mm.mysql.Driver";
String myUrl = "jdbc:mysql://localhost/test";
Class.forName(myDriver);
Connection conn = DriverManager.getConnection(myUrl, "root", "");
// our SQL SELECT query.
// if you only need a few columns, specify them by name instead of using "*"
String query = "SELECT * FROM users";
// create the java statement
Statement st = conn.createStatement();
// execute the query, and get a java resultset
ResultSet rs = st.executeQuery(query);
// iterate through the java resultset
while (rs.next())
{
int id = rs.getInt("id");
String firstName = rs.getString("first_name");
String lastName = rs.getString("last_name");
Date dateCreated = rs.getDate("date_created");
boolean isAdmin = rs.getBoolean("is_admin");
int numPoints = rs.getInt("num_points");
// print the results
System.out.format("%s, %s, %s, %s, %s, %s\n", id, firstName, lastName, dateCreated, isAdmin, numPoints);
}
st.close();
}
catch (Exception e)
{
System.err.println("Got an exception! ");
System.err.println(e.getMessage());
}
}
}