📄 mainframe.java
字号:
/*
* MainFrame.java
*
* Created on 2008-1-7, 22:02:00
*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package com.hwj.tool;
import java.awt.Dimension;
import java.awt.EventQueue;
import java.awt.GraphicsEnvironment;
import java.awt.GraphicsDevice;
import java.awt.GraphicsConfiguration;
import java.awt.Rectangle;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.BufferedReader;
import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintStream;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.sql.DriverManager;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Properties;
import java.util.StringTokenizer;
import javax.swing.Box;
import javax.swing.JButton;
import javax.swing.JDialog;
import javax.swing.JFileChooser;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JProgressBar;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.JTextField;
import javax.swing.UIManager;
import javax.swing.event.DocumentEvent;
import javax.swing.event.DocumentListener;
import javax.swing.table.DefaultTableModel;
import javax.swing.text.BadLocationException;
import javax.swing.text.Document;
class MainFrame extends JFrame implements Runnable
{
private static final String FLAG_LEFT = "L";
private static final String FLAG_RIGHT = "R";
private static final String[] COLUMNNAMES = new String[]{"SEQNO","BIC","CN_NAME","ENG_NAME","CN_ADDR","ENG_ADDR","NAMEADDR","MODE"};
private static final String[] FIELDNAMES = new String[]{"BIC","CN_NAME","ENG_NAME","CN_ADD","ENG_ADD","NAMADR","PTY_TYPE","PARTY","PTY_ID"};
private JButton jButton1;
private JButton jButton2;
private JButton jButton3;
private JButton jButton4;
private JButton jButton5;
private JProgressBar jProgressBar1;
private JScrollPane jScrollPane1;
private JTable jTable1;
private JTextField jTextField1;
private JLabel jLabel1;
private JTextField field1;
private JTextField field2;
private JTextField field3;
private JTextField field4;
private JDialog dialog;
private String path;
private Thread thread;
private int updateLines = 0;
private int deleteLines = 0;
private int tablepos = 0;
private int totallength = 0;
private String pressed = "";
private long starttime = 0L;
private String driver = null;
private String url = null;
private String user = null;
private String password = null;
private HashMap fieldNames = new HashMap();
private boolean isPause = false;
public MainFrame(String s)
{
super(s);
initComponents();
}
private void initComponents()
{
jTextField1 = new JTextField();
jTextField1.setActionCommand("jTextField1");
jTextField1.getDocument().addDocumentListener(new TextFieldDocumentListener());
jButton1 = new JButton();
jButton2 = new JButton();
jButton3 = new JButton();
jButton4 = new JButton();
jButton5 = new JButton();
jProgressBar1 = new JProgressBar(0, 100);
jScrollPane1 = new JScrollPane();
jTable1 = new JTable();
jLabel1 = new JLabel();
dialog = new JDialog(this, "配置数据库连接参数", true);
BufferedInputStream bufferedinputstream = null;
try
{
bufferedinputstream = new BufferedInputStream(new FileInputStream("com\\hwj\\tool\\dbconn.properties"));
Properties properties = new Properties();
properties.load(bufferedinputstream);
if(properties.getProperty("driver") != null){
driver = properties.getProperty("driver");
}else{
driver = "com.ibm.db2.jcc.DB2Driver";
}
if(properties.getProperty("url") != null){
url = properties.getProperty("url");
}else{
url = "jdbc:db2:utan";
}
if(properties.getProperty("user") != null){
user = properties.getProperty("user");
}else{
user = "utan";
}
if(properties.getProperty("password") != null){
password = properties.getProperty("password");
}else{
password = "utan";
}
if(properties.getProperty(FIELDNAMES[0]) != null){
fieldNames.put(FIELDNAMES[0], properties.getProperty(FIELDNAMES[0]));
}else{
fieldNames.put(FIELDNAMES[0], FIELDNAMES[0]);
}
if(properties.getProperty(FIELDNAMES[1]) != null){
fieldNames.put(FIELDNAMES[1], properties.getProperty(FIELDNAMES[1]));
}else{
fieldNames.put(FIELDNAMES[1], FIELDNAMES[1]);
}
if(properties.getProperty(FIELDNAMES[2]) != null){
fieldNames.put(FIELDNAMES[2], properties.getProperty(FIELDNAMES[2]));
}else{
fieldNames.put(FIELDNAMES[2], FIELDNAMES[2]);
}
if(properties.getProperty(FIELDNAMES[3]) != null){
fieldNames.put(FIELDNAMES[3], properties.getProperty(FIELDNAMES[3]));
}else{
fieldNames.put(FIELDNAMES[3], FIELDNAMES[3]);
}
if(properties.getProperty(FIELDNAMES[4]) != null){
fieldNames.put(FIELDNAMES[4], properties.getProperty(FIELDNAMES[4]));
}else{
fieldNames.put(FIELDNAMES[4], FIELDNAMES[4]);
}
if(properties.getProperty(FIELDNAMES[5]) != null){
fieldNames.put(FIELDNAMES[5], properties.getProperty(FIELDNAMES[5]));
}else{
fieldNames.put(FIELDNAMES[5], FIELDNAMES[5]);
}
if(properties.getProperty(FIELDNAMES[6]) != null){
fieldNames.put(FIELDNAMES[6], properties.getProperty(FIELDNAMES[6]));
}else{
fieldNames.put(FIELDNAMES[6], FIELDNAMES[6]);
}
if(properties.getProperty(FIELDNAMES[7]) != null){
fieldNames.put(FIELDNAMES[7], properties.getProperty(FIELDNAMES[7]));
}else{
fieldNames.put(FIELDNAMES[7], FIELDNAMES[7]);
}
if(properties.getProperty(FIELDNAMES[8]) != null){
fieldNames.put(FIELDNAMES[8], properties.getProperty(FIELDNAMES[8]));
}else{
fieldNames.put(FIELDNAMES[8], FIELDNAMES[8]);
}
bufferedinputstream.close();
}
catch(Exception filenotfoundexception)
{
bufferedinputstream = null;
driver = "com.ibm.db2.jcc.DB2Driver";
url = "jdbc:db2:utan";
user = "utan";
password = "utan";
fieldNames.put(FIELDNAMES[0], FIELDNAMES[0]);
fieldNames.put(FIELDNAMES[1], FIELDNAMES[1]);
fieldNames.put(FIELDNAMES[2], FIELDNAMES[2]);
fieldNames.put(FIELDNAMES[3], FIELDNAMES[3]);
fieldNames.put(FIELDNAMES[4], FIELDNAMES[4]);
fieldNames.put(FIELDNAMES[5], FIELDNAMES[5]);
fieldNames.put(FIELDNAMES[6], FIELDNAMES[6]);
fieldNames.put(FIELDNAMES[7], FIELDNAMES[7]);
fieldNames.put(FIELDNAMES[8], FIELDNAMES[8]);
}
//System.out.println("fieldNames is:"+fieldNames);
field1 = new JTextField(driver);
field2 = new JTextField(url);
field3 = new JTextField(user);
field4 = new JTextField(password);
setDefaultCloseOperation(3);
jButton1.setText("选择文件");
jButton1.setActionCommand("jButton1");
ButtonActionListener btnListener = new ButtonActionListener();
jButton1.addActionListener(btnListener);
jButton2.setText("分析文件");
jButton2.setActionCommand("jButton2");
jButton2.addActionListener(btnListener);
jButton3.setText("导入数据");
jButton3.setActionCommand("jButton3");
jButton3.addActionListener(btnListener);
jButton4.setText("配置参数");
jButton4.setActionCommand("jButton4");
jButton4.addActionListener(btnListener);
jButton5.setText("暂停");
jButton5.setActionCommand("jButton5");
jButton5.addActionListener(btnListener);
jButton5.setEnabled(false);
//jTable1.setAutoCreateRowSorter(true);
jTable1.setModel(new DefaultTableModel(new Object[0][0], COLUMNNAMES));
jScrollPane1.setViewportView(jTable1);
jScrollPane1.setPreferredSize(new Dimension(640, 600));
Box box = Box.createHorizontalBox();
Box box1 = Box.createVerticalBox();
box.add(Box.createHorizontalStrut(25));
box.add(box1);
box.add(Box.createHorizontalStrut(25));
box1.add(Box.createVerticalStrut(35));
Box box2 = Box.createHorizontalBox();
box2.add(jTextField1);
box2.add(Box.createHorizontalStrut(15));
box2.add(jButton4);
box2.add(Box.createHorizontalStrut(15));
box2.add(jButton1);
box2.add(Box.createHorizontalStrut(15));
box2.add(jButton2);
box2.add(Box.createHorizontalStrut(15));
box2.add(jButton3);
box2.add(Box.createHorizontalStrut(15));
box2.add(jButton5);
box1.add(box2);
box1.add(Box.createVerticalStrut(25));
box1.add(Box.createGlue());
box1.add(jProgressBar1);
box1.add(Box.createVerticalStrut(25));
box1.add(jScrollPane1);
box1.add(Box.createVerticalStrut(5));
box1.add(jLabel1);
box1.add(Box.createVerticalStrut(15));
getContentPane().add(box);
pack();
JLabel jlabel = new JLabel("driver:");
JLabel jlabel1 = new JLabel("url:");
JLabel jlabel2 = new JLabel("user:");
JLabel jlabel3 = new JLabel("password:");
JButton jbutton = new JButton("确定");
jbutton.setActionCommand("button1");
jbutton.addActionListener(btnListener);
JButton jbutton1 = new JButton("取消");
jbutton1.setActionCommand("button2");
jbutton1.addActionListener(btnListener);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -