使用Java实现数据库内容的展示方法 (java显示数据库内容)

近年来,随着信息化技术的不断发展,大量的数据涌现在人们的视野中。为了更好地展示这些数据,需将其保存至数据库中,并通过Java编程语言实现其展示。本文将详细介绍。

一、数据库的创建与连接

我们需要创建一个数据库,并将其集成到Java程序中,以便后续代码的实现。数据库的创建可以通过合适的数据库管理工具实现,如MySQL Workbench、Navicat等。

数据库连接在Java中常使用JDBC(Java Database Connectivity)实现。JDBC是一种使用Java语言操作各种关系型数据库的API,也是Java规范的一部分。通过它,我们可以使用Java程序连接并操作数据库。

要使用JDBC连接数据库,需要使用相应的JDBC驱动程序,不同的数据库对应的驱动程序可能不同,需要根据实际情况选择。其中,MySQL数据库对应的JDBC驱动程序是mysql-connector-java。

以下代码演示了Java连接MySQL数据库的示例:

“`java

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.SQLException;

public class JDBCTest {

public static void mn(String[] args) {

Connection conn = null;

try {

Class.forName(“com.mysql.jdbc.Driver”);

String url = “jdbc:mysql://localhost:3306/test?characterEncoding=utf8”;

String user = “root”;

String password = “123456”;

conn = DriverManager.getConnection(url, user, password);

} catch (ClassNotFoundException e) {

e.printStackTrace();

} catch (SQLException e) {

e.printStackTrace();

} finally {

if (conn != null) {

try {

conn.close();

} catch (SQLException e) {

e.printStackTrace();

}

}

}

}

}

“`

二、数据库的操作

在连接数据库之后,我们需要对数据库中的数据进行相应的操作。数据库操作主要有增、删、改、查四种方式,本文将以查询为例,介绍Java如何操作数据库。

从数据库中查询数据的基本步骤如下:

1. 获取数据库连接对象Connection;

2. 获取用于执行SQL语句的Statement对象;

3. 构造查询SQL语句;

4. 执行SQL语句,并返回结果;

5. 处理结果,关闭资源。

以下代码演示了Java查询MySQL数据库中数据的示例:

“`java

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.ResultSet;

import java.sql.SQLException;

import java.sql.Statement;

public class JDBCTest {

public static void mn(String[] args) {

Connection conn = null;

Statement stmt = null;

ResultSet rs = null;

try {

Class.forName(“com.mysql.jdbc.Driver”);

String url = “jdbc:mysql://localhost:3306/test?characterEncoding=utf8”;

String user = “root”;

String password = “123456”;

conn = DriverManager.getConnection(url, user, password);

stmt = conn.createStatement();

String sql = “SELECT * FROM student”;

rs = stmt.executeQuery(sql);

while (rs.next()) {

System.out.println(rs.getInt(“id”) + ” ” + rs.getString(“name”) + ” ” + rs.getInt(“age”));

}

} catch (ClassNotFoundException e) {

e.printStackTrace();

} catch (SQLException e) {

e.printStackTrace();

} finally {

if (rs != null) {

try {

rs.close();

} catch (SQLException e) {

e.printStackTrace();

}

}

if (stmt != null) {

try {

stmt.close();

} catch (SQLException e) {

e.printStackTrace();

}

}

if (conn != null) {

try {

conn.close();

} catch (SQLException e) {

e.printStackTrace();

}

}

}

}

}

“`

三、数据的展示

Java语言可以通过Swing或JavaFX等GUI技术来实现对数据的展示。其中,Swing是Java语言内置的GUI库,非常适合构建桌面应用程序。JavaFX是新一代的GUI框架,效果更加优美,并支持Web开发、3D图形等多种特性。

以下代码演示了Swing展示MySQL数据库中数据的示例:

“`java

import java.awt.BorderLayout;

import java.awt.EventQueue;

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.ResultSet;

import java.sql.SQLException;

import java.sql.Statement;

import javax.swing.JFrame;

import javax.swing.JPanel;

import javax.swing.crollPane;

import javax.swing.JTable;

import javax.swing.border.EmptyBorder;

import javax.swing.table.DefaultTableModel;

public class JDBCTest extends JFrame {

private JPanel contentPane;

private String[] columns = new String[] { “id”, “name”, “age” };

private DefaultTableModel tableModel = new DefaultTableModel(null, columns);

private JTable table = new JTable(tableModel);

public static void mn(String[] args) {

EventQueue.invokeLater(new Runnable() {

public void run() {

try {

JDBCTest frame = new JDBCTest();

frame.setVisible(true);

} catch (Exception e) {

e.printStackTrace();

}

}

});

}

public JDBCTest() {

setTitle(“学生信息”);

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

setBounds(100, 100, 450, 300);

contentPane = new JPanel();

contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));

contentPane.setLayout(new BorderLayout(0, 0));

crollPane scrollPane = new crollPane(table);

contentPane.add(scrollPane, BorderLayout.CENTER);

setContentPane(contentPane);

Connection conn = null;

Statement stmt = null;

ResultSet rs = null;

try {

Class.forName(“com.mysql.jdbc.Driver”);

String url = “jdbc:mysql://localhost:3306/test?characterEncoding=utf8”;

String user = “root”;

String password = “123456”;

conn = DriverManager.getConnection(url, user, password);

stmt = conn.createStatement();

String sql = “SELECT * FROM student”;

rs = stmt.executeQuery(sql);

while (rs.next()) {

Object[] rowData = new Object[] { rs.getInt(“id”), rs.getString(“name”), rs.getInt(“age”) };

tableModel.addRow(rowData);

}

} catch (ClassNotFoundException e) {

e.printStackTrace();

} catch (SQLException e) {

e.printStackTrace();

} finally {

if (rs != null) {

try {

rs.close();

} catch (SQLException e) {

e.printStackTrace();

}

}

if (stmt != null) {

try {

stmt.close();

} catch (SQLException e) {

e.printStackTrace();

}

}

if (conn != null) {

try {

conn.close();

} catch (SQLException e) {

e.printStackTrace();

}

}

}

}

}

“`

四、

本文介绍了。通过建立数据库连接和操作数据库,再结合Swing或JavaFX等GUI技术,可以展示出美观、实用的数据界面。当然,在实际开发中,我们还需要注意数据安全和效率等问题,以及根据实际情况选择合适的技术架构。

相关问题拓展阅读:

如何将数据库的内容用JAVA的JTable显示出来。

final Object columnData = {};

final String columnName =

{ “主叫号码”,”被叫号码”, “拨号开始时间”, “客户姓名”, “通话开仔敬始时间”, “呼叫结果”, “通话记录”, “坐席号”, “坐席组号”,”通话时长”};

DefaultTableModel dtm = new DefaultTableModel(columnData, columnName);

JTable recordTable = new JTable(dtm);

Object data ={“1″,”2″,”3″,”4″,”5″,”6″,”7″,”8″,”9″,”10”}//这里 可以从数据库得到 通过list循环把所有数据稿戚带add进去键芦

dtm.addRow(data);

//package item;

import java.awt.Dimension;

import java.awt.HeadlessException;

import java.awt.Point;

import javax.swing.JButton;

import javax.swing.JFrame;

import javax.swing.JOptionPane;

import javax.swing.JPanel;

import javax.swing.crollPane;

import javax.swing.SwingUtilities;

import javax.swing.JTable;

import javax.swing.table.DefaultTableModel;

import javax.xml.crypto.Data;

//import db.Conn;

import java.awt.Rectangle;

import java.sql.ResultSet;

import java.sql.SQLException;

import java.util.Vector;

public class Manager extends JFrame {

String xnamearr={“课程编号”,”课程名称”姿胡,”开课时间”};

DefaultTableModel model;

private static final long serialVersionUID = 1L;

private JPanel jContentPane = null;

private JButton jButton = null;

private JButton jButton1 = null;

private JButton jButton2 = null;

private JTable jTable = null;

private JButton getJButton() {

if (jButton == null) {

jButton = new JButton();

jButton.setLocation(new Point(20, 0));

jButton.setText(“修改信息”);

jButton.setSize(new Dimension(100, 30));

}

return jButton;

}

private JButton getJButton1() {

if (jButton1 == null) {

jButton1 = new JButton();

jButton1.setLocation(new Point(140, 0));

jButton1.setText(“删除信息”);

jButton1.setSize(new Dimension(100, 30));

}

return jButton1;

}

private JButton getJButton2() {

if (jButton2 == null) {

jButton2 = new JButton();

jButton2.setLocation(new Point(260, 0));

jButton2.setText(“显握侍示全部”);

jButton2.setSize(new Dimension(100, 30));

}

return jButton2;

}

//private void Debark() {

//Conn conn=null;

//ResultSet rs=null;

//String sql=null;

//conn=new Conn();

//sql= “select * from message where =”;

//rs=conn.executeQuery(sql);

//

//try {

//if (rs.next())

//{

//

//}

//else

//JOptionPane.showMessageDialog(null,”无对段册吵应信息”);

//} catch (HeadlessException e) {

//e.printStackTrace();

//} catch (SQLException e) {

//e.printStackTrace();

//}

// }

private JTable getJTable() {

if (jTable == null) {

model=new DefaultTableModel();

jTable = new JTable(model);

model.setDataVector(getVector(), getVe());//model 传入的是数据库的二维数组 和列的数组!

//jTable.setBounds(new Rectangle(17, 97, 341, 82));

}

return jTable;

}

private crollPane getscol(){

crollPane sco=new crollPane(getJTable());

sco.setBounds(new Rectangle(17, 97, 341, 82));

return sco;

}

public Vector getVe(){

Vector ve=new Vector();

for (int i = 0; i

ve.add(xnamearr);

}

return ve;

}

private Vector getVector(){

Vector getVector=new Vector();

getVector.add(getVe());

return getVector;

}

public static void main(String args) {

// TODO 自动生成方法存根

SwingUtilities.invokeLater(new Runnable() {

public void run() {

Manager thisClass = new Manager();

thisClass.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

thisClass.setVisible(true);

}

});

}

public Manager() {

super();

initialize();

}

private void initialize() {

this.setSize(400, 300);

this.setContentPane(getJContentPane());

this.setTitle(“管理员系统”);

}

private JPanel getJContentPane() {

if (jContentPane == null) {

jContentPane = new JPanel();

jContentPane.setLayout(null);

jContentPane.add(getJButton(), null);

jContentPane.add(getJButton1(), null);

jContentPane.add(getJButton2(), null);

jContentPane.add(getscol(), null);

}

return jContentPane;

}

}

//只需要调用model.setDataVector(传入数据库的二维数组,以及对应的列名称一维数组就可以了);

//如果实现按钮功能只需要做一个model的 get方法然后通过监听实现数据的变更

//只要你能正确获取数据就很简单了

//记得把我注释的部分取消

做Swing,请研究以下内容:

1,beaninding Bean绑定工具包,能够将POJO数据Model绑定到界面组件猜仔脊上,同时界面组件之间也可以进行属性绑定。穗渗

2,Swing application framework。Swing应用程序框架

3,swingx 界戚镇面控件扩展包。

你的数据表message是什么结构的,都有哪些列?

我要先设计JTable的模板才能往里添加兄悄数据

Java中怎样在MyEclipse的console控制台上显示mysql数据库表的内容

Window–>show view–>other–>MyEclipse Database–>DB Browser

显示mysql数据库表的内容需要把数据库中取到的sql内容用system.out.print。

以下是例子:

package test;

import java.sql.DriverManager;

import java.sql.ResultSet;

import java.sql.SQLException;

import com.mysql.jdbc.Connection;

import com.mysql.jdbc.Statement;

/*使用JDBC连接数据库MySQL的过程

* DataBase:hj

* table:student

* */

public class Databasetest {

private static int count;

public static Connection getConnection() throws SQLException,

java.lang.ClassNotFoundException

{

//(1)加载MySQL的JDBC的驱动 Class.forName(“com.mysql.jdbc.Driver”);

//取得连接的url,能访问喊巧MySQL数据库的用户名,密码,数据库名

String url = “jdbc:

String username = “root”;

String password =””;

//(2)创建与MySQL数据库的连接类的实例

Connection con = (Connection) DriverManager.getConnection(url, username, password);

return con;

}

public static void main(String args) {

try

{

//(3)获取连接实例con,用con创建Statement对掘链象实例 sql_statement

Connection con = getConnection();

Statement sql_statement = (Statement) con.createStatement();

//插入语句

String sql = “insert into student(id,name,score)values(null,’梵蒂冈的发’,99)”;

count=sql_statement.executeUpdate(sql);

//(4)执判渗孙行查询,用ResultSet类的对象,返回查询结果

String query = “select * from student”;

ResultSet result = sql_statement.executeQuery(query);

System.out.println(“student表数据如下:”);

System.out.println(“”);

System.out.println(“学号” + ” ” + “姓名” + ” ” + “成绩”);

System.out.println(“”);

//对获得的查询结果进行处理,对Result类的对象进行操作

while (result.next())

{

int number=result.getInt(“id”);

String name=result.getString(“name”);

String score=result.getString(“score”);

//取得数据库中的数据 System.out.println(“学号: ” + number + ” 姓名: ” + name + ” 成绩: ” + score);

}

//关闭连接和声明sql_statement.close();

con.close();

} catch(java.lang.ClassNotFoundException e) {

//加载JDBC错误,所要用的驱动没有找到

System.err.print(“ClassNotFoundException”);

//其他错误

System.err.println(e.getMessage());

} catch (SQLException ex) {

//显示数据库连接错误或查询错误

System.err.println(“SQLException: ” + ex.getMessage());

}

}

}

运行结果:

student表数据如下:

学号 姓名 成绩

张三 90

需要在Eclipse上显示数据库的内容需要用到JDBC或者ORM框架。

查询数据在控制台显示,你只要system.out.println();显示就可以啦

把你查找的东西用system。out。println()打印就应该可以的

关于java显示数据库内容的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。


数据运维技术 » 使用Java实现数据库内容的展示方法 (java显示数据库内容)