大家好,我又来水博客了,嘿嘿


上篇文章介绍了用java语言如何来获取SQL数据库中的信息,那么这次我们就来把这些信息通过java提供的组件给显示出来吧!!

以下是代码部分:


/*
  *完成mini版本学会管理系统 
  */


 package com.Test1;
 import javax.swing.*;


 import java.sql.Connection;
 import java.sql.DriverManager;
 import java.sql.PreparedStatement;
 import java.sql.ResultSet;
 import java.util.*;
 import java.awt.*;
 import java.awt.event.*;
 public class StuManger extends JFrame implements ActionListener{
 JPanel jp1,jp2;
 JLabel jl1;
 JButton jb1,jb2,jb3,jb4;
 JTable jt1;
 JTextField jtf;
 JTable jt=null;
 JScrollPane jsp=null;
 StuModel sm=null;
 SQLHelp sqlHelp=null;


public static void main(String[] args) {
// TODO Auto-generated method stub
 StuManger tes3=new StuManger();
}
public StuManger(){

jp1=new JPanel();
jtf=new JTextField(10);
jb1=new JButton("查询");
jb1.addActionListener(this);
//jb1.setActionCommand(arg0);
jl1=new JLabel("请输入名字");

//放到jp1
jp1.add(jl1);
jp1.add(jtf);
jp1.add(jb1);

jp2=new JPanel();
jb2=new JButton("添加");
jb2.addActionListener(this);
jb3=new JButton("修改");
jb3.addActionListener(this);
jb4=new JButton("删除");
jb4.addActionListener(this);

//放到jp2
jp2.add(jb2);
jp2.add(jb3);
jp2.add(jb4);

StuModel sm=new StuModel();
jt=new JTable(sm);
jsp=new JScrollPane(jt);
this.add(jsp);
this.add(jp1,"North");
this.add(jp2,"South");
this.setSize(400,300);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setVisible(true);


}
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
//判断按钮
if (e.getSource()==jb1) {
//因为把对表的数据封装到stumode中,方便查询
String name=this.jtf.getText().trim();
String sql="select * from student where stuname='"+name+"'";
sm=new StuModel(sql);
jt.setModel(sm);
}






}


 }



运行结果:



其中,添加了增删改差的按钮但并没有实现功能。

从代码中可以看出,用java实现数据库数据的显示主要分为以下步骤:

1.创建JTable控件来接收数据库中的表

2.将其装入到JScrollPane控件中

3.最后将JScrollPane将Panel控件中即可

看上去是不是很简单呢?

但是,在实现显示时,在布局方面总会出现不如意的地方,例如JTable组件过大,又或者是显示内容不全,有部分呗遮挡住了等等

要解决这些问题,就需要编写者自己去调试窗口的大小和布局设定。

(ps:写得不好的地方请见谅,另外,也希望有人能多提提宝贵意见)