⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 frame1.java~24~

📁 javastore 的编程程序
💻 JAVA~24~
字号:
package pumpandsync;

import java.io.File;
import java.awt.*;
import javax.swing.*;
import com.borland.jbcl.layout.*;
import com.borland.datastore.TxManager;
import com.borland.datastore.DataStore;
import com.borland.datastore.DataStorePump;
import com.borland.datastore.DataStoreSync;
import com.borland.datastore.TableDef;
import com.borland.dx.sql.dataset.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

public class Frame1
    extends JFrame {
  JPanel contentPane;
  XYLayout xYLayout1 = new XYLayout();
  Database database1 = new Database();
  TxManager txManager1 = new TxManager();
  DataStore dataStore1 = new DataStore();
  DataStorePump dataStorePump1 = new DataStorePump();
  DataStoreSync dataStoreSync1 = new DataStoreSync();
  JButton jButton1 = new JButton();
  JButton jButton2 = new JButton();
  JLabel jLabel1 = new JLabel();
  public Frame1() {
    try {
      setDefaultCloseOperation(EXIT_ON_CLOSE);
      jbInit();
    }
    catch (Exception exception) {
      exception.printStackTrace();
    }
  }

  /**
   * Component initialization.
   *
   * @throws java.lang.Exception
   */
  private void jbInit() throws Exception {
    contentPane = (JPanel) getContentPane();
    contentPane.setLayout(xYLayout1);
    setSize(new Dimension(400, 300));
    setTitle("JDataStore Pump And Sync Demo");
    dataStore1.setFileName("e:/employee_bak.jds");
    dataStore1.setUserName("sysdba");
    dataStore1.setPassword("masterkey");
    dataStore1.setTxManager(txManager1);
    dataStorePump1.setDatabaseSource(database1);
    dataStorePump1.setDataStore(dataStore1);
    dataStoreSync1.setDataStore(dataStore1);
    database1.setConnection(new ConnectionDescriptor("jdbc:borland:dslocal:E:/JBuilder2005/samples/JDataStore/datastores/employee.jds",
        "sysdba", "masterkey", false,
        "com.borland.datastore.jdbc.DataStoreDriver"));
    jButton1.setText("Pump tables from employee.jds");
    jButton2.setText("Sync tables to employee_bak.jds");
    contentPane.add(jButton1, new XYConstraints(85, 95, 218, -1));
    contentPane.add(jButton2, new XYConstraints(85, 155, 220, -1));
    contentPane.add(jLabel1, new XYConstraints(115, 238, 165, -1));
  }

  private void initDataStore() {
    if (new File(dataStore1.getFileName()).exists())
      dataStore1.open();
    else {
      dataStore1.create();
    }
  }

  private String pump() {
    initDataStore();
    database1.openConnection();
    dataStorePump1.open();
    TableDef[] tds = dataStorePump1.getTableDefs();

    for (int index = 0; index < tds.length; ++index) {
      dataStorePump1.copyTable(tds[index]);
    }

    dataStorePump1.close();
    return tds.length+"个表成功导出!";
  }

  private String sync() {
    initDataStore();
    dataStoreSync1.open();
    dataStoreSync1.saveAllTables();
    dataStoreSync1.refreshAllTables();
    return "所有表均已成功同步!";
  }

  public void jButton1_actionPerformed(ActionEvent e) {
     jLabel1.setText( pump() );
  }

  public void jButton2_actionPerformed(ActionEvent e) {
     jLabel1.setText( sync() );
  }
}

class Frame1_jButton2_actionAdapter
    implements ActionListener {
  private Frame1 adaptee;
  Frame1_jButton2_actionAdapter(Frame1 adaptee) {
    this.adaptee = adaptee;
  }

  public void actionPerformed(ActionEvent e) {
    adaptee.jButton2_actionPerformed(e);
  }
}

class Frame1_jButton1_actionAdapter
    implements ActionListener {
  private Frame1 adaptee;
  Frame1_jButton1_actionAdapter(Frame1 adaptee) {
    this.adaptee = adaptee;
  }

  public void actionPerformed(ActionEvent e) {
    adaptee.jButton1_actionPerformed(e);
  }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -