import javax.swing.*;
import java.awt.*;
import java.security.PublicKey;
import java.sql.*;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.time.LocalDateTime;
public class register_ui extends JFrame {
private final Dimension buttonSize = new Dimension(200, 100);
private final Font font = new Font("微软雅黑", Font.PLAIN, 20);
public static String c;
public register_ui() {
JFrame frame = new JFrame("注册");
frame.setDefaultCloseOperation(3);
frame.setBounds(500, 100, 600, 600);
JPanel panel = new JPanel(new GridBagLayout());
frame.setContentPane(panel);
GridBagConstraints constraints = new GridBagConstraints();
constraints.fill = GridBagConstraints.NONE;
constraints.anchor = GridBagConstraints.WEST;
constraints.insets = new Insets(10, 10, 10, 10);
JLabel label1 = new JLabel("学号/职工号:");
constraints.gridx = 0;
constraints.gridy = 0;
constraints.insets = new Insets(10, 10, 10, 10);
panel.add(label1, constraints);
JTextField textField1 = new JTextField(20);
constraints.gridx = 1;
constraints.gridy = 0;
panel.add(textField1, constraints);
JLabel label2 = new JLabel("密码:");
constraints.gridx = 0;
constraints.gridy = 1;
panel.add(label2, constraints);
JPasswordField passwordField = new JPasswordField(20);
constraints.gridx = 1;
constraints.gridy = 1;
panel.add(passwordField, constraints);
JLabel label3 = new JLabel("手机号:");
constraints.gridx = 0;
constraints.gridy = 2;
panel.add(label3, constraints);
JTextField textField3 = new JTextField(11);
constraints.gridx = 1;
constraints.gridy = 2;
panel.add(textField3, constraints);
JButton button0 = new JButton("发送验证码");
constraints.gridx = 2;
constraints.gridy = 2;
panel.add(button0, constraints);
JButton button = new JButton("确认注册");
constraints.gridx = 0;
constraints.gridy = 3;
constraints.gridwidth = 2;
constraints.insets = new Insets(20, 10, 10, 10);
panel.add(button, constraints);
JButton button2 = new JButton("返回上一步");
constraints.gridx = 0;
constraints.gridy = 4;
panel.add(button2, constraints);
button2.addActionListener((e) -> {
frame.dispose();
new login_ui();
});
button.addActionListener((e)->{
try {
String password = new String(passwordField.getPassword());
frame.dispose();
add(textField1.getText(),password);
new registerok_ui();
} catch (SQLException ex) {
throw new RuntimeException(ex);
}
}) ;
frame.setVisible(true);
}
protected void add(String text, String text1) throws SQLException {
String url = "jdbc:mysql:///test";
String username = "root";
String password = "000";
Connection conn = DriverManager.getConnection(url, username, password);
//定义插入的内容
String ID = text;
String password1 = text1;
//定义sql语句
String sql1 = "insert into lo_res(ID,password1) values(?,?);";
PreparedStatement pstmt = conn.prepareStatement(sql1);
//设置对应的参数
pstmt.setString(1, ID);
pstmt.setString(2, password1);
//执行sql
int count = pstmt.executeUpdate(); //影响的行数
//释放资源
if(count > 1) {
add_ui.setApp(ID); // 为app对象的ID属性赋值
}
pstmt.close();
conn.close();
}
}
import javax.swing.*;
import java.awt.*;
import java.sql.*;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.time.LocalDateTime;
import java.util.Date;
public class add_ui extends JFrame {
private final Dimension buttonSize = new Dimension(200, 100);
private final Font font = new Font("微软雅黑", Font.PLAIN, 20);
public static String app;
public static void setApp(String app) {
add_ui.app = app;
}
public add_ui() {
JFrame frame = new JFrame("验收申请");
frame.setDefaultCloseOperation(3);
frame.setBounds(500, 100, 600, 600);
JPanel panel = new JPanel(new GridBagLayout());
frame.setContentPane(panel);
GridBagConstraints constraints = new GridBagConstraints();
constraints.fill = GridBagConstraints.NONE;
constraints.anchor = GridBagConstraints.WEST;
constraints.insets = new Insets(10, 10, 10, 10);
JLabel text1 = new JLabel("学生姓名");
constraints.gridx = 0;
constraints.gridy = 1;
panel.add(text1, constraints);
JTextField textField1 = new JTextField(20);
constraints.gridx = 1;
panel.add(textField1, constraints);
JLabel text2 = new JLabel("验收教师姓名");
constraints.gridx = 0;
constraints.gridy = 2;
panel.add(text2, constraints);
JTextField textField2 = new JTextField(20);
constraints.gridx = 1;
panel.add(textField2, constraints);
JLabel text3 = new JLabel("标题");
constraints.gridx = 0;
constraints.gridy = 3;
panel.add(text3, constraints);
JTextField textField3 = new JTextField(20);
constraints.gridx = 1;
panel.add(textField3, constraints);
JLabel text4 = new JLabel("内容");
constraints.gridx = 0;
constraints.gridy = 4;
panel.add(text4, constraints);
JTextField textField4 = new JTextField(20);
constraints.gridx = 1;
panel.add(textField4, constraints);
JLabel text5 = new JLabel("验收时间");
constraints.gridx = 0;
constraints.gridy = 5;
panel.add(text5, constraints);
JTextField textField5 = new JTextField(20);
constraints.gridx = 1;
panel.add(textField5, constraints);
JButton button = new JButton("提交");
constraints.gridx = 0;
constraints.gridy = 6;
constraints.gridwidth = 2;
panel.add(button, constraints);
button.addActionListener((e)->{
try {
System.out.println(add_ui.app); //null
add(textField1.getText(),textField2.getText(),textField3.getText(),textField4.getText(),textField5.getText(),add_ui.app);
} catch (SQLException ex) {
throw new RuntimeException(ex);
}
}) ;
JButton backButton = new JButton("返回上步");
backButton.setPreferredSize(buttonSize);
backButton.setFont(font);
GridBagConstraints gbc4 = new GridBagConstraints();
gbc4.gridx = 0;
gbc4.gridy = 400;
gbc4.gridwidth = 1;
gbc4.gridheight = 1;
gbc4.fill = GridBagConstraints.HORIZONTAL;
gbc4.weightx = 0.5;
panel.add(backButton, gbc4);
backButton.addActionListener((e) -> {
frame.dispose();
new stu_ui();
});
frame.setVisible(true);
}
private void add(String text0,String text1, String text2, String text3, String text4,String text5) throws SQLException { //不用变
//连接
String url = "jdbc:mysql:///test";
String username = "root";
String password = "000";
Connection conn = DriverManager.getConnection(url, username, password);
//定义插入的内容
String stu_name = text0;//学生姓名
String tea_name = text1;//验收教师姓名
String title = text2;//标题
String des = text3;//描述
String input = text4;//验收时间
String ID = text5;
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
sdf.setLenient(false); // 禁用 lenient 模式
Date atime = null;
try {
atime = sdf.parse(input);
} catch (ParseException e) {
System.out.println("日期格式不正确!");
}
LocalDateTime time = LocalDateTime.now();
//定义sql语句
String sql1 = "insert into application(ID,stu_name,tea_name,title,des,atime,time) values(?,?,?,?,?,?,?);";
PreparedStatement pstmt = conn.prepareStatement(sql1);
//设置对应的参数
pstmt.setString(1, ID);
pstmt.setString(2, stu_name);
pstmt.setString(3, tea_name);
pstmt.setString(4, title);
pstmt.setString(5, des);
pstmt.setDate(6, new java.sql.Date(atime.getTime()));
pstmt.setTimestamp(7, Timestamp.valueOf(time));
//执行sql
int count = pstmt.executeUpdate(); //影响的行数
if(count > 0)
new addok();
//释放资源
pstmt.close();
conn.close();
}
}
第一段代码114行为add_ui的app赋值,但是在add_ui中的app仍是是null。