gpt4 book ai didi

java - 为什么我不能将用户输入添加到前端为 java 和后端为 mysql 的数据库中?

转载 作者:搜寻专家 更新时间:2023-10-30 20:52:56 25 4
gpt4 key购买 nike

为部门创建表查询:创建表部门(department_id tinyint(2) zerofill not null auto_increment,department_name varchar(30) 唯一键,department_description 文本,主键(department_id));

java代码: 包hrmps;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import javax.swing.*;

class AddDepartment extends JPanel
{
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt)
{
String deptName=jTextField1.getText();
String deptDescription=jTextField2.getText();

Connection con=null;
PreparedStatement statement=null;
ResultSet rs=null;

String query="Insert into department values (?,?)";


try
{
Class.forName("com.mysql.jdbc.Driver");
con=DriverManager.getConnection("jdbc:mysql:///hrmps? zeroDateTimeBehavior=convertToNull","root","root");
statement=con.prepareStatement(query);
statement.setString(1,deptName);
statement.setString(2,deptDescription);
statement.execute();

int i=statement.executeUpdate();

if(i>0)

JOptionPane.showMessageDialog(null, "Record added");


else

JOptionPane.showMessageDialog(null, "Record couldn't be added");


con.close();
}

catch(Exception ex)
{
System.out.println(ex.getMessage());
}


} //end of method

}//类(class)结束

最佳答案

String deptName=jTextField1.getText();
String deptDescription=jTextField2.getText();

这两个语句是没有任何方法的。因此,它们在构造对象时执行,远早于用户有机会在文本字段中键入任何内容。

创建 jButton1ActionPerformed 方法的局部变量。只有单击按钮时,您才必须阅读文本字段包含的内容。

顺便说一句,发布的代码中的所有字段都应该是局部变量。当参数为 null 或空时,您的方法 isNullOrEmpty 返回 false。这很令人困惑。

关于java - 为什么我不能将用户输入添加到前端为 java 和后端为 mysql 的数据库中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35777868/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com