JTable与数据库查询

简单使用JTable读取数据库的表 在上一个博文中学习了如何用Java连接数据库,那么连接上数据库后干嘛用呢,肯定是对数据库进行增删改查,在这里我又学习了一下,如何用JTabke读取数据库。那么什么事JTable呢?在API中写道:JTable 用来显示和编辑常规二维单元表。也就是说:利用 JTable 类,可以以表格的形式展示数据,可设置允许用户编辑数据。我这里只是简答你的用JTable读取数据,后面的功能以后再实现。读数据库的时候需要从数据库中读取数据,那么代码需要给的地方就是添加行数据的地方,可想而知,在添加行数据的地方需要连接数据库, 阅读详情

import javax.swing.*;
import javax.swing.event.*;
import java.awt.event.*;
import java.awt.Point;
import java.awt.Dimension;
import java.awt.GridLayout;
import java.awt.BorderLayout;
import javax.swing.table.DefaultTableModel;
import java.util.Vector;
import java.sql.*;
public class AllInfo extends JFrame. implements ActionListener
{
    public AllInfo(){
        setTitle("排课情况信息查询");
        setSize(200,200);
        gl=new GridLayout(1,3,20,20);
        gl2=new GridLayout(1,1,20,20);
        JPanel panel=new JPanel();
        JPanel panel2=new JPanel();
        panel.setLayout(gl);
        panel2.setLayout(gl2);
        datelbl=new JLabel("日期");
        datetex=new JTextField("");
        classtimelbl=new JLabel("节次");
        classtimetex=new JTextField("");
        selectbtn=new ***utton("查询");
        model=new DefaultTableModel();
        messagetab=new JTable(model);
        model.addColumn("日期");
        model.addColumn("节次");
        model.addColumn("课程名称");
        model.addColumn("任课教师");
       
        sp=new JScrollPane(messagetab);
        panel.add(datelbl);
        panel.add(datetex);
        panel.add(classtimelbl);
        panel.add(classtimetex);
        panel.add(selectbtn);
        panel2.add(sp);
        selectbtn.addActionListener(this);
        getContentPane().add(panel,BorderLayout.CENTER);
        getContentPane().add(panel2,BorderLayout.SOUTH);
        sql=("select * from paike");
        //清除以前记录
        for(int n=model.getRowCount()-1;n>=0;n--)
        {
            model.removeRow(n);
        }
        try
        {
            rs=db.getResult(sql);
            rs.beforeFirst();
            while(rs.next()){   
                Vector tempvector=new Vector(1,1);
                tempvector.add(rs.getString(1));
                tempvector.add(rs.getString(2));
                tempvector.add(rs.getString(3));
                tempvector.add(rs.getString(4));
               
                model.addRow(tempvector);
            }
        }catch(SQLException e)
        {
            System.out.println(e);
        }
    }
    public void actionPerformed(ActionEvent e)
    {
        boolean isFirst=true;
        sql="select * from paike";
        for(int n=model.getRowCount()-1;n>=0;n--)
        {
            model.removeRow(n);
        }
        //book 表示书ID
        //author表示USERID
        String date=datetex.getText().trim();
        String classtime=classtimetex.getText().trim();
        if(date.equals("")&classtime.equals(""))
        {
            JOptionPane.showMessageDialog(null,"最少输入一个查找项目");
            return;
        }
        if(!date.equals(""))
        {
           
            sql=sql+" where date1="+date;
            isFirst=false;
        }
        if(!classtime.equals(""))
        {
           
            if(isFirst)
            {
               
                sql=sql+" where classtime="+classtime;
            }
            else
            {
                sql=sql+" and classtime="+classtime;
            }
        }
            rs=db.getResult(sql);
            boolean isexist=false;
                try
                {
                    //把游标指向结果集的第一行,如果没有数据则返回false
                    isexist=rs.first();       
                }
                catch(SQLException w)
                {
                    System.out.println(w);
                }
                //判断结果是否正确
                if(!isexist)
                {
                    JOptionPane.showMessageDialog(null,"没有相关资料");
                    datetex.setText("");
                    classtimetex.setText("");
                    return;
                }
                try
                {
                    rs.beforeFirst();
                    while(rs.next()){   
                    Vector tempvector=new Vector(1,1);
                    tempvector.add(rs.getString(1));
                    tempvector.add(rs.getString(2));
                    tempvector.add(rs.getString(3));
                    tempvector.add(rs.getString(4));
                   
                    model.addRow(tempvector);
                    }
                }
                catch(SQLException e2)
                {
                    System.out.println(e2);
                }}
    private JLabel datelbl;
    private JLabel classtimelbl;
    private JTextField datetex;
    private JTextField classtimetex;
    private ***utton selectbtn;
    private JTable messagetab;
    private JScrollPane sp;
    private GridLayout gl;
    private GridLayout gl2;
    private DBManager db=new DBManager();
    private ResultSet rs;
    private String sql;
    private DefaultTableModel model;
   
} 

Java桌面应用(4)---消息弹窗封装、数据库查询数据表格化显示JTable、下拉选择框JComboBox 【代码】Java桌面应用(4)---消息弹窗封装、数据库查询数据表格化显示JTable、下拉选择框JComboBox。 阅读详情

相关推荐

java程序JTable查询界面sql2005数据库

java写的基于JTable的一个简单查询界面,链接的是sql2005数据库。 需要加载sqljdbc4.jar 压缩包里面有 本人多年菜鸟 里面有java生成jar包的操作步骤 已经exe4j这个工具,将java打包成exe文件。 exe4j怎么用百度下吧 已经sql数据库里面的字符串与datetime类型的相互转换都有

JSP之JDBC操作Sql Server数据库

Sql Server数据库是一个常用的数据库软件,它是微软产品,但是也对JDBC操作提供了支持。 操作: <1>首先要从微软的官方网站下载JDBC的驱动jar包文件,本人已经下好:点击打开链接 把它的驱动jar包放在应用程序的CLASSPATH下,在这是web开发,所以可以放在WebRoot/WEB-INF/lib下。 把jar包添加在应用程序CLASSPATH下: ...

web开发 561

第二十三章 Nest集成日志框架Winston

Winston是一个非常流行的Node.js日志框架,而Nest.js是一个基于Node.js的后端框架。修改 winston.module.ts 内容如下 添加 forRoot 方法,接收 winston 的 createLogger 方法的参数,返回动态模块的 providers、exports。这里用到了 printf 的 format 函数,它可以自定义打印的日志格式 且使用了chalk 加上了颜色,并且打印了 dayjs 格式化的时间。可以看到控制台打印了自定义的 logger 的自定义。

枫ゞ的博客 1070

java 将sql server的数据显示在JTable上

SQL Server数据库中的表如下图1所示,表名为stu_info                                                                                                               图1 表stu_Info上篇已讲连接SQL server,这里不再赘述。我们直接上代码,有详细注释应该很容易p...

XiaoQQin的博客 6458

OpenFOAM-v2006重叠网格挖洞问题实战:如何手动修复overset代码中的边缘识别缺陷

本文深入探讨了OpenFOAM-v2006中重叠网格挖洞问题的实战解决方案,重点修复overset代码中的边缘识别缺陷。通过逆向工程解析挖洞决策机制,设计最小侵入式的函数override方案,并建立多级验证体系,有效解决了网格挖洞区域覆盖不全的问题,提升了计算流体动力学模拟的准确性和可靠性。

weixin_29216049的博客 433

【CSP-J/S】复赛注意事项 上机文件组织形式

每年/S 复赛都有很多同学因为一些小失误导致一年的努力付之东流。Tony老师整理了一些复赛容易踩坑的点,或许对你有帮助!

星卯教育-信奥教练tony 1万+

java jtable查找数据库_[原创][求助]jtable与数据库查询

[原创][求助]jtable与数据库查询import javax.swing.*;import javax.swing.event.*;import java.awt.event.*;import java.awt.Point;import java.awt.Dimension;import java.awt.GridLayout;import java.awt.BorderLayout;impo...

weixin_39920629的博客 333

深度学习赋能胶囊内镜:AI如何实现胃肠道出血的自动检测与分割

在计算机视觉领域,图像分类与目标检测是处理医学影像分析的核心技术。其原理在于通过卷积神经网络(CNN)自动学习图像中的多层次特征表示,实现对特定目标的识别与定位。这项技术的价值在于能够将医生从海量、重复的阅片工作中解放出来,提升诊断效率与一致性,尤其在处理如胶囊内镜产生的数万张连续图像时优势显著。其应用场景广泛覆盖了医学影像的辅助诊断,例如在消化内科,对胃肠道出血的早期发现与精准定位具有重要临床意义。本文聚焦于利用深度学习模型,如U-Net和EfficientNet,构建一个能够从复杂多变的胶囊内镜图像中,

weixin_42533910的博客 389

编写一个Swing类+JTable界面实现信息查询

【代码】编写一个Swing类+JTable界面实现信息查询。

weixin_43824515的博客 1893

服务器测试之intel E8102CQDA2

网卡性能 iperf E810

qq_41897488的博客 2509

Globus 数据下载

Globus 大数据下载流程~

weixin_43978558的博客 6644

jtabel 遍历_Java 将数据库查询结果显示在JTable表格中

时间:2018-10-12概述:JTable本实例主要实现两个功能,一是读取数据库,二是将读取到的数据显示在JTable表格中,如果你对JTable的用法不熟悉,你可通过本代码了解一个完整的用法演示,在输出表格类型数据的时候,JTable是挺方便的,下面来看具体的代码:import java.sql.*;import java.awt.*;import javax.swing.*;import j...

weixin_39563420的博客 1279

《S32系列芯片——Boot & HSE详解》持续更新中...

专栏总目录,将详细介绍S32系列芯片的Boot功能,最终给出HSE基于IVT的Secure Boot方案!!!

车载系统攻城狮 4387

对数据库执行一个查询,把获得的结果集通过JTable显示,当查询变化时,如何使JTable的内容变化...

对数据库执行一个查询,把获得的结果集通过JTable显示,当查询变化时,如何使JTable的显示内容随之变化。 我查阅了一些资料,如果不是操作数据库,JTable的validate()和updateUI()可以更新JTable的显示内容,可对数据库操作时,这两个方法好像就不起作用了。...

jupiterful 361

YOLO-V8训练自己的数据集之标注样本

四、标注样本 4.1、标注样本概述 4.1.1、样本标注主要方法 4.1.2、标注样本概念 4.1.3、标注样本实现方式 4.1.4、常见标注样本软件 4.2、标注工具LabelImg 4.2.1、LabelImg介绍 4.2.2、LabelImg特点 4.2.3、LabelImg安装方法 4.2.4、LabelImg使用方法 4.3、标注样本实操 4.3.1、安装标注软件Labelimg 4.3.2、Labelimg界面介绍 4.3.3、LabelImg实操过程中常

qq_29633789的博客 665

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

Java Swing Jtable组件展示从MySQL数据库中获取到的的数据,可点击按钮查询数据并展示。

Java Swing Jtable组件展示从数据库中获取到的的数据,可点击按钮查询数据并展示。

Ganxiang 1万+

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

java的JTable表格的制作,读取数据库表中数据放到JTable表格中

public class MyTable extends JFrame{ public MyTable() throws SQLException { Connection connection=null/*获取数据库连接,JDBC省略*/ PreparedStatement preparedStatement=connection.prepare...

Boxzhang的博客 6896

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

java数据库查询显示结果显示在JTable

Connection conn = getConn("mysql"); PreparedStatement prest = conn.prepareStatement(sql); prest.setString(1, textField.getText().toString()); prest.setString(2, textField.getText().toSt

u012967595的博客 1万+

怎样将数据库的数据读取到JTable中

搞了一下午,想要将数据库的数据展示到JTable中发现了很多方法。  有的需要将读取到的数据放到Vctor类中,再用枚举类型将Vctor的数据一个一个读取出来。 甚是麻烦。 最终在linweieran的博客上发现了这个非常简单轻便的方法,供大家参考。 再次也感谢这位老师。  转载自@ linweieran的博客   在上一个博文中学

Tobin_Xu的博客 1万+

java显示表格内容_java 的 JTable,怎么把数据库查询的内容显示在表格上

qq_a沙漏中的时光_0代码:privatevoidfillStudentTable(Studentstudent){DefaultTableModeldtm=(DefaultTableModel)studentTable.getModel();//studentTable为表格对象(Jtable)dtm.setRowCount(0);//清空表数据Connectioncon...

weixin_31451231的博客 503

表格显示数据库java的类_java 的 JTable,怎么把数据库查询的内容显示在表格上

代码:privatevoidfillStudentTable(Studentstudent){DefaultTableModeldtm=(DefaultTableModel)studentTable.getModel();//studentTable为表格对象(Jtable)dtm.setRowCount(0);//清空表数据Connectioncon=null;Prep...

weixin_35511255的博客 190

java jtable查找数据库_java 的 JTable,怎么把数据库查询的内容显示在表格上?

展开全部publicclassBookModelextendsAbstractTableModel{VectorrowData=null;VectorcolumnNames=null;publicBookModel(){rowData=newVector();columnNames=newVector();columnNames.add("馆藏e5a48de588b6323131...

weixin_39616367的博客 263

JTable 查询

1 public JTable query(String table) throws SQLException { 2 DefaultTableModel tablemodel = new DefaultTableModel(); 3 String sql = "SELECT * FROM " + table + ";"; 4 St...

weixin_30780221的博客 491

jtable如何从表格中定位_java 的 JTable,怎么把数据库查询的内容显示在表格上

代码:privatevoidfillStudentTable(Studentstudent){DefaultTableModeldtm=(DefaultTableModel)studentTable.getModel();//studentTable为表格对象(Jtable)dtm.setRowCount(0);//清空表数据Connectioncon=null;Prep...

weixin_39746794的博客 157

Java将数据库的数据展示到JTable表格中

import javax.swing.*; import java.awt.*; import java.sql.*; public class XieSiBan extends JFrame { public static void main(String[] args) { try { // 加载MySql驱动 Cla...

qq_44639841的博客 6500

Java使用jtable显示数据库_怎么把数据库里东西在JTable中显示

怎么把数据库里东西在JTable中显示package jtableconnectiondb;import java.awt.BorderLayout;import java.awt.Dimension;import javax.swing.JFrame;import javax.swing.*;import javax.swing.JTable;import java.awt.*;import j...

weixin_30054883的博客 1208
上一篇: Swing组件大全
下一篇: 文件上传 方法之一------通过 http 协议上传文件
pulybuffer
博客等级 码龄19年 3粉丝 55原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值