JDBC:数据库信息显示在JTable

来源:互联网 发布:excel怎么高级筛选数据 编辑:程序博客网 时间:2024/06/03 23:00

UI

参考:https://www.cnblogs.com/zjl6/p/6814986.html?utm_source=itdadao&utm_medium=referral
/** * 开发一个小程序,将Motel168客房管理系统全部员工信息在一个JTable中逐行显示,自学JTable的使用 */package com.Test.view;import java.awt.Color;import java.awt.Dimension;import java.awt.EventQueue;import java.awt.Toolkit;import java.util.List;import javax.swing.*;import javax.swing.border.LineBorder;import javax.swing.table.DefaultTableModel;import javax.swing.GroupLayout;import javax.swing.GroupLayout.Alignment;import javax.swing.JFrame;import javax.swing.JPanel;import javax.swing.JScrollPane;import javax.swing.JTable;import javax.swing.border.EmptyBorder;import javax.swing.border.LineBorder;import javax.swing.table.DefaultTableModel;import com.Test.dao.UsernameDAO;import com.Test.dto.UsernameDTO;import java.awt.*; import java.awt.event.*;public class UsernameDisplay extends JFrame{    private JPanel contentPane;    private JTable table;    private String head[]=null;    private Object [][]data=null;    private UsernameDAO user = new UsernameDAO();    public UsernameDisplay(){        setResizable(false);        setTitle("Tset");        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);        setBounds(100, 100, 700, 200);        Dimension   us=this.getSize();        Dimension them=Toolkit.getDefaultToolkit().getScreenSize();              int   x=(them.width-us.width)/2;                int   y=(them.height-us.height)/2;                 this.setLocation(x, y);        contentPane = new JPanel();        contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));        setContentPane(contentPane);        JScrollPane scrollPane = new JScrollPane();        scrollPane.setBounds(0,0,700,250);        table = new JTable();        table.setBorder(new LineBorder(new Color(0, 0, 0)));        head = new String[]{            "empAccount","empPassword","empName","empSex","empDeparment","empTel","empEmail","empQuestion","empAnswer",         };        DefaultTableModel tabelModel = new DefaultTableModel(queryData(), head){            public boolean isCellEditabel(int row, int column) {                return false;            }        };        table.setModel(tabelModel);        scrollPane.setViewportView(table);         GroupLayout gl_contentPane = new GroupLayout(contentPane);            gl_contentPane.setHorizontalGroup(                gl_contentPane.createParallelGroup(Alignment.LEADING)                    .addComponent(scrollPane, GroupLayout.DEFAULT_SIZE, 684, Short.MAX_VALUE)            );            gl_contentPane.setVerticalGroup(                gl_contentPane.createParallelGroup(Alignment.LEADING)                    .addGroup(gl_contentPane.createSequentialGroup()                        .addComponent(scrollPane, GroupLayout.PREFERRED_SIZE, 195, GroupLayout.PREFERRED_SIZE)                        .addGap(66))            );           contentPane.setLayout(gl_contentPane);        this.setVisible(true);}  public Object[][] queryData() {      List<UsernameDTO> list=user.queryAllUser();      data = new Object[list.size()][head.length];      for(int i=0;i<list.size();i++){          for(int j=0;j<head.length;j++){              data[i][0]=list.get(i).getEmpAccount();              data[i][1]=list.get(i).getEmpPassword();              data[i][2]=list.get(i).getEmpName();              data[i][3]=list.get(i).getEmpSex();              data[i][4]=list.get(i).getEmpDeparment();              data[i][5]=list.get(i).getEmpTel();              data[i][6]=list.get(i).getEmpEmail();              data[i][7]=list.get(i).getEmpQuestion();              data[i][8]=list.get(i).getEmpAnswer();          }      }        return data;    }public static void main(String[] args) {         new UsernameDisplay();     }}

DAO

/** * 千枝竞秀有天皆丽日,万木争荣无地不春风 * Author: RoniZeng * Time:17/12/25 */package com.Test.dao;import java.sql.Connection;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.Statement;import java.util.ArrayList;import java.util.List;import com.Test.Util.DBUtil;import com.Test.dto.UsernameDTO;public class UsernameDAO {    private Connection conn = null;     private PreparedStatement statement = null;    private ResultSet rs = null;    public List<UsernameDTO> queryAllUser() {        List<UsernameDTO> list=new ArrayList<UsernameDTO>();        try {            conn = DBUtil.getConnection();            String sql = "select * from Employee";            statement = conn.prepareStatement(sql);            rs = statement.executeQuery();            while(rs.next()){                UsernameDTO userdto = new UsernameDTO();                userdto.setEmpAccount(rs.getString(1));                userdto.setEmpPassword(rs.getString(2));                userdto.setEmpName(rs.getString(3));                userdto.setEmpSex(rs.getString(4));                userdto.setEmpDeparment(rs.getString(5));                userdto.setEmpTel(rs.getString(6));                userdto.setEmpEmail(rs.getString(7));                userdto.setEmpQuestion(rs.getString(8));                userdto.setEmpAnswer(rs.getString(9));                list.add(userdto);            }        }        catch(Exception e) {            e.printStackTrace();        }        finally {            try {                statement.close();                conn.close();            }            catch(Exception e1) {                e1.printStackTrace();            }        }        return list;        }}

DTO

package com.Test.dto;public class UsernameDTO {    private String empAccount, empPassword, empName;    private String empSex, empDeparment, empTel;    private String empEmail, empQuestion, empAnswer;    public String getEmpAccount() {        return empAccount;    }    public void setEmpAccount(String empAccount) {        this.empAccount = empAccount;    }    public String getEmpPassword() {        return empPassword;    }    public void setEmpPassword(String empPassword) {        this.empPassword = empPassword;    }    public String getEmpName() {        return empName;    }    public void setEmpName(String empName) {        this.empName = empName;    }    public String getEmpSex() {        return empSex;    }    public void setEmpSex(String empSex) {        this.empSex = empSex;    }    public String getEmpDeparment() {        return empDeparment;    }    public void setEmpDeparment(String empDeparment) {        this.empDeparment = empDeparment;    }    public String getEmpTel() {        return empTel;    }    public void setEmpTel(String empTel) {        this.empTel = empTel;    }    public String getEmpEmail() {        return empEmail;    }    public void setEmpEmail(String empEmail) {        this.empEmail = empEmail;    }    public String getEmpQuestion() {        return empQuestion;    }    public void setEmpQuestion(String empQuestion) {        this.empQuestion = empQuestion;    }    public String getEmpAnswer() {        return empAnswer;    }    public void setEmpAnswer(String empAnswer) {        this.empAnswer = empAnswer;    }}

DBUtil

package com.Test.Util;import java.sql.Connection;import java.sql.DriverManager;public class DBUtil {    public static Connection getConnection(){        try{            Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");            Connection conn = DriverManager.getConnection("jdbc:sqlserver://localhost:1433;databaseName=HappyDB;user=sa;password=123456");            return conn;        }        catch (Exception e) {        }        return null;    }}
阅读全文
'); })();
0 0
原创粉丝点击
热门IT博客
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 泰山石敢当文化 泰山奇石收购 泰山奇石精品图片 泰山奇石大全 泰山石敢当图 泰山石敢当啥意思 泰山石忌讳放什么地方 泰山石放在家里那个位置好 泰山石放错伤人 泰山石原石 大型泰山石价格 泰山石峪金刚经 泰山石图片及价格 泰山石种类 泰山石哪里买 哪里有卖泰山石的 泰山石市场 泰山石多少钱 泰山石的价格 泰山石高板 泰山石的摆放 泰山石怎么卖 泰山石怎么保养 泰山石如何保养 泰山石摆放位置 泰山原石 泰山石的作用 如何鉴定泰山石 泰山石有什么讲究 泰山石是什么石头 泰山石特点 泰山石葫芦 泰山石品种 泰山石梯 假泰山石 泰山石的寓意 泰山石寓意 泰山石的产地 装饰马摆件 泰山神 泰山站周边酒店