IBM Power Systems AS/400 iSeries ¤Ë´Ø¤¹¤ë³Ð¤¨½ñ¤­¤Ê¥Ú¡¼¥¸¤Ç¤¹¡£

NerineUtil01.Java

import java.io.BufferedWriter;
import java.io.File;
import java.io.FileWriter;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.Statement;

import javax.swing.JButton;
import javax.swing.JDialog;
import javax.swing.JFileChooser;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JTextField;
import javax.swing.SwingConstants;

import com.ibm.as400.access.AS400;
import com.ibm.as400.access.AS400JDBCDataSource;

public class NerineUtil01 extends JFrame {

    private String schema = null;
    private String table = null;
    private String url = null;
    private String jdbcUrl = "jdbc:as400://";

    private JFileChooser chooser = new JFileChooser();
    private JDialog dialog;

    private javax.swing.JPanel jContentPane = null;
    private javax.swing.JMenuBar jJMenuBar = null;
    private javax.swing.JMenu fileMenu = null;
    private javax.swing.JMenu editMenu = null;
    private javax.swing.JMenu helpMenu = null;
    private javax.swing.JMenuItem exitMenuItem = null;
    private javax.swing.JMenuItem aboutMenuItem = null;
    private javax.swing.JMenuItem cutMenuItem = null;
    private javax.swing.JMenuItem copyMenuItem = null;
    private javax.swing.JMenuItem pasteMenuItem = null;
    private javax.swing.JMenuItem saveMenuItem = null;
    private JLabel jLabelSchema = null;
    private JLabel jLabelTable = null;
    private JTextField jTextTable = null;
    private JLabel jLabelSaveUrl = null;
    private JTextField jTextUrl = null;
    private JButton jButton = null;
    private JLabel jLabelMsg = null;
    private JTextField jTextSchema = null;
    private JButton jButton1 = null;

    /**
     * This method initializes jTextField2
     *
     * @return javax.swing.JTextField
     */
    private JTextField getJTextTable() {
        if (jTextTable == null) {
            jTextTable = new JTextField();
            jTextTable.setBounds(217, 16, 70, 20);
        }
        return jTextTable;
    }

    /**
     * This method initializes jTextField3
     *
     * @return javax.swing.JTextField
     */
    private JTextField getJTextUrl() {
        if (jTextUrl == null) {
            jTextUrl = new JTextField();
            jTextUrl.setBounds(90, 41, 247, 24);
        }
        return jTextUrl;
    }

    /**
     * This method initializes jButton
     *
     * @return javax.swing.JButton
     */
    private JButton getJButton() {
        if (jButton == null) {
            jButton = new JButton();
            jButton.setBounds(20, 69, 307, 22);
            jButton.setText("CREATE CSV FILE");
            jButton.addActionListener(new java.awt.event.ActionListener() {
                public void actionPerformed(java.awt.event.ActionEvent e) {
                    createCsvFile();
                }
            });
        }
        return jButton;
    }

    /**
     * This method initializes jTextField4
     *
     * @return javax.swing.JTextField
     */
    private JTextField getJTextSchema() {
        if (jTextSchema == null) {
            jTextSchema = new JTextField();
            jTextSchema.setBounds(90, 16, 70, 20);
        }
        return jTextSchema;
    }

    /**
     * This method initializes jButton1
     *
     * @return javax.swing.JButton
     */
    private JButton getJButton1() {
        if (jButton1 == null) {
            jButton1 = new JButton();
            jButton1.setBounds(343, 41, 40, 22);
            jButton1.setText("...");
            jButton1.addActionListener(new java.awt.event.ActionListener() {
                public void actionPerformed(java.awt.event.ActionEvent e) {
                    selectFile();
                }
            });
        }
        return jButton1;
    }

    public static void main(String[] args) {
        NerineUtil01 application = new NerineUtil01();
        application.show();
    }

    /**
     * This is the default constructor
     */
    public NerineUtil01() {
        super();
        initialize();
    }

    /**
     * This method initializes this
     *
     * @return void
     */
    private void initialize() {
        this.setDefaultCloseOperation(javax.swing.JFrame.EXIT_ON_CLOSE);
        this.setJMenuBar(getJJMenuBar());
        this.setSize(404, 178);
        this.setContentPane(getJContentPane());
        this.setTitle("i5¤«¤éCSV¥Õ¥¡¥¤¥ëºîÀ®");
    }

    /**
     * This method initializes jContentPane
     *
     * @return javax.swing.JPanel
     */
    private javax.swing.JPanel getJContentPane() {
        if (jContentPane == null) {
            jLabelMsg = new JLabel();
            jLabelSaveUrl = new JLabel();
            jLabelTable = new JLabel();
            jLabelSchema = new JLabel();
            jContentPane = new javax.swing.JPanel();
            jContentPane.setLayout(null);
            jLabelSchema.setBounds(15, 15, 70, 20);
            jLabelSchema.setText("Schema:");
            jLabelTable.setBounds(170, 15, 40, 20);
            jLabelTable.setText("Table:");
            jLabelSaveUrl.setBounds(15, 41, 70, 21);
            jLabelSaveUrl.setText("Save URL:");
            jLabelMsg.setBounds(11, 98, 324, 20);
            jLabelMsg.setText("MSG:");
            jContentPane.add(jLabelSchema, null);
            jContentPane.add(jLabelTable, null);
            jContentPane.add(getJTextTable(), null);
            jContentPane.add(jLabelSaveUrl, null);
            jContentPane.add(getJTextUrl(), null);
            jContentPane.add(getJButton(), null);
            jContentPane.add(jLabelMsg, null);
            jContentPane.add(getJTextSchema(), null);
            jContentPane.add(getJButton1(), null);
        }
        return jContentPane;
    }

    /**
     * This method initializes jJMenuBar
     *
     * @return javax.swing.JMenuBar
     */
    private javax.swing.JMenuBar getJJMenuBar() {
        if (jJMenuBar == null) {
            jJMenuBar = new javax.swing.JMenuBar();
            jJMenuBar.add(getFileMenu());
            jJMenuBar.add(getEditMenu());
            jJMenuBar.add(getHelpMenu());
        }
        return jJMenuBar;
    }

    /**
     * This method initializes jMenu
     *
     * @return javax.swing.JMenu
     */
    private javax.swing.JMenu getFileMenu() {
        if (fileMenu == null) {
            fileMenu = new javax.swing.JMenu();
            fileMenu.setText("File");
            fileMenu.add(getSaveMenuItem());
            fileMenu.add(getExitMenuItem());
        }
        return fileMenu;
    }

    /**
     * This method initializes jMenu
     *
     * @return javax.swing.JMenu
     */
    private javax.swing.JMenu getEditMenu() {
        if (editMenu == null) {
            editMenu = new javax.swing.JMenu();
            editMenu.setText("Edit");
            editMenu.add(getCutMenuItem());
            editMenu.add(getCopyMenuItem());
            editMenu.add(getPasteMenuItem());
        }
        return editMenu;
    }

    /**
     * This method initializes jMenu
     *
     * @return javax.swing.JMenu
     */
    private javax.swing.JMenu getHelpMenu() {
        if (helpMenu == null) {
            helpMenu = new javax.swing.JMenu();
            helpMenu.setText("Help");
            helpMenu.add(getAboutMenuItem());
        }
        return helpMenu;
    }

    /**
     * This method initializes jMenuItem
     *
     * @return javax.swing.JMenuItem
     */
    private javax.swing.JMenuItem getExitMenuItem() {
        if (exitMenuItem == null) {
            exitMenuItem = new javax.swing.JMenuItem();
            exitMenuItem.setText("Exit");
            exitMenuItem.addActionListener(new java.awt.event.ActionListener() {
                public void actionPerformed(java.awt.event.ActionEvent e) {
                    System.exit(0);
                }
            });
        }
        return exitMenuItem;
    }

    /**
     * This method initializes jMenuItem
     *
     * @return javax.swing.JMenuItem
     */
    private javax.swing.JMenuItem getAboutMenuItem() {
        if (aboutMenuItem == null) {
            aboutMenuItem = new javax.swing.JMenuItem();
            aboutMenuItem.setText("About");
            aboutMenuItem
                    .addActionListener(new java.awt.event.ActionListener() {
                        public void actionPerformed(java.awt.event.ActionEvent e) {
                            new javax.swing.JDialog(NerineUtil01.this, "About",
                                    true).show();
                        }
                    });
        }
        return aboutMenuItem;
    }

    /**
     * This method initializes jMenuItem
     *
     * @return javax.swing.JMenuItem
     */
    private javax.swing.JMenuItem getCutMenuItem() {
        if (cutMenuItem == null) {
            cutMenuItem = new javax.swing.JMenuItem();
            cutMenuItem.setText("Cut");
            cutMenuItem.setAccelerator(javax.swing.KeyStroke.getKeyStroke(
                    java.awt.event.KeyEvent.VK_X, java.awt.Event.CTRL_MASK,
                    true));
        }
        return cutMenuItem;
    }

    /**
     * This method initializes jMenuItem
     *
     * @return javax.swing.JMenuItem
     */
    private javax.swing.JMenuItem getCopyMenuItem() {
        if (copyMenuItem == null) {
            copyMenuItem = new javax.swing.JMenuItem();
            copyMenuItem.setText("Copy");
            copyMenuItem.setAccelerator(javax.swing.KeyStroke.getKeyStroke(
                    java.awt.event.KeyEvent.VK_C, java.awt.Event.CTRL_MASK,
                    true));
        }
        return copyMenuItem;
    }

    /**
     * This method initializes jMenuItem
     *
     * @return javax.swing.JMenuItem
     */
    private javax.swing.JMenuItem getPasteMenuItem() {
        if (pasteMenuItem == null) {
            pasteMenuItem = new javax.swing.JMenuItem();
            pasteMenuItem.setText("Paste");
            pasteMenuItem.setAccelerator(javax.swing.KeyStroke.getKeyStroke(
                    java.awt.event.KeyEvent.VK_V, java.awt.Event.CTRL_MASK,
                    true));
        }
        return pasteMenuItem;
    }

    /**
     * This method initializes jMenuItem
     *
     * @return javax.swing.JMenuItem
     */
    private javax.swing.JMenuItem getSaveMenuItem() {
        if (saveMenuItem == null) {
            saveMenuItem = new javax.swing.JMenuItem();
            saveMenuItem.setText("Save");
            saveMenuItem.setAccelerator(javax.swing.KeyStroke.getKeyStroke(
                    java.awt.event.KeyEvent.VK_S, java.awt.Event.CTRL_MASK,
                    true));
        }
        return saveMenuItem;
    }

    private void selectFile() {
        int returnVal = chooser.showSaveDialog(this);
        try {
            if (returnVal == JFileChooser.APPROVE_OPTION) {
                File file = chooser.getSelectedFile();
                url = file.getPath();
                jTextUrl.setText(url);
            }
        } catch (Exception ex) {
            ex.printStackTrace();
        }
    }

    private void createCsvFile() {
        schema = jTextSchema.getText();
        table = jTextTable.getText();
        url = jTextUrl.getText();
        // ÆþÎÏ¥Á¥§¥Ã¥¯
        if (schema.equals("") || table.equals("") || url.equals("")) {
            // System.out.println("system:"+system);
            jLabelMsg.setText("MSG:ÆþÎÏ¥¨¥é¡¼¤¬¤¢¤ê¤Þ¤¹¡£³Îǧ¤·¤Æ¤¯¤À¤µ¤¤");
            return;
        }

        jLabelMsg.setText("loadÃæ...");
        try {
            // JDBC¥É¥é¥¤¥Ð¤Î¥í¡¼¥É
            AS400 as400 = new AS400();
            AS400JDBCDataSource ds = new AS400JDBCDataSource(as400);
            Connection con = ds.getConnection();
            // SQL¥³¥ó¥Æ¥Ê¤ÎºîÀ®
            Statement stmt = con.createStatement();
            // SQLʸ¤Î¼Â¹Ô
            String sql = "select * from " + schema + "." + table;
            // System.out.println(sql);
            ResultSet rs = stmt.executeQuery(sql);
            // ResultSet¤«¤éResultSetMetaData(¥Æ¡¼¥Ö¥ë¤Î¥«¥é¥à¤Î̾Á°¡¢·¿¡¢¥µ¥¤¥º¾ðÊó¤ò¼èÆÀ

            ResultSetMetaData rsmeta = rs.getMetaData();
            int columnCount = rsmeta.getColumnCount();
            String[] columnNames = new String[columnCount];
            String[] columnTypes = new String[columnCount];
            for (int i = 0; i < columnCount; i++) {
                columnNames[i] = rsmeta.getColumnName(i + 1);
                columnTypes[i] = rsmeta.getColumnTypeName(i + 1);
            }

            StringBuffer str = new StringBuffer(4096);

            FileWriter fw = new FileWriter(url);
            BufferedWriter bw = new BufferedWriter(fw);
            // ¸¡º÷·ë²Ì¤Î¼è¤ê½Ð¤·
            while (rs.next()) {
                str.delete(0, 4095);
                for (int i = 0; i < columnCount; i++) {
                    if (rs.getString(i + 1) != null) {
                        if (columnTypes[i].equals("DATE")) {
                            str.append(rs.getDate(i + 1));
                        } else {
                            str.append(rs.getString(i + 1).trim());
                        }
                    }
                    if (i != columnCount - 1)
                        str.append(",");
                }

                str.append("\n");
                bw.write(str.toString());
                // System.out.println(str.toString());
            }
            // ¸¡º÷·ë²Ì¤Î¥¯¥í¡¼¥º
            rs.close();
            // SQL¥³¥ó¥Æ¥Ê¤Î¥¯¥í¡¼¥º
            stmt.close();
            // ¥Õ¥¡¥¤¥ë¤Î¥¯¥í¡¼¥º
            bw.flush();
            bw.close();
            fw.close();

        } catch (Exception ex) {
            ex.printStackTrace();
            // ¥¨¥é¡¼¤Î¥À¥¤¥¢¥í¥°¤òɽ¼¨
            JLabel label = new JLabel("¥¨¥é¡¼¤¬È¯À¸¤·¤Þ¤·¤¿", SwingConstants.CENTER);
            dialog = new JDialog(this, "¥¨¥é¡¼", true);
            dialog.getContentPane().add(label);
            dialog.setSize(200, 80);
            dialog.show();
        } finally {
            jLabelMsg.setText("MSG:CSV¥Õ¥¡¥¤¥ë¤ÎºîÀ®¤¬½ªÎ»¤·¤Þ¤·¤¿");
        }
    }

} // @jve:decl-index=0:visual-constraint="10,10"

¤³¤Î¥Ú¡¼¥¸¤Ø¤Î¥³¥á¥ó¥È

hQJcch Muchos Gracias for your blog.Really looking forward to read more.

0
Posted by tips about seo 2013ǯ12·î19Æü(ÌÚ) 10:04:51 ÊÖ¿®

gucmyM <a href="http://kziblciacogq.com/">kziblciacogq</a>, [url=http://plqjodveqcec.com/]plqjodveqcec[/url], [link=http://yhrjattwynwa.com/]yhrjattwynwa[/link], http://zbwnrrmglplx.com/

0
Posted by cfmcjnukkiu 2013ǯ11·î20Æü(¿å) 18:22:15 ÊÖ¿®

qzuWQo <a href="http://tzqmaeojbjtp.com/">tzqmaeojbjtp</a>, [url=http://fzjwtcethzka.com/]fzjwtcethzka[/url], [link=http://vgzkbtfdyxrw.com/]vgzkbtfdyxrw[/link], http://qkqhvplufukw.com/

0
Posted by lzpxivgaxg 2013ǯ11·î15Æü(¶â) 04:11:06 ÊÖ¿®

¥³¥á¥ó¥È¤ò¤«¤¯


¡Öhttp://¡×¤ò´Þ¤àÅê¹Æ¤Ï¶Ø»ß¤µ¤ì¤Æ¤¤¤Þ¤¹¡£

ÍøÍѵ¬Ìó¤ò¤´³Îǧ¤Î¤¦¤¨¤´µ­Æþ²¼¤µ¤¤

WikiÆ⸡º÷

Menu

¤³¤³¤Ï¼«Í³¤ËÊÔ½¸¤Ç¤­¤ë¥¨¥ê¥¢¤Ç¤¹¡£

¥á¥ó¥Ð¡¼¤Î¤ßÊÔ½¸¤Ç¤­¤Þ¤¹