JButton运行main方法

时间:2013-12-31 07:48:04

标签: java swing text-mining

我正在做一些文本挖掘应用程序。它由TextRazor API Java Swing组成。如何使用JButton来运行main()课程?单击按钮后,必须触发main()类中的代码。以下是代码,请帮帮我。

private void jButton4ActionPerformed(java.awt.event.ActionEvent evt) {   
    //I want the main class to be called here** 
}
private void jButton5ActionPerformed(java.awt.event.ActionEvent evt) {         
    JOptionPane.showMessageDialog(null, "Completed Analysis!","Alert", 1);
    jButton5.setEnabled(false);
    jTextArea2.setEditable(false);
    jTextArea3.setEditable(false);
}   
    /**
     * @param args
     * @throws NetworkException 
     */
public static void main(String[] args) throws NetworkException, AnalysisException {

    // Sample request, showcasing a couple of TextRazor features
    String API_KEY = "7d5066bec76cb47f4eb4e557c60e9b979f9a748aacbdc5a44ef9375a";

    TextRazor client = new TextRazor(API_KEY);

    client.addExtractor("words");
    client.addExtractor("entities");
    client.addExtractor("entailments");
    client.addExtractor("senses");
    client.addExtractor("entity_companies");

    String rules = "entity_companies(CompanyEntity) :- entity_type(CompanyEntity, 'Company').";

    client.setRules(rules);

    AnalyzedText response = client.analyze("Barclays misled shareholders and the public RBS about one of the biggest investments in the bank's history, a BBC Panorama investigation has found.");

    for (Sentence sentence : response.getResponse().getSentences()) {
        for (Word word : sentence.getWords()) {
            System.out.println("----------------");
            System.out.println("Word: " + word.getLemma());

            for (Entity entity : word.getEntities()) {
                System.out.println("Matched Entity: " + entity.getEntityId());
            }
            for (Sense sense: word.getSenses()) {
                System.out.println("Word sense: " + sense.getSynset() + " has score: " + sense.getScore());
            }                
        }
    }

    // Use a custom rule to match 'Company' type entities

    for (Custom custom : response.getResponse().getCustomAnnotations()) {
        for (Custom.BoundVariable variable : custom.getContents()) {
            if (null != variable.getEntityValue()) {
                for (Entity entity : variable.getEntityValue()) {
                    System.out.println("Variable: " + variable.getKey() + " Value:" + entity.getEntityId());
                }
            }
        }
    }           
}

1 个答案:

答案 0 :(得分:4)

Class中的main方法也是一种常规方法,旨在通过JVM启动Java应用程序。但是,您也可以在方法中调用它

private void jButton5ActionPerformed(java.awt.event.ActionEvent evt) {         
    JOptionPane.showMessageDialog(null, "Completed Analysis!","Alert", 1);
    jButton5.setEnabled(false);
    jTextArea2.setEditable(false);
    jTextArea3.setEditable(false);
    ClassName.main(new String[]{"arg1","arg2"}); 
}  

添加伪参数以仅调用main方法