@Override public void actionPerformed(ActionEvent) { if (actionPerformed.getActionCommand().equals("修改")) { int id = 0; try { id = Integer.parseInt(typeTextField.getText()); } catch (NumberFormatException ex) { JOptionPane.showMessageDialog(null, "请输入正确的试题ID!"); return; } String type = typeTextField.getText(); String question = questionTextField.getText(); String optionA = optionATextField.getText(); String optionB = optionBTextField.getText(); String optionC = optionCTextField.getText(); String optionD = optionDTextField.getText(); String answer = answerTextField.getText(); String analysis = analysisTextField.getText(); if (question.equals("")) { JOptionPane.showMessageDialog(null, "请输入试题内容!"); return; } if (optionA.equals("") || optionB.equals("") || optionC.equals("") || optionD.equals("")) { JOptionPane.showMessageDialog(null, "请输入试题选项!"); return; } if (answer.equals("")) { JOptionPane.showMessageDialog(null, "请输入试题答案!"); return; } try { Class.forName(driver); Connection conn = DriverManager.getConnection(url, username, password); String sql = "UPDATE question SET type=?, question=?, optionA=?, optionB=?, optionC=?, optionD=?, answer=?, analysis=? WHERE type=?"; PreparedStatement pstmt = conn.prepareStatement(sql); pstmt.setString(1, type); pstmt.setString(2, question); pstmt.setString(3, optionA); pstmt.setString(4, optionB); pstmt.setString(5, optionC); pstmt.setString(6, optionD); pstmt.setStri
时间: 2024-02-14 12:14:20 浏览: 67
ng(7, answer);
pstmt.setString(8, analysis);
pstmt.setInt(9, id);
int result = pstmt.executeUpdate();
if (result > 0) {
JOptionPane.showMessageDialog(null, "修改成功!");
} else {
JOptionPane.showMessageDialog(null, "修改失败!");
}
pstmt.close();
conn.close();
} catch (ClassNotFoundException | SQLException ex) {
ex.printStackTrace();
}
} }
上面这段代码是什么作用?
相关问题
@Override public void actionPerformed(ActionEvent) { if (actionPerformed.getActionCommand().equals("修改")) { 修改
这段代码是一个事件监听器的实现,响应用户在界面上点击“修改”按钮的操作。当用户点击该按钮时,程序会首先判断用户是否输入了正确的试题ID和试题内容,并且这些内容都不能为空。然后,程序会连接数据库,执行一条SQL语句来修改试题的相关信息,包括试题类型、试题内容、选项、答案和解析。如果修改成功,则提示用户修改成功,否则提示用户修改失败。
public static void main(String[] args) throws Exception { JFrame frame=new JFrame("记事本程序"); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setSize(400,400); frame.setVisible(true); JTextField textField=new JTextField(); frame.add(textField); // 制作菜单栏 JMenuBar jMenuBar=new JMenuBar(); // 2个菜单文件和编辑 JMenu jMenu1=new JMenu("文件"); JMenu jMenu2=new JMenu("编辑"); // 菜单功能,按钮 JMenuItem jMenuItem1=new JMenuItem("打开"); jMenuItem1.addActionListener(new Hello()); jMenuItem1.setActionCommand("打开"); JMenuItem jMenuItem2=new JMenuItem("保存"); JMenuItem jMenuItem3=new JMenuItem("xing'j"); // 添加菜单栏 frame.setJMenuBar(jMenuBar); // 添加2个菜单 jMenuBar.add(jMenu1); jMenuBar.add(jMenu2); // 菜单加功能 jMenu1.add(jMenuItem1); jMenu2.add(jMenuItem2); } @Override public void actionPerformed(ActionEvent e) { if (e.getActionCommand().equals("打开")) { //文件选择框 JFileChooser fileChooser = new JFileChooser(); // 定义标题 fileChooser.setDialogTitle("选择文件"); // 设置默认路径 fileChooser.showOpenDialog(null); // 弹出窗口 fileChooser.setVisible(true); // 保存绝对路径 String address = fileChooser.getSelectedFile().getAbsolutePath(); try { FileReader fileReader = new FileReader(address); BufferedReader bufferedReader = new BufferedReader(fileReader); String str = ""; String strAll = ""; while ((str = bufferedReader.readLine()) != null) { strAll += str; } textField.setText(strAll); bufferedReader.close(); fileReader.close(); } catch (IOException fileNotFoundException) { fileNotFoundException.printStackTrace(); } } }
这段代码使用Java Swing编写了一个简单的记事本程序。程序打开后,会展示一个文本框和一个菜单栏,菜单栏包括文件和编辑两个菜单。文件菜单下有打开和保存功能,编辑菜单下有一个名为“xing'j”的按钮,但没有实现具体功能。当点击打开菜单下的打开功能时,会弹出一个文件选择框,用户可以选择任意一个文件,程序会将文件内容读入到文本框中展示出来。
阅读全文