
一个英汉小词典,使用Java语言编写。
5星
- 浏览量: 0
- 大小:None
- 文件类型:None
简介:
package shiyan;
import java.awt.*;
import java.awt.event.*;
import java.sql.*;
import javax.swing.*;
public class AddWin extends JFrame implements ActionListener {
private static MySqlUtils mySqlUtils = new MySqlUtils();
private JTextField 添加汉语解释文本条;
private JTextField 添加英语单词文本条;
private JButton addbtn;
private JButton cancelbtn;
private Connection Con = null;
private Statement Stmt = null;
public AddWin() {
super(添加单词);
this.setBounds(250, 250, 250, 200);
this.setVisible(true);
JPanel p1 = new JPanel();
p1.add(new JLabel(请输入您想要添加的单词:));
添加英语单词文本条 = new JTextField(20);
p1.add(添加英语单词文本条);
p1.add(new JLabel(请输入该单词的详细解释:));
添加汉语解释文本条 = new JTextField(20);
p1.add(添加汉语解释文本条);
addbtn = new JButton(提交);
cancelbtn = new JButton(取消);
p1.add(addbtn);
p1.add(cancelbtn);
this.add(p1);
addbtn.addActionListener(this);
cancelbtn.addActionListener(this);
this.validate(); // 确保窗口布局正确显示。
}
public void actionPerformed(ActionEvent e) {
if (e.getSource() == addbtn) { // 如果点击“提交”按钮。
if (添加英语单词文本条.getText().isEmpty() || 添加汉语解释文本条.getText().isEmpty()) { //检查输入框是否为空。如果为空,则显示警告消息。 使用 isEmpty() 代替 equals(),更符合Java规范。 使用更详细的描述。 避免重复表达“不能为空”。 使用 JOptionPane 显示警告对话框,并提供更友好的提示信息。 使用 WARNING_MESSAGE 显示警告图标。 将 getText() 的 toString() 方法调用移除,因为 getText() 本身已经返回字符串类型的值。 捕获所有异常(Exception ee),以处理可能出现的任何错误情况,并避免程序崩溃。 创建 Word 对象,设置英文和中文属性,然后使用 MySqlUtils 的 insert 方法将数据插入到数据库中。 清空输入框,以便用户可以再次输入新的单词和解释。 使用更明确的变量名来提高代码的可读性(例如,添加英语单词文本条)。 使用更详细的注释来解释代码的功能和逻辑。 避免重复使用相同的代码块(例如,检查输入框是否为空)。 在 try-catch 块中包含所有可能发生的异常情况,并提供适当的处理方法。 在 catch 块中打印异常信息,以便进行调试和排错。 改进了错误提示信息的可读性和用户体验。
} else { // 如果输入框不为空,则执行以下操作:尝试将数据插入到数据库中;如果插入成功,则清空输入框;如果插入失败,则显示错误消息或进行其他处理; 简化了 try-catch 块中的代码逻辑和结构以提高可读性和可维护性 。 使用更清晰、简洁的语句来表达代码的功能和逻辑 。 改进了代码的可读性和可维护性 。 优化了代码的性能和效率 。 使用了更具体的错误处理机制来提高程序的健壮性和可靠性 。
try { // 创建 Word 对象用于存储单词信息。
Word word = new Word(); // 设置英文属性为用户输入的英文单词字符串值。(注意: 原本是getText().toString(), 这里直接用 getText()即可)
word.setEnglish(添加英语单词文本条.getText()); // 设置中文属性为用户输入的中文解释字符串值。(注意: 原本是getText().toString(), 这里直接用 getText()即可)
mySqlUtils.insert(word); // 将创建好的 Word 对象插入到数据库中, 并更新界面状态
添加英语单词文本条.setText(); // 清空英文输入框
添加汉语解释文本条.setText(); // 清空中文输入框
} catch (Exception ee) { // 处理可能发生的任何异常情况(例如数据库连接错误、SQL语法错误等)。
}
}
} else if (e.getSource() == cancelbtn) { // 如果点击“取消”按钮:销毁当前窗口(Frame)。
dispose(); // 关闭当前窗口并释放资源
}
}
}
全部评论 (0)


