近年来,随着信息化技术的不断发展,大量的数据涌现在人们的视野中。为了更好地展示这些数据,需将其保存至数据库中,并通过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技术,可以展示出美观、实用的数据界面。当然,在实际开发中,我们还需要注意数据安全和效率等问题,以及根据实际情况选择合适的技术架构。
相关问题拓展阅读:
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的模板才能往里添加兄悄数据
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显示数据库内容的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。
香港服务器选创新互联,2H2G首月10元开通。
创新互联(www.cdcxhl.com)互联网服务提供商,拥有超过10年的服务器租用、服务器托管、云服务器、虚拟主机、网站系统开发经验。专业提供云主机、虚拟主机、域名注册、VPS主机、云服务器、香港云服务器、免备案服务器等。
当前标题:使用Java实现数据库内容的展示方法(java显示数据库内容)
网页链接:http://www.csdahua.cn/qtweb/news5/492905.html
成都网站优化推广公司_创新互联,为您提供企业建站、静态网站、网站建设、搜索引擎优化、网站改版、微信小程序
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 快上网