From 30a7e64b9ea38b5a2e7cee7c76451d908c60a47c Mon Sep 17 00:00:00 2001 From: 86184 <86184@LAPTOP-H62NC2FB> Date: Wed, 18 Aug 2021 14:05:21 +0800 Subject: [PATCH 01/24] =?UTF-8?q?=E5=BB=BA=E7=AB=8B=E4=BA=86=E4=B8=80?= =?UTF-8?q?=E4=B8=AA=E7=99=BB=E5=BD=95=E7=95=8C=E9=9D=A2=E7=9A=84=E7=BB=84?= =?UTF-8?q?=E4=BB=B6=EF=BC=8C=E6=8E=A5=E4=B8=8B=E6=9D=A5=E5=85=88=E5=BC=84?= =?UTF-8?q?=E6=95=B0=E6=8D=AE=E5=BA=93?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/database/SystemLogin.java | 53 +++++++++++++++++++++++++++++++++++ src/database/TextSwing.java | 10 +++++++ 2 files changed, 63 insertions(+) create mode 100644 src/database/SystemLogin.java create mode 100644 src/database/TextSwing.java diff --git a/src/database/SystemLogin.java b/src/database/SystemLogin.java new file mode 100644 index 0000000..f9def9a --- /dev/null +++ b/src/database/SystemLogin.java @@ -0,0 +1,53 @@ +package database; + +import java.awt.*; +import javax.swing.*; + +/** + * 系统登录界面 + * @author 86184 + * + */ + +public class SystemLogin extends JFrame{ + JTextField account,password; + JButton t,f; + public SystemLogin() { + setVisible(true); + init(); + setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); + } + void init() { + setLayout(new FlowLayout()); + setTitle("系统登录"); + setBounds(200,300,350,200); + JButton t,f; + //使用BoxLayout,分为2行2列 + Box h1,h2;//账户密码 + Box v1,v2;//两个文本框 + + h1=Box.createHorizontalBox(); + h2=Box.createHorizontalBox(); + v1=Box.createVerticalBox(); + v2=Box.createVerticalBox(); + + //添加组件到窗口 + v1.add(new JLabel("学号/工号:")); + v1.add(new JLabel("密 码:")); + h1.add(v1); + + v2.add(new JTextField(10)); + v2.add(new JTextField(10)); + h1.add(v2); + + t=new JButton("确定"); + f=new JButton("取消"); + v1.add(t); + v2.add(f); + h2.add(v1); + h2.add(v2); + + add(h1); + add(h2); + } +} diff --git a/src/database/TextSwing.java b/src/database/TextSwing.java new file mode 100644 index 0000000..44be00d --- /dev/null +++ b/src/database/TextSwing.java @@ -0,0 +1,10 @@ +package database; + +public class TextSwing { + + public static void main(String[] args) { + // TODO Auto-generated method stub + SystemLogin a=new SystemLogin(); + } + +} -- Gitee From 441dbf413e8d2a4e41365835a23159a4556e0213 Mon Sep 17 00:00:00 2001 From: 86184 <86184@LAPTOP-H62NC2FB> Date: Wed, 18 Aug 2021 15:34:43 +0800 Subject: [PATCH 02/24] =?UTF-8?q?=E5=BB=BA=E7=AB=8B=E4=BA=86=E7=AE=A1?= =?UTF-8?q?=E7=90=86=E5=91=98=EF=BC=8C=E5=AD=A6=E7=94=9F=EF=BC=8C=E8=80=81?= =?UTF-8?q?=E5=B8=88=E7=9A=84=E8=B4=A6=E5=8F=B7=E5=92=8C=E5=AF=86=E7=A0=81?= =?UTF-8?q?=E4=BB=A5=E5=8F=8A=E5=92=8C=E5=AD=A6=E7=94=9F=E4=BF=A1=E6=81=AF?= =?UTF-8?q?=E7=9A=84=E6=95=B0=E6=8D=AE=E5=BA=93=EF=BC=88=E8=BF=98=E6=B2=A1?= =?UTF-8?q?=E8=BF=9E=E6=8E=A5=E8=B5=B7=E6=9D=A5=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/database/SystemLogin.java | 2 +- src/database/TextSwing.java | 1 - 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/src/database/SystemLogin.java b/src/database/SystemLogin.java index f9def9a..9ed14dd 100644 --- a/src/database/SystemLogin.java +++ b/src/database/SystemLogin.java @@ -14,7 +14,7 @@ public class SystemLogin extends JFrame{ JButton t,f; public SystemLogin() { setVisible(true); - init(); + init(); setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); } void init() { diff --git a/src/database/TextSwing.java b/src/database/TextSwing.java index 44be00d..638dcc4 100644 --- a/src/database/TextSwing.java +++ b/src/database/TextSwing.java @@ -6,5 +6,4 @@ public class TextSwing { // TODO Auto-generated method stub SystemLogin a=new SystemLogin(); } - } -- Gitee From 2ae398a8672d0cb948d748f3861b63bb64f9bed3 Mon Sep 17 00:00:00 2001 From: 86184 <86184@LAPTOP-H62NC2FB> Date: Wed, 18 Aug 2021 18:00:22 +0800 Subject: [PATCH 03/24] =?UTF-8?q?=E5=8A=A0=E4=BA=86=E4=B8=80=E4=B8=AA?= =?UTF-8?q?=E7=82=B9=E5=87=BB=E5=8F=96=E6=B6=88=E6=97=B6=E5=85=B3=E9=97=AD?= =?UTF-8?q?=E7=99=BB=E5=BD=95=E7=95=8C=E9=9D=A2=E7=AA=97=E5=8F=A3=E7=9A=84?= =?UTF-8?q?=E5=8A=9F=E8=83=BD=E5=92=8C=E4=B8=80=E4=B8=AA=E6=9F=A5=E8=AF=A2?= =?UTF-8?q?=E6=95=B0=E6=8D=AE=E5=BA=93=E7=9A=84=E7=B1=BBQuery?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/database/Query.java | 74 +++++++++++++++++++++++++++++++++++ src/database/SystemLogin.java | 12 +++++- 2 files changed, 84 insertions(+), 2 deletions(-) create mode 100644 src/database/Query.java diff --git a/src/database/Query.java b/src/database/Query.java new file mode 100644 index 0000000..29f7eed --- /dev/null +++ b/src/database/Query.java @@ -0,0 +1,74 @@ +package database; +import java.sql.*; + +/** + * 查询、提取数据库数据 + * @author lsj + * + */ + +public class Query { + String databaseName="";//数据库名称 + String SQL;//SQL语句 + String [] columnName;//列名 + String [][] record;//数据项 + + public Query() { + try { + Class.forName("org.apache.derby.jdbc.EmbeddedDriver"); + } + catch(Exception e) { + System.out.println(e); + } + } + //获取数据库名字 + public void setDatabaseName(String s) { + databaseName=s.trim(); + } + //获取SQL语句 + public void setSQL(String s) { + SQL=s.trim(); + } + //返回列名 + public String [] getColumnName() { + return columnName; + } + //返回数据项 + public String[][] getRecord(){ + return record; + } + + public void startQuery() { + Connection con; + Statement sql; + ResultSet rs; + try { + String uri="jdbc:derby:"+databaseName+";create=true"; + con=DriverManager.getConnection(uri); + sql=con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY); + rs=sql.executeQuery(SQL); + //ResultSet对象rs调用getMetaData()方法返回一个ResultSetMetaData对象(结果集的元数据对象) + ResultSetMetaData metaData=rs.getMetaData(); + int columnCount=metaData.getColumnCount();//字段数目 + columnName=new String[columnCount]; + for(int i=1;i<=columnCount;i++) { + columnName[i-1]=metaData.getColumnName(i); + } + rs.last(); + int recordAmount=rs.getRow();//结果集中的记录,如最后一行为第五行,则recordAmount为5 + record=new String[recordAmount][columnCount]; + int i=0; + rs.beforeFirst(); + while(rs.next()) { + for(int j=1;j<=columnCount;j++) { + record[i][j-1]=rs.getString(j); + } + i++; + } + con.close(); + } + catch(SQLException e) { + System.out.println("请输入正确的表名"+e); + } +} +} diff --git a/src/database/SystemLogin.java b/src/database/SystemLogin.java index 9ed14dd..a046835 100644 --- a/src/database/SystemLogin.java +++ b/src/database/SystemLogin.java @@ -1,11 +1,12 @@ package database; import java.awt.*; +import java.awt.event.*; import javax.swing.*; /** * 系统登录界面 - * @author 86184 + * @author lsj * */ @@ -40,7 +41,7 @@ public class SystemLogin extends JFrame{ v2.add(new JTextField(10)); h1.add(v2); - t=new JButton("确定"); + t=new JButton("登录"); f=new JButton("取消"); v1.add(t); v2.add(f); @@ -49,5 +50,12 @@ public class SystemLogin extends JFrame{ add(h1); add(h2); + + //点击取消按钮关闭窗口 + f.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent e) { + System.exit(0); + } + }); } } -- Gitee From 72536e7435af75ce2c20c5ff35cd30cee79af8bd Mon Sep 17 00:00:00 2001 From: 86184 <86184@LAPTOP-H62NC2FB> Date: Fri, 20 Aug 2021 23:19:22 +0800 Subject: [PATCH 04/24] =?UTF-8?q?=E5=BC=84=E4=BA=86=E8=BE=A8=E5=88=AB?= =?UTF-8?q?=E7=99=BB=E5=BD=95=E8=80=85=E8=BA=AB=E4=BB=BD=E7=9A=84=E7=9B=91?= =?UTF-8?q?=E8=A7=86=E5=99=A8=EF=BC=8C=E4=BD=86=E6=98=AF=E5=87=BA=E7=8E=B0?= =?UTF-8?q?=E4=BA=86bug=EF=BC=8C=E8=BF=98=E5=9C=A8=E4=BF=AE=E5=A4=8D?= =?UTF-8?q?=E4=B8=AD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/database/E.java | 32 ++++++++++++++++++ src/database/Query.java | 6 +--- src/database/Role.java | 61 +++++++++++++++++++++++++++++++++++ src/database/SystemLogin.java | 49 +++++++++++++++------------- src/database/TextSwing.java | 2 +- 5 files changed, 122 insertions(+), 28 deletions(-) create mode 100644 src/database/E.java create mode 100644 src/database/Role.java diff --git a/src/database/E.java b/src/database/E.java new file mode 100644 index 0000000..4cbe3b8 --- /dev/null +++ b/src/database/E.java @@ -0,0 +1,32 @@ +package database; + +import java.awt.*; +import java.awt.event.*; +import javax.swing.*; + +public class E extends JFrame implements ActionListener{ + JTextField a; + JButton b; + public E() { + setVisible(true); + init(); + setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); + } + public void init() { + setLayout(new FlowLayout()); + setTitle("系统登录"); + setBounds(200,300,350,200); + a=new JTextField(10); + b=new JButton("确定"); + b.addActionListener(this); + add(a); + add(b); + } + + public void actionPerformed(ActionEvent e) { + if(a.getText()=="123") + JOptionPane.showMessageDialog(null,"实验失败","消息对话框",JOptionPane.WARNING_MESSAGE); + else + System.out.println(a.getText()); + } +} diff --git a/src/database/Query.java b/src/database/Query.java index 29f7eed..3454b62 100644 --- a/src/database/Query.java +++ b/src/database/Query.java @@ -21,10 +21,6 @@ public class Query { System.out.println(e); } } - //获取数据库名字 - public void setDatabaseName(String s) { - databaseName=s.trim(); - } //获取SQL语句 public void setSQL(String s) { SQL=s.trim(); @@ -43,7 +39,7 @@ public class Query { Statement sql; ResultSet rs; try { - String uri="jdbc:derby:"+databaseName+";create=true"; + String uri="jdbc:derby:学生信息管理系统;create=true"; con=DriverManager.getConnection(uri); sql=con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY); rs=sql.executeQuery(SQL); diff --git a/src/database/Role.java b/src/database/Role.java new file mode 100644 index 0000000..b94707b --- /dev/null +++ b/src/database/Role.java @@ -0,0 +1,61 @@ +package database; + +import java.awt.*; +import javax.swing.*; +import java.awt.event.*; +import java.sql.*; +/** + * 辨别登录者身份 + * @author lsj + * + */ +public class Role implements ActionListener{ + Query query; + String s;//记录登陆者身份 + JTextField account,password; + //获取账号和密码 + public void setAcoount(JTextField account) { + this.account=account; + } + public void setPassword(JTextField password) { + this.password=password; + } + + public Role() { + query=new Query(); + } + + public void actionPerformed(ActionEvent e) { + String SQL="select * from zhanghao"; + try { + System.out.println(account.getText()); + query.setSQL(SQL); + query.startQuery(); + String [][]record=query.getRecord();//获得zhanghao的数据 + int m=0; + for(int i=0;i<=record.length;i++) { + if(account.getText()==record[i][0].trim()) { + if(password.getText()==record[i][1]) { + s=record[i][2].trim(); + m=1; + break; + } + } + } + if(m==0) { + JOptionPane.showMessageDialog(null,"账号或密码错误","消息对话框",JOptionPane.WARNING_MESSAGE); + } + if(s=="管理员") { + JOptionPane.showMessageDialog(null,"实验成功","消息对话框",JOptionPane.WARNING_MESSAGE); + } + else { + JOptionPane.showMessageDialog(null,"账号或密码错误","消息对话框",JOptionPane.WARNING_MESSAGE); + } + } + catch(Exception exp) {} + } + public String getRole() { + return s; + } + +} diff --git a/src/database/SystemLogin.java b/src/database/SystemLogin.java index a046835..c23b489 100644 --- a/src/database/SystemLogin.java +++ b/src/database/SystemLogin.java @@ -13,49 +13,54 @@ import javax.swing.*; public class SystemLogin extends JFrame{ JTextField account,password; JButton t,f; + Role role; + String s;//记录登陆者身份 + public SystemLogin() { setVisible(true); init(); + f();//登录和注册认证 setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); } - void init() { + public void init() { setLayout(new FlowLayout()); setTitle("系统登录"); setBounds(200,300,350,200); - JButton t,f; + JLabel a=new JLabel("学号/工号:"); + JLabel b=new JLabel("密 码:"); + a.setFont(new Font("宋体",Font.BOLD,20)); + b.setFont(new Font("宋体",Font.BOLD,20)); + + t=new JButton("注册"); + f=new JButton("登录"); //使用BoxLayout,分为2行2列 - Box h1,h2;//账户密码 + Box h1;//账户密码 Box v1,v2;//两个文本框 h1=Box.createHorizontalBox(); - h2=Box.createHorizontalBox(); v1=Box.createVerticalBox(); v2=Box.createVerticalBox(); //添加组件到窗口 - v1.add(new JLabel("学号/工号:")); - v1.add(new JLabel("密 码:")); + v1.add(a); + v1.add(b); + v1.add(t); h1.add(v1); - v2.add(new JTextField(10)); - v2.add(new JTextField(10)); - h1.add(v2); - - t=new JButton("登录"); - f=new JButton("取消"); - v1.add(t); + v2.add(new JTextField(15)); + v2.add(new JTextField(15)); v2.add(f); - h2.add(v1); - h2.add(v2); + h1.add(v2); add(h1); - add(h2); - //点击取消按钮关闭窗口 - f.addActionListener(new ActionListener() { - public void actionPerformed(ActionEvent e) { - System.exit(0); - } - }); + } + + public void f() { + role=new Role(); + role.setAcoount(account); + role.setPassword(password); + f.addActionListener(role); + s=role.getRole(); } } diff --git a/src/database/TextSwing.java b/src/database/TextSwing.java index 638dcc4..9ef9e3b 100644 --- a/src/database/TextSwing.java +++ b/src/database/TextSwing.java @@ -4,6 +4,6 @@ public class TextSwing { public static void main(String[] args) { // TODO Auto-generated method stub - SystemLogin a=new SystemLogin(); + new E(); } } -- Gitee From 068ec303ea254275d2904c9bc71285d13e2afbf2 Mon Sep 17 00:00:00 2001 From: 86184 <86184@LAPTOP-H62NC2FB> Date: Sat, 21 Aug 2021 00:24:23 +0800 Subject: [PATCH 05/24] =?UTF-8?q?bug=E4=BF=AE=E5=A4=8D=E4=BA=86=EF=BC=8C?= =?UTF-8?q?=E5=8A=9F=E8=83=BD=E8=BF=98=E6=B2=A1=E5=AE=8C=E5=96=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/database/E.java | 6 +++--- src/database/Role.java | 17 ++++++++--------- src/database/SystemLogin.java | 8 +++++--- src/database/TextSwing.java | 2 +- 4 files changed, 17 insertions(+), 16 deletions(-) diff --git a/src/database/E.java b/src/database/E.java index 4cbe3b8..cbcce1e 100644 --- a/src/database/E.java +++ b/src/database/E.java @@ -24,9 +24,9 @@ public class E extends JFrame implements ActionListener{ } public void actionPerformed(ActionEvent e) { - if(a.getText()=="123") - JOptionPane.showMessageDialog(null,"实验失败","消息对话框",JOptionPane.WARNING_MESSAGE); + if(a.getText().equals("123")) + JOptionPane.showMessageDialog(null,a.getText(),"消息对话框",JOptionPane.WARNING_MESSAGE); else - System.out.println(a.getText()); + System.out.println(a.getText()); } } diff --git a/src/database/Role.java b/src/database/Role.java index b94707b..fa66675 100644 --- a/src/database/Role.java +++ b/src/database/Role.java @@ -14,11 +14,11 @@ public class Role implements ActionListener{ String s;//记录登陆者身份 JTextField account,password; //获取账号和密码 - public void setAcoount(JTextField account) { - this.account=account; + public void setAcoount(JTextField a) { + account=a; } - public void setPassword(JTextField password) { - this.password=password; + public void setPassword(JTextField p) { + password=p; } public Role() { @@ -28,14 +28,13 @@ public class Role implements ActionListener{ public void actionPerformed(ActionEvent e) { String SQL="select * from zhanghao"; try { - System.out.println(account.getText()); query.setSQL(SQL); query.startQuery(); String [][]record=query.getRecord();//获得zhanghao的数据 int m=0; for(int i=0;i<=record.length;i++) { - if(account.getText()==record[i][0].trim()) { - if(password.getText()==record[i][1]) { + if(account.getText().equals(record[i][0].trim())) { + if(password.getText().equals(record[i][1].trim())) { s=record[i][2].trim(); m=1; break; @@ -45,7 +44,7 @@ public class Role implements ActionListener{ if(m==0) { JOptionPane.showMessageDialog(null,"账号或密码错误","消息对话框",JOptionPane.WARNING_MESSAGE); } - if(s=="管理员") { + if(s.equals("管理员")) { JOptionPane.showMessageDialog(null,"实验成功","消息对话框",JOptionPane.WARNING_MESSAGE); } else { @@ -57,5 +56,5 @@ public class Role implements ActionListener{ public String getRole() { return s; } - + } diff --git a/src/database/SystemLogin.java b/src/database/SystemLogin.java index c23b489..a878eb4 100644 --- a/src/database/SystemLogin.java +++ b/src/database/SystemLogin.java @@ -30,6 +30,8 @@ public class SystemLogin extends JFrame{ JLabel b=new JLabel("密 码:"); a.setFont(new Font("宋体",Font.BOLD,20)); b.setFont(new Font("宋体",Font.BOLD,20)); + account=new JTextField(15); + password=new JTextField(15); t=new JButton("注册"); f=new JButton("登录"); @@ -47,8 +49,8 @@ public class SystemLogin extends JFrame{ v1.add(t); h1.add(v1); - v2.add(new JTextField(15)); - v2.add(new JTextField(15)); + v2.add(account); + v2.add(password); v2.add(f); h1.add(v2); @@ -61,6 +63,6 @@ public class SystemLogin extends JFrame{ role.setAcoount(account); role.setPassword(password); f.addActionListener(role); - s=role.getRole(); + } } diff --git a/src/database/TextSwing.java b/src/database/TextSwing.java index 9ef9e3b..27e1c48 100644 --- a/src/database/TextSwing.java +++ b/src/database/TextSwing.java @@ -4,6 +4,6 @@ public class TextSwing { public static void main(String[] args) { // TODO Auto-generated method stub - new E(); + new SystemLogin(); } } -- Gitee From 1e42fb3b4872a7560b9501ba180a0a24a02a7458 Mon Sep 17 00:00:00 2001 From: 86184 <86184@LAPTOP-H62NC2FB> Date: Sat, 21 Aug 2021 11:46:55 +0800 Subject: [PATCH 06/24] =?UTF-8?q?=E5=88=A0=E6=8E=89=E4=BA=86Role=E3=80=82?= =?UTF-8?q?=E6=8A=8A=E4=BB=A3=E7=A0=81=E7=9B=B4=E6=8E=A5=E5=8A=A0=E5=88=B0?= =?UTF-8?q?SystemLogin=E4=B8=AD=E3=80=82=E4=BB=A5=E4=BE=BF=E5=AE=9E?= =?UTF-8?q?=E7=8E=B0=E7=99=BB=E5=BD=95=E5=90=8E=E5=85=B3=E9=97=AD=E7=99=BB?= =?UTF-8?q?=E5=BD=95=E7=AA=97=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/database/Administrator.java | 18 ++++++ src/database/E.java | 99 +++++++++++++++++++++++---------- src/database/SystemLogin.java | 46 +++++++++++---- src/database/TextSwing.java | 6 +- 4 files changed, 125 insertions(+), 44 deletions(-) create mode 100644 src/database/Administrator.java diff --git a/src/database/Administrator.java b/src/database/Administrator.java new file mode 100644 index 0000000..a8b59e8 --- /dev/null +++ b/src/database/Administrator.java @@ -0,0 +1,18 @@ +package database; +import java.awt.*; +import java.awt.event.*; +import javax.swing.*; + +public class Administrator extends JFrame{ + public Administrator() { + + init(); + } + public void init() { + setVisible(true); + setLayout(new FlowLayout()); + setTitle("系统登录"); + setBounds(200,300,350,200); + setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); + } +} diff --git a/src/database/E.java b/src/database/E.java index cbcce1e..09d4de2 100644 --- a/src/database/E.java +++ b/src/database/E.java @@ -1,32 +1,73 @@ package database; -import java.awt.*; -import java.awt.event.*; -import javax.swing.*; - -public class E extends JFrame implements ActionListener{ - JTextField a; - JButton b; - public E() { - setVisible(true); - init(); - setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); - } - public void init() { - setLayout(new FlowLayout()); - setTitle("系统登录"); - setBounds(200,300,350,200); - a=new JTextField(10); - b=new JButton("确定"); - b.addActionListener(this); - add(a); - add(b); - } - - public void actionPerformed(ActionEvent e) { - if(a.getText().equals("123")) - JOptionPane.showMessageDialog(null,a.getText(),"消息对话框",JOptionPane.WARNING_MESSAGE); - else - System.out.println(a.getText()); - } +import java.awt.event.ActionEvent; + +import java.awt.event.ActionListener; + +import javax.swing.JButton; + +import javax.swing.JFrame; + +import javax.swing.SwingUtilities; + +public class E extends JFrame implements ActionListener + +{ +private JButton btn; + +public E() + +{ +super("Simple GUI"); + +setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + +btn = new JButton("Open the other JFrame!"); + +btn.addActionListener(this); + +btn.setActionCommand("Open"); + +add(btn); + +pack(); + } + +@Override + +public void actionPerformed(ActionEvent e) + +{ +String cmd = e.getActionCommand(); + +if(cmd.equals("Open")) + +{ +dispose(); + +new TextSwing(); + +} + +} + +public static void main(String[] args) + +{ +SwingUtilities.invokeLater(new Runnable(){ +@Override + +public void run() + +{ +new E().setVisible(true); + +} + +}); + +} + +} + diff --git a/src/database/SystemLogin.java b/src/database/SystemLogin.java index a878eb4..e79ffad 100644 --- a/src/database/SystemLogin.java +++ b/src/database/SystemLogin.java @@ -10,16 +10,14 @@ import javax.swing.*; * */ -public class SystemLogin extends JFrame{ +public class SystemLogin extends JFrame implements ActionListener{ JTextField account,password; JButton t,f; - Role role; + Query query; String s;//记录登陆者身份 - public SystemLogin() { setVisible(true); init(); - f();//登录和注册认证 setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); } public void init() { @@ -55,14 +53,40 @@ public class SystemLogin extends JFrame{ h1.add(v2); add(h1); - + f.addActionListener(this); } - public void f() { - role=new Role(); - role.setAcoount(account); - role.setPassword(password); - f.addActionListener(role); - + public void actionPerformed(ActionEvent e) { + String SQL="select * from zhanghao"; + query=new Query(); + try { + query.setSQL(SQL); + query.startQuery(); + String [][]record=query.getRecord();//获得zhanghao的数据 + int m=0; + for(int i=0;i<=record.length;i++) { + if(account.getText().equals(record[i][0].trim())) { + if(password.getText().equals(record[i][1].trim())) { + s=record[i][2].trim(); + m=1; + break; + } + } + } + if(m==0) { + JOptionPane.showMessageDialog(null,"账号或密码错误","消息对话框",JOptionPane.WARNING_MESSAGE); + } + else if(s.equals("教师")) { + JOptionPane.showMessageDialog(null,s,"消息对话框",JOptionPane.WARNING_MESSAGE); + } + else if(s.equals("学生")){ + JOptionPane.showMessageDialog(null,s,"消息对话框",JOptionPane.WARNING_MESSAGE); + } + else if(s.equals("管理员")) { + this.dispose(); + Administrator ad=new Administrator(); + } + } + catch(Exception exp) {} } } diff --git a/src/database/TextSwing.java b/src/database/TextSwing.java index 27e1c48..f1fe206 100644 --- a/src/database/TextSwing.java +++ b/src/database/TextSwing.java @@ -1,9 +1,7 @@ package database; public class TextSwing { - - public static void main(String[] args) { - // TODO Auto-generated method stub + public static void main(String args[]) { new SystemLogin(); } -} +} \ No newline at end of file -- Gitee From 58012a2607bd0d0ebdc6ecd7e7e8ed2ccac6286c Mon Sep 17 00:00:00 2001 From: 86184 <86184@LAPTOP-H62NC2FB> Date: Sat, 21 Aug 2021 13:18:20 +0800 Subject: [PATCH 07/24] =?UTF-8?q?=E5=8A=A0=E4=BA=86=E4=B8=80=E4=B8=AAAdmin?= =?UTF-8?q?istrator=EF=BC=8C=E7=AE=A1=E7=90=86=E8=80=85=E7=9A=84=E7=AE=A1?= =?UTF-8?q?=E7=90=86=E7=95=8C=E9=9D=A2=EF=BC=8C=E5=B7=B2=E5=AE=9E=E7=8E=B0?= =?UTF-8?q?=E9=83=A8=E5=88=86=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/database/Administrator.java | 76 ++++++++++++++++++++++++++++++--- 1 file changed, 70 insertions(+), 6 deletions(-) diff --git a/src/database/Administrator.java b/src/database/Administrator.java index a8b59e8..b704a44 100644 --- a/src/database/Administrator.java +++ b/src/database/Administrator.java @@ -2,17 +2,81 @@ package database; import java.awt.*; import java.awt.event.*; import javax.swing.*; +import java.sql.*; -public class Administrator extends JFrame{ +public class Administrator extends JFrame implements ActionListener{ + Query query; + JTable table; + JScrollPane p; + String []head= {"学号","姓名","性别","出生","籍贯","专业","班级","联系方式","技能"}; + String [][]a= {{"","","","","","","","",""}};//更新时装载信息的载体 + + JButton by;//备用 + JMenuBar menubar; + JMenu menu,subMenu; + JMenuItem item1,item2,item3,item4,item5; public Administrator() { - - init(); - } - public void init() { setVisible(true); - setLayout(new FlowLayout()); + setLayout(new BorderLayout()); setTitle("系统登录"); setBounds(200,300,350,200); setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); + init(); } + public void init() { + + + menubar=new JMenuBar(); + menu=new JMenu("管理"); + subMenu=new JMenu("修改信息"); + item1=new JMenuItem("查询信息"); + item1.addActionListener(this); + item2=new JMenuItem("审核信息"); + item3=new JMenuItem("添加信息"); + item3.addActionListener(this); + item4=new JMenuItem("删除信息"); + item5=new JMenuItem("修改信息"); + + subMenu.add(item3); + subMenu.add(item4); + subMenu.add(item5); + + menu.add(item1); + menu.add(subMenu); + menu.add(item2); + + menubar.add(menu); + setJMenuBar(menubar); + } + + public void actionPerformed(ActionEvent e) { + query=new Query(); + //查询信息 + if(e.getSource()==item1) { + try { + query.setSQL("select * from student"); + query.startQuery(); + String []ziduan=query.getColumnName();//获得student的列名 + String [][]record=query.getRecord();//获得student的数据 + table=new JTable(record,ziduan); + p=new JScrollPane(table); + by=new JButton("刷新"); + add(p,BorderLayout.CENTER); + add(by,BorderLayout.SOUTH); + } + catch(Exception exp) {} + } + //添加信息 + if(e.getSource()==item3) { + table=new JTable(a,head); + table.setFont(new Font("宋体",Font.BOLD,16)); + table.setRowHeight(40); + p=new JScrollPane(table); + by=new JButton("添加"); + add(p,BorderLayout.CENTER); + add(by,BorderLayout.SOUTH); + } + + } +} \ No newline at end of file -- Gitee From eb4971542f454e4852730fd4161ded1f718f8b92 Mon Sep 17 00:00:00 2001 From: 86184 <86184@LAPTOP-H62NC2FB> Date: Sun, 22 Aug 2021 21:55:39 +0800 Subject: [PATCH 08/24] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E4=BA=86=E6=B7=BB?= =?UTF-8?q?=E5=8A=A0=E5=AD=A6=E7=94=9F=E4=BF=A1=E6=81=AF=E7=9A=84=E5=8A=9F?= =?UTF-8?q?=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/database/Administrator.java | 48 ++++++++++++++--- src/database/E.java | 93 ++++++++------------------------- 2 files changed, 62 insertions(+), 79 deletions(-) diff --git a/src/database/Administrator.java b/src/database/Administrator.java index b704a44..9e69fe2 100644 --- a/src/database/Administrator.java +++ b/src/database/Administrator.java @@ -11,7 +11,8 @@ public class Administrator extends JFrame implements ActionListener{ String []head= {"学号","姓名","性别","出生","籍贯","专业","班级","联系方式","技能"}; String [][]a= {{"","","","","","","","",""}};//更新时装载信息的载体 - JButton by;//备用 + JButton rf;//刷新 + JButton in;//插入信息 JMenuBar menubar; JMenu menu,subMenu; JMenuItem item1,item2,item3,item4,item5; @@ -53,7 +54,7 @@ public class Administrator extends JFrame implements ActionListener{ public void actionPerformed(ActionEvent e) { query=new Query(); //查询信息 - if(e.getSource()==item1) { + if(e.getSource()==item1||e.getSource()==rf) { try { query.setSQL("select * from student"); query.startQuery(); @@ -61,22 +62,53 @@ public class Administrator extends JFrame implements ActionListener{ String [][]record=query.getRecord();//获得student的数据 table=new JTable(record,ziduan); p=new JScrollPane(table); - by=new JButton("刷新"); + rf=new JButton("刷新"); add(p,BorderLayout.CENTER); - add(by,BorderLayout.SOUTH); + add(rf,BorderLayout.SOUTH); } catch(Exception exp) {} } - //添加信息 + //添加信息界面 if(e.getSource()==item3) { table=new JTable(a,head); table.setFont(new Font("宋体",Font.BOLD,16)); table.setRowHeight(40); p=new JScrollPane(table); - by=new JButton("添加"); + in=new JButton("添加"); + in.addActionListener(this); add(p,BorderLayout.CENTER); - add(by,BorderLayout.SOUTH); + add(in,BorderLayout.SOUTH); + } + //添加信息 + if(e.getSource()==in) { + int m=0; + Connection con; + PreparedStatement sql; + try { + String uri="jdbc:derby:学生信息管理系统;create=false"; + con=DriverManager.getConnection(uri); + String SQL= + "insert into student values(?,?,?,?,?,?,?,?,?)"; + sql=con.prepareStatement(SQL); + sql.setString(1, a[0][0].trim()); + sql.setString(2, a[0][1].trim()); + sql.setString(3, a[0][2].trim()); + sql.setString(4, a[0][3].trim()); + sql.setString(5, a[0][4].trim()); + sql.setString(6, a[0][5].trim()); + sql.setString(7, a[0][6].trim()); + sql.setString(8, a[0][7].trim()); + sql.setString(9, a[0][8].trim()); + m=sql.executeUpdate(); + con.close(); + if(m!=0) + JOptionPane.showMessageDialog(null,""+"添加成功","消息对话框",JOptionPane.WARNING_MESSAGE); + else + JOptionPane.showMessageDialog(null,""+"添加失败","消息对话框",JOptionPane.WARNING_MESSAGE); + } + catch(SQLException exp) { + JOptionPane.showMessageDialog(null,""+exp,"消息对话框",JOptionPane.WARNING_MESSAGE); + } } - } } \ No newline at end of file diff --git a/src/database/E.java b/src/database/E.java index 09d4de2..a8eeeb9 100644 --- a/src/database/E.java +++ b/src/database/E.java @@ -1,73 +1,24 @@ package database; -import java.awt.event.ActionEvent; - -import java.awt.event.ActionListener; - -import javax.swing.JButton; - -import javax.swing.JFrame; - -import javax.swing.SwingUtilities; - -public class E extends JFrame implements ActionListener - -{ -private JButton btn; - -public E() - -{ -super("Simple GUI"); - -setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); - -btn = new JButton("Open the other JFrame!"); - -btn.addActionListener(this); - -btn.setActionCommand("Open"); - -add(btn); - -pack(); - -} - -@Override - -public void actionPerformed(ActionEvent e) - -{ -String cmd = e.getActionCommand(); - -if(cmd.equals("Open")) - -{ -dispose(); - -new TextSwing(); - -} - -} - -public static void main(String[] args) - -{ -SwingUtilities.invokeLater(new Runnable(){ -@Override - -public void run() - -{ -new E().setVisible(true); - -} - -}); - -} - -} - +import java.sql.*; + +public class E { + public static void main(String args[]) { + Connection con;//接口,连接数据库 + + //连接数据库 + try { + con=DriverManager.getConnection("jdbc:derby:学生信息管理系统;create=true"); + System.out.println("数据库连接成功"); + con.close();//关闭数据库 + con=DriverManager.getConnection("jdbc:derby:学生信息管理系统;create=true"); + if(con!=null) + System.out.println("1"); + else + System.out.println("2"); + } + catch(Exception e) { + System.out.println("数据库连接失败"); + } + } +} \ No newline at end of file -- Gitee From e28d1ae4e6b486b33d6fa3873d6a79e7898b91c3 Mon Sep 17 00:00:00 2001 From: 86184 <86184@LAPTOP-H62NC2FB> Date: Sun, 22 Aug 2021 21:56:31 +0800 Subject: [PATCH 09/24] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E4=BA=86=E6=8F=92?= =?UTF-8?q?=E5=85=A5=E5=AD=A6=E7=94=9F=E4=BF=A1=E6=81=AF=E7=9A=84=E5=8A=9F?= =?UTF-8?q?=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/database/Administrator.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/database/Administrator.java b/src/database/Administrator.java index 9e69fe2..993ffce 100644 --- a/src/database/Administrator.java +++ b/src/database/Administrator.java @@ -78,7 +78,7 @@ public class Administrator extends JFrame implements ActionListener{ in.addActionListener(this); add(p,BorderLayout.CENTER); add(in,BorderLayout.SOUTH); - } + } //添加信息 if(e.getSource()==in) { int m=0; -- Gitee From 0d599d3013156add54a5f4751879195d2406c089 Mon Sep 17 00:00:00 2001 From: 86184 <86184@LAPTOP-H62NC2FB> Date: Wed, 25 Aug 2021 23:03:59 +0800 Subject: [PATCH 10/24] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E4=BA=86=E6=B7=BB?= =?UTF-8?q?=E5=8A=A0=E5=8A=9F=E8=83=BD=EF=BC=8C=E6=B7=BB=E5=8A=A0=E4=BF=AE?= =?UTF-8?q?=E6=94=B9=E4=BF=A1=E6=81=AF=E5=8A=9F=E8=83=BD=EF=BC=88=E6=B2=A1?= =?UTF-8?q?=E5=81=9A=E5=AE=8C=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/database/Add.java | 86 +++++++++++++++++++++++++++++++++ src/database/Administrator.java | 62 ++++++------------------ src/database/DialogOne.java | 57 ++++++++++++++++++++++ src/database/Role.java | 60 ----------------------- src/database/SystemLogin.java | 4 +- src/database/TextSwing.java | 3 +- src/database/Update.java | 65 +++++++++++++++++++++++++ 7 files changed, 228 insertions(+), 109 deletions(-) create mode 100644 src/database/Add.java create mode 100644 src/database/DialogOne.java delete mode 100644 src/database/Role.java create mode 100644 src/database/Update.java diff --git a/src/database/Add.java b/src/database/Add.java new file mode 100644 index 0000000..b2d0d0a --- /dev/null +++ b/src/database/Add.java @@ -0,0 +1,86 @@ +package database; + +import java.awt.*; +import java.awt.event.*; +import java.sql.*; +import javax.swing.*; + +/** + * 添加学生信息 + * @author lsj + * + */ +public class Add extends JDialog implements ActionListener{ + JTable table; + JScrollPane p; + String []head= {"学号","姓名","性别","出生","籍贯","专业","班级","联系方式","技能","密码"}; + String [][]a= {{"","","","","","","","","",""}};//更新时装载信息的载体 + JButton in; + public Add() { + init(); + setVisible(true); + setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); + } + public void init() { + setLayout(null); + setTitle("添加信息"); + setBounds(200,300,1000,200); + table=new JTable(a,head); + table.setFont(new Font("宋体",Font.BOLD,16)); + table.setRowHeight(40); + in=new JButton("插入"); + p=new JScrollPane(table); + add(p); + add(in); + p.setBounds(10, 10, 900, 80); + in.setBounds(920,30,60,40); + in.addActionListener(this); + } + + public void actionPerformed(ActionEvent e) { + int m=0,n=0; + Connection con; + PreparedStatement sql; + if(e.getSource()==in) { + try { + String uri="jdbc:derby:学生信息管理系统;create=false"; + con=DriverManager.getConnection(uri); + String SQL= + "insert into student values(?,?,?,?,?,?,?,?,?)"; + sql=con.prepareStatement(SQL); + sql.setString(1, a[0][0].trim()); + sql.setString(2, a[0][1].trim()); + sql.setString(3, a[0][2].trim()); + sql.setString(4, a[0][3].trim()); + sql.setString(5, a[0][4].trim()); + sql.setString(6, a[0][5].trim()); + sql.setString(7, a[0][6].trim()); + sql.setString(8, a[0][7].trim()); + sql.setString(9, a[0][8].trim()); + m=sql.executeUpdate(); + con.close(); + } + catch(SQLException exp) { + JOptionPane.showMessageDialog(null,""+exp,"消息对话框",JOptionPane.WARNING_MESSAGE); + } + try { + String uri="jdbc:derby:学生信息管理系统;create=false"; + con=DriverManager.getConnection(uri); + String SQL="insert into zhanghao values(?,?,?)"; + sql=con.prepareStatement(SQL); + sql.setString(1, a[0][0].trim()); + sql.setString(2, a[0][9]); + sql.setString(3, "学生"); + n=sql.executeUpdate(); + con.close(); + } + catch(SQLException exp) { + JOptionPane.showMessageDialog(null,""+exp,"消息对话框",JOptionPane.WARNING_MESSAGE); + } + if(m!=0&&n!=0) + JOptionPane.showMessageDialog(null,""+"添加成功","消息对话框",JOptionPane.WARNING_MESSAGE); + else + JOptionPane.showMessageDialog(null,""+"添加失败","消息对话框",JOptionPane.WARNING_MESSAGE); + } + } +} \ No newline at end of file diff --git a/src/database/Administrator.java b/src/database/Administrator.java index 993ffce..21510cc 100644 --- a/src/database/Administrator.java +++ b/src/database/Administrator.java @@ -4,25 +4,27 @@ import java.awt.event.*; import javax.swing.*; import java.sql.*; +/** + * 管理员界面 + * @author lsj + * + */ public class Administrator extends JFrame implements ActionListener{ Query query; JTable table; JScrollPane p; - String []head= {"学号","姓名","性别","出生","籍贯","专业","班级","联系方式","技能"}; - String [][]a= {{"","","","","","","","",""}};//更新时装载信息的载体 JButton rf;//刷新 - JButton in;//插入信息 JMenuBar menubar; JMenu menu,subMenu; JMenuItem item1,item2,item3,item4,item5; public Administrator() { - setVisible(true); setLayout(new BorderLayout()); - setTitle("系统登录"); - setBounds(200,300,350,200); - setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); + setTitle("管理员登录"); init(); + setBounds(300,200,800,300); + setVisible(true); + setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); } public void init() { @@ -37,6 +39,7 @@ public class Administrator extends JFrame implements ActionListener{ item3.addActionListener(this); item4=new JMenuItem("删除信息"); item5=new JMenuItem("修改信息"); + item5.addActionListener(this); subMenu.add(item3); subMenu.add(item4); @@ -65,50 +68,17 @@ public class Administrator extends JFrame implements ActionListener{ rf=new JButton("刷新"); add(p,BorderLayout.CENTER); add(rf,BorderLayout.SOUTH); + this.setVisible(true); } catch(Exception exp) {} } - //添加信息界面 + //添加信息 if(e.getSource()==item3) { - table=new JTable(a,head); - table.setFont(new Font("宋体",Font.BOLD,16)); - table.setRowHeight(40); - p=new JScrollPane(table); - in=new JButton("添加"); - in.addActionListener(this); - add(p,BorderLayout.CENTER); - add(in,BorderLayout.SOUTH); + new Add(); } - //添加信息 - if(e.getSource()==in) { - int m=0; - Connection con; - PreparedStatement sql; - try { - String uri="jdbc:derby:学生信息管理系统;create=false"; - con=DriverManager.getConnection(uri); - String SQL= - "insert into student values(?,?,?,?,?,?,?,?,?)"; - sql=con.prepareStatement(SQL); - sql.setString(1, a[0][0].trim()); - sql.setString(2, a[0][1].trim()); - sql.setString(3, a[0][2].trim()); - sql.setString(4, a[0][3].trim()); - sql.setString(5, a[0][4].trim()); - sql.setString(6, a[0][5].trim()); - sql.setString(7, a[0][6].trim()); - sql.setString(8, a[0][7].trim()); - sql.setString(9, a[0][8].trim()); - m=sql.executeUpdate(); - con.close(); - if(m!=0) - JOptionPane.showMessageDialog(null,""+"添加成功","消息对话框",JOptionPane.WARNING_MESSAGE); - else - JOptionPane.showMessageDialog(null,""+"添加失败","消息对话框",JOptionPane.WARNING_MESSAGE); - } - catch(SQLException exp) { - JOptionPane.showMessageDialog(null,""+exp,"消息对话框",JOptionPane.WARNING_MESSAGE); - } + //更新信息 + if(e.getSource()==item5) { + new Update(); } } } \ No newline at end of file diff --git a/src/database/DialogOne.java b/src/database/DialogOne.java new file mode 100644 index 0000000..a6509f8 --- /dev/null +++ b/src/database/DialogOne.java @@ -0,0 +1,57 @@ +package database; + +import javax.swing.*; + +import java.sql.*; + +import java.awt.*; +import java.awt.event.*; + +public class DialogOne extends JDialog implements ActionListener{ + String []head= {"学号","姓名","性别","出生","籍贯","专业","班级","联系方式","技能"}; + String [][]a= {{"","","","","","","","",""}};//更新时装载信息的载体 + JTable table; + JButton b; + String ziduan[]; + String record[][]; + DialogOne(){ + init(); + setVisible(true); + setBounds(400,200,200,300); + setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); + } + + public void init() { + table=new JTable(a,head); + table.setFont(new Font("宋体",Font.BOLD,16)); + b=new JButton("添加"); + add(new JScrollPane(table)); + add(b); + } + + + public void actionPerformed(ActionEvent e) { + Connection con; + PreparedStatement sql; + try { + int m=0; + con=DriverManager.getConnection("jdbc:derby:学生信息管理系统;create=false"); + String SQL="insert into student values(?,?,?,?,?,?,?,?,?)"; + sql=con.prepareStatement(SQL); + sql.setString(1, a[0][0].trim()); + sql.setString(2, a[0][1].trim()); + sql.setString(3, a[0][2].trim()); + sql.setString(4, a[0][3].trim()); + sql.setString(5, a[0][4].trim()); + m=sql.executeUpdate(); + con.close(); + if(m!=0) + JOptionPane.showMessageDialog(null,"添加成功","消息对话框",JOptionPane.WARNING_MESSAGE); + else + JOptionPane.showMessageDialog(null,"添加失败","消息对话框",JOptionPane.WARNING_MESSAGE); + } + catch(SQLException exp) { + JOptionPane.showMessageDialog(null,exp,"消息对话框",JOptionPane.WARNING_MESSAGE); + } + } +} \ No newline at end of file diff --git a/src/database/Role.java b/src/database/Role.java deleted file mode 100644 index fa66675..0000000 --- a/src/database/Role.java +++ /dev/null @@ -1,60 +0,0 @@ -package database; - -import java.awt.*; -import javax.swing.*; -import java.awt.event.*; -import java.sql.*; -/** - * 辨别登录者身份 - * @author lsj - * - */ -public class Role implements ActionListener{ - Query query; - String s;//记录登陆者身份 - JTextField account,password; - //获取账号和密码 - public void setAcoount(JTextField a) { - account=a; - } - public void setPassword(JTextField p) { - password=p; - } - - public Role() { - query=new Query(); - } - - public void actionPerformed(ActionEvent e) { - String SQL="select * from zhanghao"; - try { - query.setSQL(SQL); - query.startQuery(); - String [][]record=query.getRecord();//获得zhanghao的数据 - int m=0; - for(int i=0;i<=record.length;i++) { - if(account.getText().equals(record[i][0].trim())) { - if(password.getText().equals(record[i][1].trim())) { - s=record[i][2].trim(); - m=1; - break; - } - } - } - if(m==0) { - JOptionPane.showMessageDialog(null,"账号或密码错误","消息对话框",JOptionPane.WARNING_MESSAGE); - } - if(s.equals("管理员")) { - JOptionPane.showMessageDialog(null,"实验成功","消息对话框",JOptionPane.WARNING_MESSAGE); - } - else { - JOptionPane.showMessageDialog(null,"账号或密码错误","消息对话框",JOptionPane.WARNING_MESSAGE); - } - } - catch(Exception exp) {} - } - public String getRole() { - return s; - } - -} diff --git a/src/database/SystemLogin.java b/src/database/SystemLogin.java index e79ffad..9f9de57 100644 --- a/src/database/SystemLogin.java +++ b/src/database/SystemLogin.java @@ -16,14 +16,14 @@ public class SystemLogin extends JFrame implements ActionListener{ Query query; String s;//记录登陆者身份 public SystemLogin() { - setVisible(true); init(); + setVisible(true); setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); } public void init() { setLayout(new FlowLayout()); setTitle("系统登录"); - setBounds(200,300,350,200); + setBounds(450,200,350,200); JLabel a=new JLabel("学号/工号:"); JLabel b=new JLabel("密 码:"); a.setFont(new Font("宋体",Font.BOLD,20)); diff --git a/src/database/TextSwing.java b/src/database/TextSwing.java index f1fe206..8da77b9 100644 --- a/src/database/TextSwing.java +++ b/src/database/TextSwing.java @@ -2,6 +2,7 @@ package database; public class TextSwing { public static void main(String args[]) { - new SystemLogin(); + //new SystemLogin(); + new Update(); } } \ No newline at end of file diff --git a/src/database/Update.java b/src/database/Update.java new file mode 100644 index 0000000..1c1f7bc --- /dev/null +++ b/src/database/Update.java @@ -0,0 +1,65 @@ +package database; + +import java.awt.*; +import java.awt.event.*; +import java.sql.*; +import javax.swing.*; + +/** + * 更新信息 + * @author lsj + * + */ +public class Update extends JDialog implements ActionListener{ + Query query; + JTable table; + JScrollPane p; + JTextField input; + JLabel label; + JButton buttonC,buttonG; + String []head= {"姓名","性别","出生","籍贯","专业","班级","联系方式","技能","密码"}; + String [][]a= {{"","","","","","","","",""}}; + + public Update() { + init(); + setVisible(true); + setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); + } + public void init() { + setLayout(null); + setTitle("更改信息"); + setBounds(200,300,1000,200); + input=new JTextField(10); + label=new JLabel("输入需要更改信息的学号:"); + buttonC=new JButton("查找"); + buttonC.addActionListener(this); + + add(label); + add(input); + add(buttonC); + + label.setBounds(10,10,160,30); + input.setBounds(172,10,100,30); + buttonC.setBounds(275,10,70,30); + } + + public void actionPerformed(ActionEvent e) { + Connection con; + PreparedStatement sql; + if(e.getSource()==buttonC) { + try { + query=new Query(); + query.setSQL("select * from student where 学号="+buttonC.getText().trim()); + query.startQuery(); + a=query.getRecord(); + + table=new JTable(a,head); + table.setFont(new Font("宋体",Font.BOLD,16)); + table.setRowHeight(40); + } + catch(Exception exp) { + JOptionPane.showMessageDialog(null,""+exp,"消息对话框",JOptionPane.WARNING_MESSAGE); + } + } + } +} -- Gitee From 8fe954e34ad080234b77621bf13001ba59e9678e Mon Sep 17 00:00:00 2001 From: 86184 <86184@LAPTOP-H62NC2FB> Date: Thu, 26 Aug 2021 12:51:33 +0800 Subject: [PATCH 11/24] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E4=BF=A1=E6=81=AF?= =?UTF-8?q?=E7=9A=84=E5=8A=9F=E8=83=BD=E5=AE=8C=E5=96=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/database/Administrator.java | 4 +- src/database/E.java | 26 ++++----- src/database/TextSwing.java | 13 ++++- src/database/Update.java | 98 +++++++++++++++++++++++++++++---- 4 files changed, 109 insertions(+), 32 deletions(-) diff --git a/src/database/Administrator.java b/src/database/Administrator.java index 21510cc..373988e 100644 --- a/src/database/Administrator.java +++ b/src/database/Administrator.java @@ -57,7 +57,7 @@ public class Administrator extends JFrame implements ActionListener{ public void actionPerformed(ActionEvent e) { query=new Query(); //查询信息 - if(e.getSource()==item1||e.getSource()==rf) { + if(e.getSource()==item1) { try { query.setSQL("select * from student"); query.startQuery(); @@ -66,12 +66,14 @@ public class Administrator extends JFrame implements ActionListener{ table=new JTable(record,ziduan); p=new JScrollPane(table); rf=new JButton("刷新"); + rf.addActionListener(this); add(p,BorderLayout.CENTER); add(rf,BorderLayout.SOUTH); this.setVisible(true); } catch(Exception exp) {} } + //添加信息 if(e.getSource()==item3) { new Add(); diff --git a/src/database/E.java b/src/database/E.java index a8eeeb9..4e7b8ce 100644 --- a/src/database/E.java +++ b/src/database/E.java @@ -2,23 +2,17 @@ package database; import java.sql.*; +import javax.swing.JScrollPane; +import javax.swing.JTable; + public class E { - public static void main(String args[]) { - Connection con;//接口,连接数据库 + Query query; + String []head= {"密码","姓名","性别","出生","籍贯","专业","班级","联系方式","技能"}; + String [][]a= {{"","","","","","","","","",""}}; + String [][]b= {{"","","","","","","","","",""}}; + + E() { + - //连接数据库 - try { - con=DriverManager.getConnection("jdbc:derby:学生信息管理系统;create=true"); - System.out.println("数据库连接成功"); - con.close();//关闭数据库 - con=DriverManager.getConnection("jdbc:derby:学生信息管理系统;create=true"); - if(con!=null) - System.out.println("1"); - else - System.out.println("2"); - } - catch(Exception e) { - System.out.println("数据库连接失败"); - } } } \ No newline at end of file diff --git a/src/database/TextSwing.java b/src/database/TextSwing.java index 8da77b9..39d08a8 100644 --- a/src/database/TextSwing.java +++ b/src/database/TextSwing.java @@ -1,8 +1,15 @@ package database; +import java.sql.*; + +import javax.swing.JOptionPane; +import javax.swing.JScrollPane; +import javax.swing.JTable; + public class TextSwing { public static void main(String args[]) { - //new SystemLogin(); - new Update(); - } + new SystemLogin(); + //new Update(); + //new E(); +} } \ No newline at end of file diff --git a/src/database/Update.java b/src/database/Update.java index 1c1f7bc..b2016a6 100644 --- a/src/database/Update.java +++ b/src/database/Update.java @@ -17,7 +17,7 @@ public class Update extends JDialog implements ActionListener{ JTextField input; JLabel label; JButton buttonC,buttonG; - String []head= {"姓名","性别","出生","籍贯","专业","班级","联系方式","技能","密码"}; + String []head= {"密码","姓名","性别","出生","籍贯","专业","班级","联系方式","技能",}; String [][]a= {{"","","","","","","","",""}}; public Update() { @@ -28,7 +28,7 @@ public class Update extends JDialog implements ActionListener{ public void init() { setLayout(null); setTitle("更改信息"); - setBounds(200,300,1000,200); + setBounds(200,200,900,400); input=new JTextField(10); label=new JLabel("输入需要更改信息的学号:"); buttonC=new JButton("查找"); @@ -41,25 +41,99 @@ public class Update extends JDialog implements ActionListener{ label.setBounds(10,10,160,30); input.setBounds(172,10,100,30); buttonC.setBounds(275,10,70,30); + + table=new JTable(a,head); + table.setFont(new Font("宋体",Font.BOLD,16)); + table.setRowHeight(40); + + p=new JScrollPane(table); + buttonG=new JButton("更新"); + buttonG.addActionListener(this); + + add(p); + add(buttonG); + + p.setBounds(10,60,855,90); + buttonG.setBounds(10,200,70,30); } + public void Check() { + try { + query=new Query(); + query.setSQL("select * from student where 学号='"+input.getText()+"'"); + query.startQuery(); + a=query.getRecord(); + + //密码 + query=new Query(); + query.setSQL("select * from zhanghao where account='"+input.getText()+"'"); + query.startQuery(); + String record[][]=query.getRecord(); + a[0][0]=record[0][1].trim(); + } + catch(Exception exp) { + JOptionPane.showMessageDialog(null,""+exp,"消息对话框",JOptionPane.WARNING_MESSAGE); + } + } public void actionPerformed(ActionEvent e) { - Connection con; - PreparedStatement sql; + //查找 if(e.getSource()==buttonC) { try { - query=new Query(); - query.setSQL("select * from student where 学号="+buttonC.getText().trim()); - query.startQuery(); - a=query.getRecord(); - + Check(); + remove(p); + remove(table); table=new JTable(a,head); table.setFont(new Font("宋体",Font.BOLD,16)); - table.setRowHeight(40); + table.setRowHeight(40); + p=new JScrollPane(table); + add(p); + p.setBounds(10,60,855,90); } catch(Exception exp) { - JOptionPane.showMessageDialog(null,""+exp,"消息对话框",JOptionPane.WARNING_MESSAGE); - } + JOptionPane.showMessageDialog(null,""+exp,"消息对话框",JOptionPane.WARNING_MESSAGE);} } + + //更新 + if(e.getSource()==buttonG) { + int m=0,n=0; + Connection con; + PreparedStatement sql; + try { + con=DriverManager.getConnection("jdbc:derby:学生信息管理系统;create=false"); + String SQL="update student set 姓名=?,性别=?,出生=?,籍贯=?,专业=?,班级=?,联系方式=?,技能=? where 学号='"+input.getText()+"'"; + sql=con.prepareStatement(SQL); + sql.setString(1, a[0][1].trim()); + sql.setString(2, a[0][2].trim()); + sql.setString(3, a[0][3].trim()); + sql.setString(4, a[0][4].trim()); + sql.setString(5, a[0][5].trim()); + sql.setString(6, a[0][6].trim()); + sql.setString(7, a[0][7].trim()); + sql.setString(8, a[0][8].trim()); + m=sql.executeUpdate(); + con.close(); + } + catch(SQLException exp) { + JOptionPane.showMessageDialog(null,exp,"消息对话框",JOptionPane.WARNING_MESSAGE); + } + + try { + con=DriverManager.getConnection("jdbc:derby:学生信息管理系统;create=false"); + String SQL="update zhanghao set password=? where account='"+input.getText()+"'"; + sql=con.prepareStatement(SQL); + sql.setString(1, a[0][0].trim()); + n=sql.executeUpdate(); + con.close(); + } + catch(SQLException exp) { + JOptionPane.showMessageDialog(null,exp,"消息对话框",JOptionPane.WARNING_MESSAGE); + } + + if(m!=0&&n!=0) + JOptionPane.showMessageDialog(null,"更新成功","消息对话框",JOptionPane.WARNING_MESSAGE); + else + JOptionPane.showMessageDialog(null,"更新失败","消息对话框",JOptionPane.WARNING_MESSAGE); + + } } } -- Gitee From 18bbac986ccbfb9e65783a325a482dbaf49c8c13 Mon Sep 17 00:00:00 2001 From: 86184 <86184@LAPTOP-H62NC2FB> Date: Thu, 26 Aug 2021 13:11:43 +0800 Subject: [PATCH 12/24] =?UTF-8?q?=E6=B7=BB=E5=8A=A0Delete=E7=B1=BB?= =?UTF-8?q?=EF=BC=8C=E5=AE=9E=E7=8E=B0=E5=88=A0=E9=99=A4=E4=BF=A1=E6=81=AF?= =?UTF-8?q?=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/database/Administrator.java | 5 ++ src/database/Delete.java | 116 ++++++++++++++++++++++++++++++++ 2 files changed, 121 insertions(+) create mode 100644 src/database/Delete.java diff --git a/src/database/Administrator.java b/src/database/Administrator.java index 373988e..bbb9571 100644 --- a/src/database/Administrator.java +++ b/src/database/Administrator.java @@ -38,6 +38,7 @@ public class Administrator extends JFrame implements ActionListener{ item3=new JMenuItem("添加信息"); item3.addActionListener(this); item4=new JMenuItem("删除信息"); + item4.addActionListener(this); item5=new JMenuItem("修改信息"); item5.addActionListener(this); @@ -82,5 +83,9 @@ public class Administrator extends JFrame implements ActionListener{ if(e.getSource()==item5) { new Update(); } + //删除信息 + if(e.getSource()==item4) { + new Delete(); + } } } \ No newline at end of file diff --git a/src/database/Delete.java b/src/database/Delete.java new file mode 100644 index 0000000..387b2e2 --- /dev/null +++ b/src/database/Delete.java @@ -0,0 +1,116 @@ +package database; + +import java.awt.*; +import java.awt.event.*; +import java.sql.*; +import javax.swing.*; + +/** + * 删除信息 + * @author lsj + * + */ +public class Delete extends JDialog implements ActionListener{ + Query query; + JTable table; + JScrollPane p; + JTextField input; + JLabel label; + JButton buttonC,buttonD; + String []head= {"学号","姓名","性别","出生","籍贯","专业","班级","联系方式","技能",}; + String [][]a= {{"","","","","","","","",""}}; + public Delete() { + init(); + setVisible(true); + setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); + } + + public void init() { + setLayout(null); + setTitle("删除信息"); + setBounds(200,200,900,400); + input=new JTextField(10); + label=new JLabel("输入需要删除信息的学号:"); + buttonC=new JButton("查找"); + buttonC.addActionListener(this); + + add(label); + add(input); + add(buttonC); + + label.setBounds(10,10,160,30); + input.setBounds(172,10,100,30); + buttonC.setBounds(275,10,70,30); + + table=new JTable(a,head); + table.setFont(new Font("宋体",Font.BOLD,16)); + table.setRowHeight(40); + + p=new JScrollPane(table); + buttonD=new JButton("删除"); + buttonD.addActionListener(this); + + add(p); + add(buttonD); + + p.setBounds(10,60,855,90); + buttonD.setBounds(10,200,70,30); + } + + public void actionPerformed(ActionEvent e) { + if(e.getSource()==buttonC) { + try { + remove(p); + remove(table); + query=new Query(); + query.setSQL("select * from student where 学号='"+input.getText()+"'"); + query.startQuery(); + a=query.getRecord(); + + table=new JTable(a,head); + table.setFont(new Font("宋体",Font.BOLD,16)); + table.setRowHeight(40); + p=new JScrollPane(table); + add(p); + p.setBounds(10,60,855,90); + } + catch(Exception exp) { + JOptionPane.showMessageDialog(null,""+exp,"消息对话框",JOptionPane.WARNING_MESSAGE);} + } + + //删除 + if(e.getSource()==buttonD) { + int m=0,n=0; + Connection con; + PreparedStatement sql; + try { + con=DriverManager.getConnection("jdbc:derby:学生信息管理系统;create=false"); + String SQL="delete from student where 学号=?"; + sql=con.prepareStatement(SQL); + sql.setString(1, a[0][0].trim()); + m=sql.executeUpdate(); + con.close(); + } + catch(SQLException exp) { + JOptionPane.showMessageDialog(null,exp,"消息对话框",JOptionPane.WARNING_MESSAGE);} + + try { + con=DriverManager.getConnection("jdbc:derby:学生信息管理系统;create=false"); + String SQL="delete from zhanghao where account=?"; + sql=con.prepareStatement(SQL); + sql.setString(1, a[0][0].trim()); + n=sql.executeUpdate(); + con.close(); + } + catch(SQLException exp) { + JOptionPane.showMessageDialog(null,exp,"消息对话框",JOptionPane.WARNING_MESSAGE); + } + + if(m!=0&&n!=0) + JOptionPane.showMessageDialog(null,"删除成功","消息对话框",JOptionPane.WARNING_MESSAGE); + else + JOptionPane.showMessageDialog(null,"删除失败","消息对话框",JOptionPane.WARNING_MESSAGE); + } + + } +} -- Gitee From 5e95fdb259a8b43de2ded417484397bf97002c20 Mon Sep 17 00:00:00 2001 From: 86184 <86184@LAPTOP-H62NC2FB> Date: Thu, 26 Aug 2021 13:36:33 +0800 Subject: [PATCH 13/24] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E5=AD=A6=E7=94=9F?= =?UTF-8?q?=E7=99=BB=E5=BD=95=E7=95=8C=E9=9D=A2=EF=BC=8C=E5=B9=B6=E8=B5=8B?= =?UTF-8?q?=E4=BA=88=E5=AD=A6=E7=94=9F=E6=9F=A5=E8=AF=A2=E4=BB=A5=E5=8F=8A?= =?UTF-8?q?=E4=BF=AE=E6=94=B9=E8=87=AA=E5=B7=B1=E4=B8=AA=E4=BA=BA=E4=BF=A1?= =?UTF-8?q?=E6=81=AF=E7=9A=84=E4=B8=A4=E4=B8=AA=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/database/Administrator.java | 2 - src/database/Student.java | 90 +++++++++++++++++++++++++++++++++ src/database/SystemLogin.java | 5 +- 3 files changed, 93 insertions(+), 4 deletions(-) create mode 100644 src/database/Student.java diff --git a/src/database/Administrator.java b/src/database/Administrator.java index bbb9571..ddb221d 100644 --- a/src/database/Administrator.java +++ b/src/database/Administrator.java @@ -27,8 +27,6 @@ public class Administrator extends JFrame implements ActionListener{ setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); } public void init() { - - menubar=new JMenuBar(); menu=new JMenu("管理"); subMenu=new JMenu("修改信息"); diff --git a/src/database/Student.java b/src/database/Student.java new file mode 100644 index 0000000..00501c6 --- /dev/null +++ b/src/database/Student.java @@ -0,0 +1,90 @@ +package database; + +import java.awt.*; +import java.awt.event.*; +import javax.swing.*; +import java.sql.*; + +/** + * 学生界面 + * @author lsj + * + */ +public class Student extends JFrame implements ActionListener{ + String account=""; + Query query; + JTable table; + JScrollPane p; + + JMenuBar menubar; + JMenu menu; + JMenuItem item1,item2; + JButton rf;//刷新 + + public Student(String account) { + this.account=account; + setLayout(new BorderLayout()); + setTitle("学生登录"); + init(); + setBounds(300,200,800,300); + setVisible(true); + setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); + } + public void init() { + menubar=new JMenuBar(); + menu=new JMenu("管理"); + item1=new JMenuItem("查询信息"); + item1.addActionListener(this); + item2=new JMenuItem("修改信息"); + item2.addActionListener(this); + + + menu.add(item1); + menu.add(item2); + menubar.add(menu); + setJMenuBar(menubar); + } + + public void actionPerformed(ActionEvent e) { + //查询信息 + if(e.getSource()==item1) { + query=new Query(); + query.setSQL("select * from student where 学号='"+account+"'"); + query.startQuery(); + String []ziduan=query.getColumnName();//获得student的列名 + String [][]record=query.getRecord();//获得student的数据 + table=new JTable(record,ziduan); + p=new JScrollPane(table); + rf=new JButton("刷新"); + rf.addActionListener(this); + add(p,BorderLayout.CENTER); + add(rf,BorderLayout.SOUTH); + this.setVisible(true); + } + + //修改信息 + if(e.getSource()==item2) { + String []head= {"密码","姓名","性别","出生","籍贯","专业","班级","联系方式","技能",}; + String [][]a= {{"","","","","","","","",""}}; + + query=new Query(); + query.setSQL("select * from student where 学号='"+account+"'"); + query.startQuery(); + a=query.getRecord(); + + //密码 + query=new Query(); + query.setSQL("select * from zhanghao where account='"+account+"'"); + query.startQuery(); + String record[][]=query.getRecord(); + a[0][0]=record[0][1].trim(); + + remove(p); + table=new JTable(a,head); + table.setFont(new Font("宋体",Font.BOLD,16)); + table.setRowHeight(40); + p=new JScrollPane(table); + add(p); + } + } +} diff --git a/src/database/SystemLogin.java b/src/database/SystemLogin.java index 9f9de57..8ece959 100644 --- a/src/database/SystemLogin.java +++ b/src/database/SystemLogin.java @@ -80,11 +80,12 @@ public class SystemLogin extends JFrame implements ActionListener{ JOptionPane.showMessageDialog(null,s,"消息对话框",JOptionPane.WARNING_MESSAGE); } else if(s.equals("学生")){ - JOptionPane.showMessageDialog(null,s,"消息对话框",JOptionPane.WARNING_MESSAGE); + this.dispose(); + new Student(account.getText()); } else if(s.equals("管理员")) { this.dispose(); - Administrator ad=new Administrator(); + new Administrator(); } } catch(Exception exp) {} -- Gitee From fe16a071b8aebd5438f31ec302eb2fc464cc33e0 Mon Sep 17 00:00:00 2001 From: 86184 <86184@LAPTOP-H62NC2FB> Date: Thu, 26 Aug 2021 14:21:07 +0800 Subject: [PATCH 14/24] =?UTF-8?q?=E5=AD=A6=E7=94=9F=E7=9A=84=E6=9F=A5?= =?UTF-8?q?=E8=AF=A2=E5=92=8C=E4=BF=AE=E6=94=B9=E5=8A=9F=E8=83=BD=E5=B7=B2?= =?UTF-8?q?=E7=BB=8F=E5=AE=8C=E5=96=84=EF=BC=8C=E4=B8=94=E4=BF=AE=E6=94=B9?= =?UTF-8?q?=E4=BA=86=E5=AD=A6=E7=94=9F=E5=92=8C=E7=AE=A1=E7=90=86=E8=80=85?= =?UTF-8?q?=E7=99=BB=E5=BD=95=E7=95=8C=E9=9D=A2=E7=9A=84=E5=B8=83=E5=B1=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/database/Administrator.java | 19 +++++-- src/database/Student.java | 96 ++++++++++++++++++++++++++++----- src/database/TextSwing.java | 4 +- 3 files changed, 99 insertions(+), 20 deletions(-) diff --git a/src/database/Administrator.java b/src/database/Administrator.java index ddb221d..5b0156a 100644 --- a/src/database/Administrator.java +++ b/src/database/Administrator.java @@ -18,11 +18,12 @@ public class Administrator extends JFrame implements ActionListener{ JMenuBar menubar; JMenu menu,subMenu; JMenuItem item1,item2,item3,item4,item5; + int i=0; public Administrator() { - setLayout(new BorderLayout()); + setLayout(null); setTitle("管理员登录"); init(); - setBounds(300,200,800,300); + setBounds(300,200,950,300); setVisible(true); setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); } @@ -56,7 +57,12 @@ public class Administrator extends JFrame implements ActionListener{ public void actionPerformed(ActionEvent e) { query=new Query(); //查询信息 - if(e.getSource()==item1) { + if(e.getSource()==item1||e.getSource()==rf) { + if(i==1) { + remove(p); + remove(rf); + JOptionPane.showMessageDialog(null,"刷新成功","消息对话框",JOptionPane.WARNING_MESSAGE); + } try { query.setSQL("select * from student"); query.startQuery(); @@ -66,9 +72,12 @@ public class Administrator extends JFrame implements ActionListener{ p=new JScrollPane(table); rf=new JButton("刷新"); rf.addActionListener(this); - add(p,BorderLayout.CENTER); - add(rf,BorderLayout.SOUTH); + add(p); + add(rf); + p.setBounds(10, 10, 900, 150); + rf.setBounds(400,200,60,40); this.setVisible(true); + i=1; } catch(Exception exp) {} } diff --git a/src/database/Student.java b/src/database/Student.java index 00501c6..c456ad0 100644 --- a/src/database/Student.java +++ b/src/database/Student.java @@ -20,13 +20,18 @@ public class Student extends JFrame implements ActionListener{ JMenu menu; JMenuItem item1,item2; JButton rf;//刷新 + JButton buttonG;//更新 + int i=0; + + String []head= {"密码","姓名","性别","出生","籍贯","专业","班级","联系方式","技能",}; + String [][]a= {{"","","","","","","","",""}}; public Student(String account) { this.account=account; - setLayout(new BorderLayout()); + setLayout(null); setTitle("学生登录"); init(); - setBounds(300,200,800,300); + setBounds(300,200,950,300); setVisible(true); setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); } @@ -47,26 +52,37 @@ public class Student extends JFrame implements ActionListener{ public void actionPerformed(ActionEvent e) { //查询信息 - if(e.getSource()==item1) { + if(e.getSource()==item1||e.getSource()==rf) { + if(i==2) { + remove(p); + remove(buttonG); + } + if(i==1) { + remove(p); + remove(rf); + JOptionPane.showMessageDialog(null,"刷新成功","消息对话框",JOptionPane.WARNING_MESSAGE); + } query=new Query(); query.setSQL("select * from student where 学号='"+account+"'"); query.startQuery(); String []ziduan=query.getColumnName();//获得student的列名 String [][]record=query.getRecord();//获得student的数据 table=new JTable(record,ziduan); + table.setFont(new Font("宋体",Font.BOLD,16)); + table.setRowHeight(40); p=new JScrollPane(table); rf=new JButton("刷新"); rf.addActionListener(this); - add(p,BorderLayout.CENTER); - add(rf,BorderLayout.SOUTH); - this.setVisible(true); + add(p); + add(rf); + p.setBounds(10, 10, 900, 80); + rf.setBounds(400,100,60,40); + rf.addActionListener(this); + i=1; } - //修改信息 + //修改信息界面 if(e.getSource()==item2) { - String []head= {"密码","姓名","性别","出生","籍贯","专业","班级","联系方式","技能",}; - String [][]a= {{"","","","","","","","",""}}; - query=new Query(); query.setSQL("select * from student where 学号='"+account+"'"); query.startQuery(); @@ -79,12 +95,64 @@ public class Student extends JFrame implements ActionListener{ String record[][]=query.getRecord(); a[0][0]=record[0][1].trim(); - remove(p); + if(i==1) { + remove(p); + remove(rf); + } table=new JTable(a,head); table.setFont(new Font("宋体",Font.BOLD,16)); table.setRowHeight(40); - p=new JScrollPane(table); - add(p); + p=new JScrollPane(table); + buttonG=new JButton("更新"); + add(p); + add(buttonG); + buttonG.addActionListener(this); + p.setBounds(10, 10, 900, 80); + buttonG.setBounds(400,100,60,40); + i=2; + } + + //修改信息(buttonG) + if(e.getSource()==buttonG) { + int m=0,n=0; + Connection con; + PreparedStatement sql; + try { + con=DriverManager.getConnection("jdbc:derby:学生信息管理系统;create=false"); + String SQL="update student set 姓名=?,性别=?,出生=?,籍贯=?,专业=?,班级=?,联系方式=?,技能=? where 学号='"+account+"'"; + sql=con.prepareStatement(SQL); + sql.setString(1, a[0][1].trim()); + sql.setString(2, a[0][2].trim()); + sql.setString(3, a[0][3].trim()); + sql.setString(4, a[0][4].trim()); + sql.setString(5, a[0][5].trim()); + sql.setString(6, a[0][6].trim()); + sql.setString(7, a[0][7].trim()); + sql.setString(8, a[0][8].trim()); + m=sql.executeUpdate(); + con.close(); + } + catch(SQLException exp) { + JOptionPane.showMessageDialog(null,exp,"消息对话框",JOptionPane.WARNING_MESSAGE); + } + + try { + con=DriverManager.getConnection("jdbc:derby:学生信息管理系统;create=false"); + String SQL="update zhanghao set password=? where account='"+account+"'"; + sql=con.prepareStatement(SQL); + sql.setString(1, a[0][0].trim()); + n=sql.executeUpdate(); + con.close(); + } + catch(SQLException exp) { + JOptionPane.showMessageDialog(null,exp,"消息对话框",JOptionPane.WARNING_MESSAGE); + } + + if(m!=0&&n!=0) + JOptionPane.showMessageDialog(null,"更新成功","消息对话框",JOptionPane.WARNING_MESSAGE); + else + JOptionPane.showMessageDialog(null,"更新失败","消息对话框",JOptionPane.WARNING_MESSAGE); } } -} + +} \ No newline at end of file diff --git a/src/database/TextSwing.java b/src/database/TextSwing.java index 39d08a8..72b07ab 100644 --- a/src/database/TextSwing.java +++ b/src/database/TextSwing.java @@ -8,8 +8,10 @@ import javax.swing.JTable; public class TextSwing { public static void main(String args[]) { - new SystemLogin(); + //new SystemLogin(); //new Update(); //new E(); + //new Student("201"); + new Administrator(); } } \ No newline at end of file -- Gitee From 7ff50fa1f4c56a20a0157ab4ee6e3e64e95bddff Mon Sep 17 00:00:00 2001 From: 86184 <86184@LAPTOP-H62NC2FB> Date: Thu, 26 Aug 2021 16:46:38 +0800 Subject: [PATCH 15/24] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E4=BA=86=E8=80=81?= =?UTF-8?q?=E5=B8=88=E7=9A=84=E7=95=8C=E9=9D=A2=EF=BC=8C=E4=B8=94=E6=B7=BB?= =?UTF-8?q?=E5=8A=A0=E8=80=81=E5=B8=88=E6=9F=A5=E8=AF=A2=E5=AD=A6=E7=94=9F?= =?UTF-8?q?=E4=BF=A1=E6=81=AF=EF=BC=88=E5=88=86=E7=B1=BB=E6=9F=A5=E8=AF=A2?= =?UTF-8?q?=EF=BC=89=E5=92=8C=E4=BF=AE=E6=94=B9=E8=87=AA=E5=B7=B1=E5=AF=86?= =?UTF-8?q?=E7=A0=81=E7=9A=84=E5=8A=9F=E8=83=BD=EF=BC=8C=E7=AE=A1=E7=90=86?= =?UTF-8?q?=E5=91=98=E4=B9=9F=E6=B7=BB=E5=8A=A0=E4=BA=86=E4=BF=AE=E6=94=B9?= =?UTF-8?q?=E5=AF=86=E7=A0=81=E5=8A=9F=E8=83=BD=E3=80=82=E5=90=8C=E6=97=B6?= =?UTF-8?q?=E4=B8=89=E8=80=85=E5=9D=87=E6=B7=BB=E5=8A=A0=E9=87=8D=E6=96=B0?= =?UTF-8?q?=E7=99=BB=E5=BD=95=E5=8A=9F=E8=83=BD=E3=80=82=E7=8E=B0=E5=9C=A8?= =?UTF-8?q?=E8=BF=98=E5=89=A9=E4=B8=8B=E6=B3=A8=E5=86=8C=E5=8A=9F=E8=83=BD?= =?UTF-8?q?=E8=BF=98=E6=B2=A1=E5=AE=9E=E7=8E=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/database/Administrator.java | 24 +++++- src/database/Password.java | 72 +++++++++++++++++ src/database/Search.java | 99 +++++++++++++++++++++++ src/database/Student.java | 11 ++- src/database/SystemLogin.java | 5 +- src/database/Teacher.java | 139 ++++++++++++++++++++++++++++++++ src/database/TextSwing.java | 5 +- src/database/Update.java | 1 + 8 files changed, 349 insertions(+), 7 deletions(-) create mode 100644 src/database/Password.java create mode 100644 src/database/Search.java create mode 100644 src/database/Teacher.java diff --git a/src/database/Administrator.java b/src/database/Administrator.java index 5b0156a..6d90a28 100644 --- a/src/database/Administrator.java +++ b/src/database/Administrator.java @@ -10,6 +10,7 @@ import java.sql.*; * */ public class Administrator extends JFrame implements ActionListener{ + String account=""; Query query; JTable table; JScrollPane p; @@ -17,9 +18,10 @@ public class Administrator extends JFrame implements ActionListener{ JButton rf;//刷新 JMenuBar menubar; JMenu menu,subMenu; - JMenuItem item1,item2,item3,item4,item5; + JMenuItem item1,item2,item3,item4,item5,item6,item7; int i=0; - public Administrator() { + public Administrator(String account) { + this.account=account; setLayout(null); setTitle("管理员登录"); init(); @@ -40,6 +42,10 @@ public class Administrator extends JFrame implements ActionListener{ item4.addActionListener(this); item5=new JMenuItem("修改信息"); item5.addActionListener(this); + item6=new JMenuItem("修改密码"); + item6.addActionListener(this); + item7=new JMenuItem("重新登录"); + item7.addActionListener(this); subMenu.add(item3); subMenu.add(item4); @@ -48,6 +54,8 @@ public class Administrator extends JFrame implements ActionListener{ menu.add(item1); menu.add(subMenu); menu.add(item2); + menu.add(item6); + menu.add(item7); menubar.add(menu); setJMenuBar(menubar); @@ -69,6 +77,8 @@ public class Administrator extends JFrame implements ActionListener{ String []ziduan=query.getColumnName();//获得student的列名 String [][]record=query.getRecord();//获得student的数据 table=new JTable(record,ziduan); + table.setFont(new Font("宋体",Font.BOLD,16)); + table.setRowHeight(40); p=new JScrollPane(table); rf=new JButton("刷新"); rf.addActionListener(this); @@ -94,5 +104,15 @@ public class Administrator extends JFrame implements ActionListener{ if(e.getSource()==item4) { new Delete(); } + //修改密码 + if(e.getSource()==item6) { + new Password(account); + } + + //重新登录 + if(e.getSource()==item7) { + this.dispose(); + new SystemLogin(); + } } } \ No newline at end of file diff --git a/src/database/Password.java b/src/database/Password.java new file mode 100644 index 0000000..a3b34a9 --- /dev/null +++ b/src/database/Password.java @@ -0,0 +1,72 @@ +package database; + +import java.awt.*; +import java.awt.event.*; +import java.sql.*; +import javax.swing.*; + +/** + * 修改密码(老师) + * @author lsj + * + */ +public class Password extends JDialog implements ActionListener{ + String account=""; + + JTextField input; + JLabel label; + JButton button; + + public Password(String account) { + this.account=account; + init(); + setVisible(true); + setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); + } + public void init() { + setLayout(null); + setTitle("修改密码"); + setBounds(450,300,350,100); + label=new JLabel("请输入新的密码:"); + button=new JButton("确定"); + input=new JTextField(25); + + add(label); + add(input); + add(button); + + label.setBounds(10,10,160,30); + input.setBounds(120,10,100,30); + button.setBounds(230,10,70,30); + button.addActionListener(this); + } + + + public void actionPerformed(ActionEvent e) { + if(e.getSource()==button) { + int m=0; + Connection con; + PreparedStatement sql; + try { + con=DriverManager.getConnection("jdbc:derby:学生信息管理系统;create=false"); + String SQL="update zhanghao set password=? where account='"+account+"'"; + sql=con.prepareStatement(SQL); + sql.setString(1, input.getText().trim()); + m=sql.executeUpdate(); + con.close(); + } + catch(SQLException exp) { + JOptionPane.showMessageDialog(null,exp,"消息对话框",JOptionPane.WARNING_MESSAGE); + } + + if(m!=0) { + JOptionPane.showMessageDialog(null,"修改成功","消息对话框",JOptionPane.WARNING_MESSAGE); + this.dispose(); + } + else + JOptionPane.showMessageDialog(null,"修改失败","消息对话框",JOptionPane.WARNING_MESSAGE); + } + + } + +} diff --git a/src/database/Search.java b/src/database/Search.java new file mode 100644 index 0000000..3da76f5 --- /dev/null +++ b/src/database/Search.java @@ -0,0 +1,99 @@ +package database; + +import java.awt.*; +import java.awt.event.*; +import java.sql.*; +import javax.swing.*; + +/** + * 搜索信息 + * @author lsj + * + */ +public class Search extends JDialog implements ActionListener{ + String s=""; + JTextField input; + JLabel label; + JTable table; + JButton button,buttonC; + JScrollPane p; + int i=0; + + Query query; + String SQL=""; + + String record[][]= {{"","","","","","","","","",}}; + String ziduan[]= {"学号","姓名","性别","出生","籍贯","专业","班级","联系方式","技能",}; + + public Search(String s) { + this.s=s; + setType(); + init(); + setVisible(true); + setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); + } + public void setType() { + if(s.equals("姓名")) + label=new JLabel("姓 名:"); + else if(s.equals("学号")) + label=new JLabel("学 号:"); + else if(s.equals("专业")) + label=new JLabel("专 业:"); + else if(s.equals("班级")) + label=new JLabel("班 级:"); + else if(s.equals("性别")) + label=new JLabel("性 别:"); + } + + public void init() { + setLayout(null); + setTitle("搜索信息"); + setBounds(200,200,900,400); + input=new JTextField(20); + button=new JButton("查找"); + button.addActionListener(this); + + add(label); + add(input); + add(button); + + label.setBounds(10,10,160,30); + input.setBounds(70,10,100,30); + button.setBounds(200,10,70,30); + } + + + public void actionPerformed(ActionEvent e) { + if(e.getSource()==button) { + if(i==1) { + remove(p); + remove(table); + remove(buttonC); + } + query=new Query(); + query.setSQL("select * from student where "+s+"='"+input.getText()+"'"); + query.startQuery(); + record=query.getRecord(); + ziduan=query.getColumnName(); + + table=new JTable(record,ziduan); + table.setFont(new Font("宋体",Font.BOLD,16)); + table.setRowHeight(40); + p=new JScrollPane(table); + add(p); + p.setBounds(10,60,855,150); + + buttonC=new JButton("关闭"); + buttonC.addActionListener(this); + add(buttonC); + buttonC.setBounds(10,250,70,30); + i=1; + } + + + if(e.getSource()==buttonC) { + this.dispose(); + } + } + +} diff --git a/src/database/Student.java b/src/database/Student.java index c456ad0..9cb311f 100644 --- a/src/database/Student.java +++ b/src/database/Student.java @@ -18,7 +18,7 @@ public class Student extends JFrame implements ActionListener{ JMenuBar menubar; JMenu menu; - JMenuItem item1,item2; + JMenuItem item1,item2,item3; JButton rf;//刷新 JButton buttonG;//更新 int i=0; @@ -42,10 +42,13 @@ public class Student extends JFrame implements ActionListener{ item1.addActionListener(this); item2=new JMenuItem("修改信息"); item2.addActionListener(this); + item3=new JMenuItem("重新登录"); + item3.addActionListener(this); menu.add(item1); menu.add(item2); + menu.add(item3); menubar.add(menu); setJMenuBar(menubar); } @@ -153,6 +156,12 @@ public class Student extends JFrame implements ActionListener{ else JOptionPane.showMessageDialog(null,"更新失败","消息对话框",JOptionPane.WARNING_MESSAGE); } + + //重新登录 + if(e.getSource()==item3) { + this.dispose(); + new SystemLogin(); + } } } \ No newline at end of file diff --git a/src/database/SystemLogin.java b/src/database/SystemLogin.java index 8ece959..8194069 100644 --- a/src/database/SystemLogin.java +++ b/src/database/SystemLogin.java @@ -77,7 +77,8 @@ public class SystemLogin extends JFrame implements ActionListener{ JOptionPane.showMessageDialog(null,"账号或密码错误","消息对话框",JOptionPane.WARNING_MESSAGE); } else if(s.equals("教师")) { - JOptionPane.showMessageDialog(null,s,"消息对话框",JOptionPane.WARNING_MESSAGE); + this.dispose(); + new Teacher(account.getText()); } else if(s.equals("学生")){ this.dispose(); @@ -85,7 +86,7 @@ public class SystemLogin extends JFrame implements ActionListener{ } else if(s.equals("管理员")) { this.dispose(); - new Administrator(); + new Administrator(account.getText()); } } catch(Exception exp) {} diff --git a/src/database/Teacher.java b/src/database/Teacher.java new file mode 100644 index 0000000..eba2994 --- /dev/null +++ b/src/database/Teacher.java @@ -0,0 +1,139 @@ +package database; + +import java.awt.*; +import java.awt.event.*; +import javax.swing.*; +import java.sql.*; + +/** + * 学生界面 + * @author lsj + * + */ +public class Teacher extends JFrame implements ActionListener{ + String account=""; + Query query; + JTable table; + JScrollPane p; + JTextField input; + JLabel label; + + JMenuBar menubar; + JMenu menu,subMenu; + JMenuItem item1,item2,item3,item4,item5,item6,item7,item8; + JButton rf;//刷新 + JButton buttonG;//更新 + int i=0; + + public Teacher(String account) { + this.account=account; + setLayout(null); + setTitle("老师登录"); + init(); + setBounds(300,200,950,300); + setVisible(true); + setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); + } + + public void init() { + menubar=new JMenuBar(); + menu=new JMenu("管理"); + item1=new JMenuItem("查询信息"); + item1.addActionListener(this); + subMenu=new JMenu("搜索信息"); + subMenu.addActionListener(this); + item2=new JMenuItem("按姓名搜索"); + item2.addActionListener(this); + item3=new JMenuItem("按学号搜索"); + item3.addActionListener(this); + item4=new JMenuItem("按班级搜索"); + item4.addActionListener(this); + item5=new JMenuItem("按专业搜索"); + item5.addActionListener(this); + item6=new JMenuItem("按性别搜索"); + item6.addActionListener(this); + item7=new JMenuItem("修改密码"); + item7.addActionListener(this); + item8=new JMenuItem("重新登录"); + item8.addActionListener(this); + + subMenu.add(item2); + subMenu.add(item3); + subMenu.add(item4); + subMenu.add(item5); + subMenu.add(item6); + + menu.add(item1); + menu.add(subMenu); + menu.add(item7); + menu.add(item8); + menubar.add(menu); + setJMenuBar(menubar); + } + + + public void actionPerformed(ActionEvent e) { + //查询信息 + if(e.getSource()==item1||e.getSource()==rf) { + if(i==2) { + remove(p); + remove(buttonG); + } + if(i==1) { + remove(p); + remove(rf); + JOptionPane.showMessageDialog(null,"刷新成功","消息对话框",JOptionPane.WARNING_MESSAGE); + } + + query=new Query(); + query.setSQL("select * from student"); + query.startQuery(); + String []ziduan=query.getColumnName();//获得student的列名 + String [][]record=query.getRecord();//获得student的数据 + table=new JTable(record,ziduan); + table.setFont(new Font("宋体",Font.BOLD,16)); + table.setRowHeight(40); + p=new JScrollPane(table); + rf=new JButton("刷新"); + rf.addActionListener(this); + add(p); + add(rf); + p.setBounds(10, 10, 900, 150); + rf.setBounds(400,200,60,40); + rf.addActionListener(this); + i=1; + } + + //按名字搜索 + if(e.getSource()==item2) { + Search search=new Search("姓名"); + } + //按学号搜索 + if(e.getSource()==item3) { + Search search=new Search("学号"); + } + //按班级搜索 + if(e.getSource()==item4) { + Search search=new Search("班级"); + } + //按专业搜索 + if(e.getSource()==item5) { + Search search=new Search("专业"); + } + //按性别搜索 + if(e.getSource()==item6) { + Search search=new Search("性别"); + } + + //修改密码 + if(e.getSource()==item7) { + new Password(account); + } + //重新登录 + if(e.getSource()==item8) { + this.dispose(); + new SystemLogin(); + } + } + +} diff --git a/src/database/TextSwing.java b/src/database/TextSwing.java index 72b07ab..fac1e77 100644 --- a/src/database/TextSwing.java +++ b/src/database/TextSwing.java @@ -8,10 +8,11 @@ import javax.swing.JTable; public class TextSwing { public static void main(String args[]) { - //new SystemLogin(); + new SystemLogin(); //new Update(); //new E(); //new Student("201"); - new Administrator(); + //new Administrator(); + //new Teacher("101"); } } \ No newline at end of file diff --git a/src/database/Update.java b/src/database/Update.java index b2016a6..3522893 100644 --- a/src/database/Update.java +++ b/src/database/Update.java @@ -16,6 +16,7 @@ public class Update extends JDialog implements ActionListener{ JScrollPane p; JTextField input; JLabel label; + JButton buttonC,buttonG; String []head= {"密码","姓名","性别","出生","籍贯","专业","班级","联系方式","技能",}; String [][]a= {{"","","","","","","","",""}}; -- Gitee From fc6a0b02e0b570cc78d0748e8418d1699ad5f7d1 Mon Sep 17 00:00:00 2001 From: 86184 <86184@LAPTOP-H62NC2FB> Date: Thu, 26 Aug 2021 16:47:50 +0800 Subject: [PATCH 16/24] =?UTF-8?q?=E5=88=A0=E9=99=A4=E4=B9=8B=E5=89=8D?= =?UTF-8?q?=E6=B5=8B=E8=AF=95=E5=BB=BA=E7=9A=84=E7=B1=BB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/database/DialogOne.java | 57 ------------------------------------- 1 file changed, 57 deletions(-) delete mode 100644 src/database/DialogOne.java diff --git a/src/database/DialogOne.java b/src/database/DialogOne.java deleted file mode 100644 index a6509f8..0000000 --- a/src/database/DialogOne.java +++ /dev/null @@ -1,57 +0,0 @@ -package database; - -import javax.swing.*; - -import java.sql.*; - -import java.awt.*; -import java.awt.event.*; - -public class DialogOne extends JDialog implements ActionListener{ - String []head= {"学号","姓名","性别","出生","籍贯","专业","班级","联系方式","技能"}; - String [][]a= {{"","","","","","","","",""}};//更新时装载信息的载体 - JTable table; - JButton b; - String ziduan[]; - String record[][]; - DialogOne(){ - init(); - setVisible(true); - setBounds(400,200,200,300); - setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); - } - - public void init() { - table=new JTable(a,head); - table.setFont(new Font("宋体",Font.BOLD,16)); - b=new JButton("添加"); - add(new JScrollPane(table)); - add(b); - } - - - public void actionPerformed(ActionEvent e) { - Connection con; - PreparedStatement sql; - try { - int m=0; - con=DriverManager.getConnection("jdbc:derby:学生信息管理系统;create=false"); - String SQL="insert into student values(?,?,?,?,?,?,?,?,?)"; - sql=con.prepareStatement(SQL); - sql.setString(1, a[0][0].trim()); - sql.setString(2, a[0][1].trim()); - sql.setString(3, a[0][2].trim()); - sql.setString(4, a[0][3].trim()); - sql.setString(5, a[0][4].trim()); - m=sql.executeUpdate(); - con.close(); - if(m!=0) - JOptionPane.showMessageDialog(null,"添加成功","消息对话框",JOptionPane.WARNING_MESSAGE); - else - JOptionPane.showMessageDialog(null,"添加失败","消息对话框",JOptionPane.WARNING_MESSAGE); - } - catch(SQLException exp) { - JOptionPane.showMessageDialog(null,exp,"消息对话框",JOptionPane.WARNING_MESSAGE); - } - } -} \ No newline at end of file -- Gitee From 6f67869235eb1c6c562605747d3734f5b383b138 Mon Sep 17 00:00:00 2001 From: 86184 <86184@LAPTOP-H62NC2FB> Date: Thu, 26 Aug 2021 17:31:22 +0800 Subject: [PATCH 17/24] =?UTF-8?q?=E5=8A=A0=E4=BA=86=E4=B8=80=E4=B8=AA?= =?UTF-8?q?=E6=B3=A8=E5=86=8C=E7=9A=84=E7=B1=BB=E5=92=8C=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E5=BA=93=EF=BC=8C=E7=94=A8=E4=BA=8E=E6=9A=82=E5=AD=98=E6=B3=A8?= =?UTF-8?q?=E5=86=8C=E7=9A=84=E4=BF=A1=E6=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/database/SystemLogin.java | 9 ++++ src/database/Zhuce.java | 80 +++++++++++++++++++++++++++++++++++ 2 files changed, 89 insertions(+) create mode 100644 src/database/Zhuce.java diff --git a/src/database/SystemLogin.java b/src/database/SystemLogin.java index 8194069..beaf576 100644 --- a/src/database/SystemLogin.java +++ b/src/database/SystemLogin.java @@ -4,6 +4,7 @@ import java.awt.*; import java.awt.event.*; import javax.swing.*; + /** * 系统登录界面 * @author lsj @@ -54,9 +55,11 @@ public class SystemLogin extends JFrame implements ActionListener{ add(h1); f.addActionListener(this); + t.addActionListener(this); } public void actionPerformed(ActionEvent e) { + if(e.getSource()==f) { String SQL="select * from zhanghao"; query=new Query(); try { @@ -90,5 +93,11 @@ public class SystemLogin extends JFrame implements ActionListener{ } } catch(Exception exp) {} + } + + //注册 + if(e.getSource()==t) { + new Zhuce(account.getText()); + } } } diff --git a/src/database/Zhuce.java b/src/database/Zhuce.java new file mode 100644 index 0000000..be002e3 --- /dev/null +++ b/src/database/Zhuce.java @@ -0,0 +1,80 @@ +package database; +import java.awt.*; +import java.awt.event.*; +import javax.swing.*; +import java.sql.*; + +/** + * 注册界面 + * @author lsj + * + */ +public class Zhuce extends JDialog implements ActionListener{ + String account=""; + String []head= {"学号","姓名","性别","出生","籍贯","专业","班级","联系方式","技能","密码","身份"}; + String [][]a= {{"","","","","","","","","","","",}}; + + JTable table; + JScrollPane p; + JButton button; + + public Zhuce(String account) { + this.account=account; + a[0][0]=account; + init(); + setVisible(true); + setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); + } + public void init() { + setLayout(null); + setTitle("注册账号"); + setBounds(200,200,900,200); + + table=new JTable(a,head); + table.setFont(new Font("宋体",Font.BOLD,16)); + table.setRowHeight(40); + + p=new JScrollPane(table); + button=new JButton("注册"); + button.addActionListener(this); + + add(p); + add(button); + + p.setBounds(10,10,855,90); + button.setBounds(350,100,70,30); + button.addActionListener(this); + } + + public void actionPerformed(ActionEvent e) { + int m=0; + Connection con; + PreparedStatement sql; + try { + con=DriverManager.getConnection("jdbc:derby:学生信息管理系统;create=false"); + String SQL="insert into zhuce values(?,?,?,?,?,?,?,?,?,?,?)"; + sql=con.prepareStatement(SQL); + sql.setString(1, a[0][0].trim()); + sql.setString(2, a[0][1].trim()); + sql.setString(3, a[0][2].trim()); + sql.setString(4, a[0][3].trim()); + sql.setString(5, a[0][4].trim()); + sql.setString(6, a[0][5].trim()); + sql.setString(7, a[0][6].trim()); + sql.setString(8, a[0][7].trim()); + sql.setString(9, a[0][8].trim()); + sql.setString(10, a[0][9].trim()); + sql.setString(11, a[0][10].trim()); + m=1; + con.close(); + } + catch(SQLException exp) { + JOptionPane.showMessageDialog(null,exp,"消息对话框",JOptionPane.WARNING_MESSAGE); + } + if(m!=0) { + JOptionPane.showMessageDialog(null,"注册成功,等待审核","消息对话框",JOptionPane.WARNING_MESSAGE);} + else { + JOptionPane.showMessageDialog(null,"注册失败","消息对话框",JOptionPane.WARNING_MESSAGE);} + } + +} -- Gitee From 1948b8191ee1123cb254f484d9dcdfe41316d408 Mon Sep 17 00:00:00 2001 From: 86184 <86184@LAPTOP-H62NC2FB> Date: Thu, 26 Aug 2021 22:23:50 +0800 Subject: [PATCH 18/24] =?UTF-8?q?=E6=B3=A8=E5=86=8C=E5=BC=84=E4=BA=86?= =?UTF-8?q?=EF=BC=8C=E4=BD=86=E5=87=BA=E7=8E=B0=E4=BA=86bug=EF=BC=8C?= =?UTF-8?q?=E8=BF=98=E5=9C=A8=E4=BF=AE=E5=A4=8D=E4=B8=AD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/database/Administrator.java | 5 ++ src/database/E.java | 94 ++++++++++++++++++++++--- src/database/He.java | 119 ++++++++++++++++++++++++++++++++ src/database/TextSwing.java | 6 +- src/database/Zhuce.java | 3 +- 5 files changed, 213 insertions(+), 14 deletions(-) create mode 100644 src/database/He.java diff --git a/src/database/Administrator.java b/src/database/Administrator.java index 6d90a28..86c2fd7 100644 --- a/src/database/Administrator.java +++ b/src/database/Administrator.java @@ -36,6 +36,7 @@ public class Administrator extends JFrame implements ActionListener{ item1=new JMenuItem("查询信息"); item1.addActionListener(this); item2=new JMenuItem("审核信息"); + item2.addActionListener(this); item3=new JMenuItem("添加信息"); item3.addActionListener(this); item4=new JMenuItem("删除信息"); @@ -91,6 +92,10 @@ public class Administrator extends JFrame implements ActionListener{ } catch(Exception exp) {} } + //审核信息 + if(e.getSource()==item2) { + new He(); + } //添加信息 if(e.getSource()==item3) { diff --git a/src/database/E.java b/src/database/E.java index 4e7b8ce..1c574a4 100644 --- a/src/database/E.java +++ b/src/database/E.java @@ -1,18 +1,90 @@ package database; +import java.awt.*; +import java.awt.event.*; import java.sql.*; +import javax.swing.*; +import javax.swing.table.TableCellRenderer; -import javax.swing.JScrollPane; -import javax.swing.JTable; public class E { - Query query; - String []head= {"密码","姓名","性别","出生","籍贯","专业","班级","联系方式","技能"}; - String [][]a= {{"","","","","","","","","",""}}; - String [][]b= {{"","","","","","","","","",""}}; - - E() { - - + public static void main(String args[]) { + new AutoCaseListV("窗口"); } -} \ No newline at end of file +} + +class MyButtonRender implements TableCellRenderer { + private JPanel jPanel; + private JButton jButton; + + public MyButtonRender() { + initJPanel(); + initButton(); + jPanel.add(jButton); + } + + private void initButton() { + jButton = new JButton(); + jButton.setBounds(2, 3, 80, 30); + jButton.addActionListener( + new ActionListener() { + @Override + public void actionPerformed(ActionEvent e) { + System.out.println("" + e.getActionCommand()); + System.out.println(jButton.getText()); + } + }); + } + + private void initJPanel() { + jPanel = new JPanel(); + jPanel.setLayout(null); + } + + + public Component getTableCellRendererComponent( + JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) { + jButton.setText("编辑"); + return jPanel; + } +} + +class AutoCaseListV extends JFrame { + private static final long serialVersionUID = -6310560018875149946L; + private Container container = getContentPane(); + + public AutoCaseListV(String token) { + setTitle("待送件列表"); + // 设计窗体大小 + setBounds(0, 0, 800, 900); + // 添加一块桌布 + container.setLayout(new BorderLayout()); + setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + // 初始化窗口 + init(token); + // 设计窗口可见 + setVisible(true); + } + /** + * @author FeianLing + * @date 2019/9/9 + * @desc 待送检列表数据显示初始化 + * @param + * @return void + */ + private void init(String token) { + String[] cNames = {"案号", "商标名称", "申请类别", "订单号", "委托人", "申请人", "操作"}; + Object[][] rowData = { + {"2019T-US002413T", " SHAW UROY", "21", "201909097071", "Devi", "Deli", 1}, + {"2019T-US002414T", " SHAW UROY", "21", "201909097071", "Devi", "Deli", 2}, + {"2019T-US002415T", " SHAW UROY", "21", "201909097071", "Devi", "Deli", 3}, + {"2019T-US002416T", " SHAW UROY", "21", "201909097071", "Devi", "Deli", 4}, + }; + JTable table = new JTable(rowData, cNames); + table.setRowHeight(30); + JScrollPane scrollPane = new JScrollPane(table); + add(scrollPane); + table.getColumnModel().getColumn(6).setCellRenderer(new MyButtonRender()); + } +} + diff --git a/src/database/He.java b/src/database/He.java new file mode 100644 index 0000000..c7483a5 --- /dev/null +++ b/src/database/He.java @@ -0,0 +1,119 @@ +package database; +import java.awt.*; +import java.awt.event.*; +import javax.swing.*; +import java.sql.*; +public class He extends JDialog implements ActionListener{ + String []head= {"学号","姓名","性别","出生","籍贯","专业","班级","联系方式","技能","密码","身份"}; + String [][]a= {{"","","","","","","","","","","",}}; + + Query query; + JTable table; + JScrollPane p; + JButton button1,button2; + + + public He() { + init(); + setVisible(true); + setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); + } + + public void init() { + setLayout(null); + setTitle("审核信息"); + setBounds(330,250,900,200); + + query=new Query(); + query.setSQL("select * from zhuce"); + query.startQuery(); + a=query.getRecord();//获得student的数据 + table=new JTable(a,head); + table.setFont(new Font("宋体",Font.BOLD,16)); + table.setRowHeight(40); + + p=new JScrollPane(table); + button1=new JButton("通过"); + button1.addActionListener(this); + button2=new JButton("拒绝"); + button2.addActionListener(this); + + add(p); + add(button1); + add(button2); + + p.setBounds(10,10,855,90); + button1.setBounds(300,100,70,30); + button2.setBounds(450,100,70,30); + button1.addActionListener(this); + button2.addActionListener(this); + } + + public void actionPerformed(ActionEvent e) { + int m=0,n=0; + Connection con; + PreparedStatement sql; + if(e.getSource()==button1) { + try { + String uri="jdbc:derby:学生信息管理系统;create=false"; + con=DriverManager.getConnection(uri); + String SQL= + "insert into student values(?,?,?,?,?,?,?,?,?)"; + sql=con.prepareStatement(SQL); + sql.setString(1, a[0][0].trim()); + sql.setString(2, a[0][1].trim()); + sql.setString(3, a[0][2].trim()); + sql.setString(4, a[0][3].trim()); + sql.setString(5, a[0][4].trim()); + sql.setString(6, a[0][5].trim()); + sql.setString(7, a[0][6].trim()); + sql.setString(8, a[0][7].trim()); + sql.setString(9, a[0][8].trim()); + m=1; + con.close(); + } + catch(SQLException exp) { + JOptionPane.showMessageDialog(null,""+exp,"消息对话框",JOptionPane.WARNING_MESSAGE); + } + try { + String uri="jdbc:derby:学生信息管理系统;create=false"; + con=DriverManager.getConnection(uri); + String SQL="insert into zhanghao values(?,?,?)"; + sql=con.prepareStatement(SQL); + sql.setString(1, a[0][0].trim()); + sql.setString(2, a[0][9].trim()); + sql.setString(3, a[0][10].trim()); + n=1; + con.close(); + + SQL="delete from zhuce where 学号=?"; + sql=con.prepareStatement(SQL); + sql.setString(1, a[0][0].trim()); + con.close(); + } + catch(SQLException exp) { + JOptionPane.showMessageDialog(null,""+exp,"消息对话框",JOptionPane.WARNING_MESSAGE); + } + if(m!=0&&n!=0) + JOptionPane.showMessageDialog(null,""+"操作成功","消息对话框",JOptionPane.WARNING_MESSAGE); + else + JOptionPane.showMessageDialog(null,""+"操作失败","消息对话框",JOptionPane.WARNING_MESSAGE); + + //自动刷新表格 + remove(p); + query=new Query(); + query.setSQL("select * from zhuce"); + query.startQuery(); + a=query.getRecord();//获得student的数据 + table=new JTable(a,head); + table.setFont(new Font("宋体",Font.BOLD,16)); + table.setRowHeight(40); + + p=new JScrollPane(table); + add(p); + p.setBounds(10,10,855,90); + } + + } + +} \ No newline at end of file diff --git a/src/database/TextSwing.java b/src/database/TextSwing.java index fac1e77..8d2485d 100644 --- a/src/database/TextSwing.java +++ b/src/database/TextSwing.java @@ -8,11 +8,13 @@ import javax.swing.JTable; public class TextSwing { public static void main(String args[]) { - new SystemLogin(); + //new SystemLogin(); //new Update(); //new E(); //new Student("201"); - //new Administrator(); + new Administrator("301"); //new Teacher("101"); + //new Zhuce("204"); + } } \ No newline at end of file diff --git a/src/database/Zhuce.java b/src/database/Zhuce.java index be002e3..956480a 100644 --- a/src/database/Zhuce.java +++ b/src/database/Zhuce.java @@ -12,7 +12,8 @@ import java.sql.*; public class Zhuce extends JDialog implements ActionListener{ String account=""; String []head= {"学号","姓名","性别","出生","籍贯","专业","班级","联系方式","技能","密码","身份"}; - String [][]a= {{"","","","","","","","","","","",}}; + String [][]b= {{"","","","","","","","","","","",}}; + String [][]a= {{"204","","","2020-1-2","","","","","","","",}}; JTable table; JScrollPane p; -- Gitee From 3a288d193748bd644c6a6b1ef8c6b65f457df5f9 Mon Sep 17 00:00:00 2001 From: 86184 <86184@LAPTOP-H62NC2FB> Date: Thu, 26 Aug 2021 22:24:56 +0800 Subject: [PATCH 19/24] =?UTF-8?q?=E6=B3=A8=E5=86=8C=E5=BC=84=E5=A5=BD?= =?UTF-8?q?=E4=BA=86=EF=BC=8C=E4=BD=86=E5=87=BA=E7=8E=B0bug=EF=BC=8C?= =?UTF-8?q?=E7=8E=B0=E5=9C=A8=E8=BF=98=E5=9C=A8=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/database/He.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/database/He.java b/src/database/He.java index c7483a5..35ed40a 100644 --- a/src/database/He.java +++ b/src/database/He.java @@ -85,7 +85,7 @@ public class He extends JDialog implements ActionListener{ sql.setString(3, a[0][10].trim()); n=1; con.close(); - + SQL="delete from zhuce where 学号=?"; sql=con.prepareStatement(SQL); sql.setString(1, a[0][0].trim()); -- Gitee From fbf507efc3fde85cea9e74ea507bc39bba6fe070 Mon Sep 17 00:00:00 2001 From: 86184 <86184@LAPTOP-H62NC2FB> Date: Thu, 26 Aug 2021 23:51:01 +0800 Subject: [PATCH 20/24] =?UTF-8?q?Zhuce=E5=BC=84=E5=A5=BDbug=E4=BA=86?= =?UTF-8?q?=EF=BC=88=E4=B8=8D=E5=AE=8C=E5=85=A8=EF=BC=8C=E4=BD=86=E4=B8=8D?= =?UTF-8?q?=E5=BD=B1=E5=93=8D=E6=AD=A3=E5=B8=B8=E8=BF=90=E8=A1=8C=E6=93=8D?= =?UTF-8?q?=E4=BD=9C=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/database/E.java | 164 ++++++++++++++++++------------------ src/database/He.java | 16 ++-- src/database/TextSwing.java | 2 - src/database/Zhuce.java | 13 ++- 4 files changed, 97 insertions(+), 98 deletions(-) diff --git a/src/database/E.java b/src/database/E.java index 1c574a4..52de669 100644 --- a/src/database/E.java +++ b/src/database/E.java @@ -1,90 +1,86 @@ package database; - import java.awt.*; import java.awt.event.*; -import java.sql.*; import javax.swing.*; -import javax.swing.table.TableCellRenderer; - +import java.sql.*; -public class E { - public static void main(String args[]) { - new AutoCaseListV("窗口"); +/** + * 注册界面 + * @author lsj + * + */ +public class E extends JDialog implements ActionListener{ + String account=""; + String []head= {"学号","姓名","性别","出生","籍贯","专业","班级","联系方式","技能","密码","身份"}; + String [][]a= {{"","","","","","","","","","","",}}; + + JTable table; + JScrollPane p; + JButton button; + + public E(String account) { + this.account=account; + a[0][0]=account; + init(); + setVisible(true); + setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); } -} - -class MyButtonRender implements TableCellRenderer { - private JPanel jPanel; - private JButton jButton; - - public MyButtonRender() { - initJPanel(); - initButton(); - jPanel.add(jButton); - } - - private void initButton() { - jButton = new JButton(); - jButton.setBounds(2, 3, 80, 30); - jButton.addActionListener( - new ActionListener() { - @Override - public void actionPerformed(ActionEvent e) { - System.out.println("" + e.getActionCommand()); - System.out.println(jButton.getText()); - } - }); - } - - private void initJPanel() { - jPanel = new JPanel(); - jPanel.setLayout(null); - } - - - public Component getTableCellRendererComponent( - JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) { - jButton.setText("编辑"); - return jPanel; - } -} - -class AutoCaseListV extends JFrame { - private static final long serialVersionUID = -6310560018875149946L; - private Container container = getContentPane(); - - public AutoCaseListV(String token) { - setTitle("待送件列表"); - // 设计窗体大小 - setBounds(0, 0, 800, 900); - // 添加一块桌布 - container.setLayout(new BorderLayout()); - setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); - // 初始化窗口 - init(token); - // 设计窗口可见 - setVisible(true); - } - /** - * @author FeianLing - * @date 2019/9/9 - * @desc 待送检列表数据显示初始化 - * @param - * @return void - */ - private void init(String token) { - String[] cNames = {"案号", "商标名称", "申请类别", "订单号", "委托人", "申请人", "操作"}; - Object[][] rowData = { - {"2019T-US002413T", " SHAW UROY", "21", "201909097071", "Devi", "Deli", 1}, - {"2019T-US002414T", " SHAW UROY", "21", "201909097071", "Devi", "Deli", 2}, - {"2019T-US002415T", " SHAW UROY", "21", "201909097071", "Devi", "Deli", 3}, - {"2019T-US002416T", " SHAW UROY", "21", "201909097071", "Devi", "Deli", 4}, - }; - JTable table = new JTable(rowData, cNames); - table.setRowHeight(30); - JScrollPane scrollPane = new JScrollPane(table); - add(scrollPane); - table.getColumnModel().getColumn(6).setCellRenderer(new MyButtonRender()); - } -} - + public void init() { + System.out.println("sd"); + setLayout(null); + setTitle("注册账号"); + setBounds(200,200,900,200); + + table=new JTable(a,head); + table.setFont(new Font("宋体",Font.BOLD,16)); + table.setRowHeight(40); + + p=new JScrollPane(table); + button=new JButton("注册"); + button.addActionListener(this); + + add(p); + add(button); + + p.setBounds(10,10,855,90); + button.setBounds(350,100,70,30); + button.addActionListener(this); + } + + public void actionPerformed(ActionEvent e) { + int m=0,n=0; + Connection con; + PreparedStatement sql; + if(e.getSource()==button) { + try { + String uri="jdbc:derby:学生信息管理系统;create=false"; + con=DriverManager.getConnection(uri); + String SQL= + "insert into zhuce values(?,?,?,?,?,?,?,?,?,?,?)"; + sql=con.prepareStatement(SQL); + sql.setString(1, a[0][0].trim()); + sql.setString(2, a[0][1].trim()); + sql.setString(3, a[0][2].trim()); + sql.setString(4, a[0][3].trim()); + sql.setString(5, a[0][4].trim()); + sql.setString(6, a[0][5].trim()); + sql.setString(7, a[0][6].trim()); + sql.setString(8, a[0][7].trim()); + sql.setString(9, a[0][8].trim()); + sql.setString(10, a[0][9].trim()); + sql.setString(11, a[0][10].trim()); + m=1; + System.out.println(a[0][0]+a[0][10]); + con.close(); + if(m==1) + JOptionPane.showMessageDialog(null,""+"注册成功,等待审核","消息对话框",JOptionPane.WARNING_MESSAGE); + else + JOptionPane.showMessageDialog(null,""+"注册失败","消息对话框",JOptionPane.WARNING_MESSAGE); + } + catch(SQLException exp) { + JOptionPane.showMessageDialog(null,""+exp,"消息对话框",JOptionPane.WARNING_MESSAGE); + } + } + + } +} \ No newline at end of file diff --git a/src/database/He.java b/src/database/He.java index 35ed40a..73e3cc8 100644 --- a/src/database/He.java +++ b/src/database/He.java @@ -85,15 +85,21 @@ public class He extends JDialog implements ActionListener{ sql.setString(3, a[0][10].trim()); n=1; con.close(); - - SQL="delete from zhuce where 学号=?"; - sql=con.prepareStatement(SQL); - sql.setString(1, a[0][0].trim()); - con.close(); } catch(SQLException exp) { JOptionPane.showMessageDialog(null,""+exp,"消息对话框",JOptionPane.WARNING_MESSAGE); } +// try { +// String uri="jdbc:derby:学生信息管理系统;create=false"; +// con=DriverManager.getConnection(uri); +// String SQL="delete from zhuce where 学号=?"; +// sql=con.prepareStatement(SQL); +// sql.setString(1, a[0][0].trim()); +// con.close(); +// } +// catch(SQLException exp) { +// JOptionPane.showMessageDialog(null,""+exp,"消息对话框",JOptionPane.WARNING_MESSAGE); +// } if(m!=0&&n!=0) JOptionPane.showMessageDialog(null,""+"操作成功","消息对话框",JOptionPane.WARNING_MESSAGE); else diff --git a/src/database/TextSwing.java b/src/database/TextSwing.java index 8d2485d..4e8879d 100644 --- a/src/database/TextSwing.java +++ b/src/database/TextSwing.java @@ -1,7 +1,6 @@ package database; import java.sql.*; - import javax.swing.JOptionPane; import javax.swing.JScrollPane; import javax.swing.JTable; @@ -9,7 +8,6 @@ import javax.swing.JTable; public class TextSwing { public static void main(String args[]) { //new SystemLogin(); - //new Update(); //new E(); //new Student("201"); new Administrator("301"); diff --git a/src/database/Zhuce.java b/src/database/Zhuce.java index 956480a..6ec1aeb 100644 --- a/src/database/Zhuce.java +++ b/src/database/Zhuce.java @@ -12,8 +12,7 @@ import java.sql.*; public class Zhuce extends JDialog implements ActionListener{ String account=""; String []head= {"学号","姓名","性别","出生","籍贯","专业","班级","联系方式","技能","密码","身份"}; - String [][]b= {{"","","","","","","","","","","",}}; - String [][]a= {{"204","","","2020-1-2","","","","","","","",}}; + String [][]a= {{"","","","","","","","","","","",}}; JTable table; JScrollPane p; @@ -66,16 +65,16 @@ public class Zhuce extends JDialog implements ActionListener{ sql.setString(9, a[0][8].trim()); sql.setString(10, a[0][9].trim()); sql.setString(11, a[0][10].trim()); - m=1; + m=sql.executeUpdate();; con.close(); } catch(SQLException exp) { JOptionPane.showMessageDialog(null,exp,"消息对话框",JOptionPane.WARNING_MESSAGE); } - if(m!=0) { - JOptionPane.showMessageDialog(null,"注册成功,等待审核","消息对话框",JOptionPane.WARNING_MESSAGE);} - else { - JOptionPane.showMessageDialog(null,"注册失败","消息对话框",JOptionPane.WARNING_MESSAGE);} + if(m!=0) { + JOptionPane.showMessageDialog(null,"注册成功,等待审核","消息对话框",JOptionPane.WARNING_MESSAGE);} + else { + JOptionPane.showMessageDialog(null,"注册失败","消息对话框",JOptionPane.WARNING_MESSAGE);} } } -- Gitee From 193ea14b3f0b61c18a5a8a282a3e851e70b39340 Mon Sep 17 00:00:00 2001 From: 86184 <86184@LAPTOP-H62NC2FB> Date: Fri, 27 Aug 2021 10:35:17 +0800 Subject: [PATCH 21/24] =?UTF-8?q?bug=E5=B7=B2=E7=BB=8F=E4=BF=AE=E5=A4=8D?= =?UTF-8?q?=EF=BC=8C=E6=B3=A8=E5=86=8C=E5=8A=9F=E8=83=BD=E8=BF=98=E6=9C=89?= =?UTF-8?q?=E7=91=95=E7=96=B5=EF=BC=8C=E5=86=8D=E5=AE=8C=E5=96=84=E5=AE=8C?= =?UTF-8?q?=E5=96=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/database/Add.java | 12 +++++- src/database/He.java | 77 ++++++++++++++++++++++--------------- src/database/TextSwing.java | 8 +--- src/database/Zhuce.java | 6 +-- 4 files changed, 62 insertions(+), 41 deletions(-) diff --git a/src/database/Add.java b/src/database/Add.java index b2d0d0a..ee4c39f 100644 --- a/src/database/Add.java +++ b/src/database/Add.java @@ -77,8 +77,18 @@ public class Add extends JDialog implements ActionListener{ catch(SQLException exp) { JOptionPane.showMessageDialog(null,""+exp,"消息对话框",JOptionPane.WARNING_MESSAGE); } - if(m!=0&&n!=0) + if(m!=0&&n!=0) { JOptionPane.showMessageDialog(null,""+"添加成功","消息对话框",JOptionPane.WARNING_MESSAGE); + for(int i=0;i Date: Fri, 27 Aug 2021 11:14:25 +0800 Subject: [PATCH 22/24] =?UTF-8?q?=E6=B3=A8=E5=86=8C=E5=8A=9F=E8=83=BD?= =?UTF-8?q?=E5=87=BA=E7=8E=B0=E7=9A=84=E7=9B=91=E8=A7=86=E6=89=A7=E8=A1=8C?= =?UTF-8?q?=E4=B8=A4=E6=AC=A1=E5=B7=B2=E7=BB=8F=E8=A7=A3=E5=86=B3=EF=BC=8C?= =?UTF-8?q?=E4=B8=8B=E9=9D=A2=E5=AE=8C=E5=96=84=E7=99=BB=E5=BD=95=E7=95=8C?= =?UTF-8?q?=E9=9D=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/database/Add.java | 2 +- src/database/He.java | 11 ++++++++--- src/database/Query.java | 1 - src/database/SystemLogin.java | 2 +- src/database/Teacher.java | 10 +++++----- src/database/Window.java | 10 ++++++++++ src/database/Zhuce.java | 12 ++++++++++-- 7 files changed, 35 insertions(+), 13 deletions(-) create mode 100644 src/database/Window.java diff --git a/src/database/Add.java b/src/database/Add.java index ee4c39f..c6d9067 100644 --- a/src/database/Add.java +++ b/src/database/Add.java @@ -69,7 +69,7 @@ public class Add extends JDialog implements ActionListener{ String SQL="insert into zhanghao values(?,?,?)"; sql=con.prepareStatement(SQL); sql.setString(1, a[0][0].trim()); - sql.setString(2, a[0][9]); + sql.setString(2, a[0][9].trim()); sql.setString(3, "学生"); n=sql.executeUpdate(); con.close(); diff --git a/src/database/He.java b/src/database/He.java index 61918d9..d44f87e 100644 --- a/src/database/He.java +++ b/src/database/He.java @@ -52,6 +52,7 @@ public class He extends JDialog implements ActionListener{ Connection con; PreparedStatement sql; if(e.getSource()==button1) { + if(a[0][10].equals("学生")) { try { String uri="jdbc:derby:学生信息管理系统;create=false"; con=DriverManager.getConnection(uri); @@ -73,6 +74,9 @@ public class He extends JDialog implements ActionListener{ catch(SQLException exp) { JOptionPane.showMessageDialog(null,""+exp,"消息对话框",JOptionPane.WARNING_MESSAGE); } + } + + //通用 try { String uri="jdbc:derby:学生信息管理系统;create=false"; con=DriverManager.getConnection(uri); @@ -87,6 +91,7 @@ public class He extends JDialog implements ActionListener{ catch(SQLException exp) { JOptionPane.showMessageDialog(null,""+exp,"消息对话框",JOptionPane.WARNING_MESSAGE); } + try { String uri="jdbc:derby:学生信息管理系统;create=false"; con=DriverManager.getConnection(uri); @@ -99,13 +104,13 @@ public class He extends JDialog implements ActionListener{ catch(SQLException exp) { JOptionPane.showMessageDialog(null,""+exp,"消息对话框",JOptionPane.WARNING_MESSAGE); } - if(m!=0&&n!=0&&x!=0) + if(n!=0&&x!=0) JOptionPane.showMessageDialog(null,""+"操作成功","消息对话框",JOptionPane.WARNING_MESSAGE); else JOptionPane.showMessageDialog(null,""+"操作失败","消息对话框",JOptionPane.WARNING_MESSAGE); - - } + } + if(e.getSource()==button2) { try { String uri="jdbc:derby:学生信息管理系统;create=false"; diff --git a/src/database/Query.java b/src/database/Query.java index 3454b62..0223355 100644 --- a/src/database/Query.java +++ b/src/database/Query.java @@ -4,7 +4,6 @@ import java.sql.*; /** * 查询、提取数据库数据 * @author lsj - * */ public class Query { diff --git a/src/database/SystemLogin.java b/src/database/SystemLogin.java index beaf576..dd77a91 100644 --- a/src/database/SystemLogin.java +++ b/src/database/SystemLogin.java @@ -79,7 +79,7 @@ public class SystemLogin extends JFrame implements ActionListener{ if(m==0) { JOptionPane.showMessageDialog(null,"账号或密码错误","消息对话框",JOptionPane.WARNING_MESSAGE); } - else if(s.equals("教师")) { + else if(s.equals("老师")) { this.dispose(); new Teacher(account.getText()); } diff --git a/src/database/Teacher.java b/src/database/Teacher.java index eba2994..b8a6f70 100644 --- a/src/database/Teacher.java +++ b/src/database/Teacher.java @@ -106,23 +106,23 @@ public class Teacher extends JFrame implements ActionListener{ //按名字搜索 if(e.getSource()==item2) { - Search search=new Search("姓名"); + new Search("姓名"); } //按学号搜索 if(e.getSource()==item3) { - Search search=new Search("学号"); + new Search("学号"); } //按班级搜索 if(e.getSource()==item4) { - Search search=new Search("班级"); + new Search("班级"); } //按专业搜索 if(e.getSource()==item5) { - Search search=new Search("专业"); + new Search("专业"); } //按性别搜索 if(e.getSource()==item6) { - Search search=new Search("性别"); + new Search("性别"); } //修改密码 diff --git a/src/database/Window.java b/src/database/Window.java new file mode 100644 index 0000000..476c05b --- /dev/null +++ b/src/database/Window.java @@ -0,0 +1,10 @@ +package database; + +public class Window { + + public static void main(String[] args) { + // TODO Auto-generated method stub + new SystemLogin(); + } + +} diff --git a/src/database/Zhuce.java b/src/database/Zhuce.java index 638cda3..31ea2d4 100644 --- a/src/database/Zhuce.java +++ b/src/database/Zhuce.java @@ -11,12 +11,13 @@ import java.sql.*; */ public class Zhuce extends JDialog implements ActionListener{ String account=""; - String []head= {"学号","姓名","性别","出生","籍贯","专业","班级","联系方式","技能","密码","身份"}; + String []head= {"学号/工号","姓名","性别","出生","籍贯","专业","班级","联系方式","技能","密码","身份"}; String [][]a= {{"","","","","","","","","","","",}}; JTable table; JScrollPane p; JButton button; + JLabel label; public Zhuce(String account) { this.account=account; @@ -37,18 +38,23 @@ public class Zhuce extends JDialog implements ActionListener{ p=new JScrollPane(table); button=new JButton("注册"); button.addActionListener(this); + label=new JLabel("(若注册老师或管理员账号,则只需填写工号,出生,密码,身份四个信息)"); add(p); add(button); + add(label); p.setBounds(10,10,855,90); button.setBounds(350,100,70,30); + label.setBounds(200, 140, 450, 20); } public void actionPerformed(ActionEvent e) { int m=0; Connection con; PreparedStatement sql; + if(a[0][10].equals("学生")||a[0][10].equals("老师")||a[0][10].equals("管理员")) { + try { con=DriverManager.getConnection("jdbc:derby:学生信息管理系统;create=false"); String SQL="insert into zhuce values(?,?,?,?,?,?,?,?,?,?,?)"; @@ -76,5 +82,7 @@ public class Zhuce extends JDialog implements ActionListener{ else { JOptionPane.showMessageDialog(null,"注册失败","消息对话框",JOptionPane.WARNING_MESSAGE);} } - + else + JOptionPane.showMessageDialog(null,"注册失败,请输入正确的身份","消息对话框",JOptionPane.WARNING_MESSAGE); + } } -- Gitee From 21b71f944c34e779dec269c652830ad0de78890a Mon Sep 17 00:00:00 2001 From: 86184 <86184@LAPTOP-H62NC2FB> Date: Fri, 27 Aug 2021 11:35:36 +0800 Subject: [PATCH 23/24] =?UTF-8?q?=E5=AE=8C=E5=96=84=E4=BA=86=E7=99=BB?= =?UTF-8?q?=E5=BD=95=E7=95=8C=E9=9D=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/database/E.java | 86 ----------------------------------- src/database/SystemLogin.java | 30 ++++++------ src/database/TextSwing.java | 12 ----- 3 files changed, 13 insertions(+), 115 deletions(-) delete mode 100644 src/database/E.java delete mode 100644 src/database/TextSwing.java diff --git a/src/database/E.java b/src/database/E.java deleted file mode 100644 index 52de669..0000000 --- a/src/database/E.java +++ /dev/null @@ -1,86 +0,0 @@ -package database; -import java.awt.*; -import java.awt.event.*; -import javax.swing.*; -import java.sql.*; - -/** - * 注册界面 - * @author lsj - * - */ -public class E extends JDialog implements ActionListener{ - String account=""; - String []head= {"学号","姓名","性别","出生","籍贯","专业","班级","联系方式","技能","密码","身份"}; - String [][]a= {{"","","","","","","","","","","",}}; - - JTable table; - JScrollPane p; - JButton button; - - public E(String account) { - this.account=account; - a[0][0]=account; - init(); - setVisible(true); - setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); - } - public void init() { - System.out.println("sd"); - setLayout(null); - setTitle("注册账号"); - setBounds(200,200,900,200); - - table=new JTable(a,head); - table.setFont(new Font("宋体",Font.BOLD,16)); - table.setRowHeight(40); - - p=new JScrollPane(table); - button=new JButton("注册"); - button.addActionListener(this); - - add(p); - add(button); - - p.setBounds(10,10,855,90); - button.setBounds(350,100,70,30); - button.addActionListener(this); - } - - public void actionPerformed(ActionEvent e) { - int m=0,n=0; - Connection con; - PreparedStatement sql; - if(e.getSource()==button) { - try { - String uri="jdbc:derby:学生信息管理系统;create=false"; - con=DriverManager.getConnection(uri); - String SQL= - "insert into zhuce values(?,?,?,?,?,?,?,?,?,?,?)"; - sql=con.prepareStatement(SQL); - sql.setString(1, a[0][0].trim()); - sql.setString(2, a[0][1].trim()); - sql.setString(3, a[0][2].trim()); - sql.setString(4, a[0][3].trim()); - sql.setString(5, a[0][4].trim()); - sql.setString(6, a[0][5].trim()); - sql.setString(7, a[0][6].trim()); - sql.setString(8, a[0][7].trim()); - sql.setString(9, a[0][8].trim()); - sql.setString(10, a[0][9].trim()); - sql.setString(11, a[0][10].trim()); - m=1; - System.out.println(a[0][0]+a[0][10]); - con.close(); - if(m==1) - JOptionPane.showMessageDialog(null,""+"注册成功,等待审核","消息对话框",JOptionPane.WARNING_MESSAGE); - else - JOptionPane.showMessageDialog(null,""+"注册失败","消息对话框",JOptionPane.WARNING_MESSAGE); - } - catch(SQLException exp) { - JOptionPane.showMessageDialog(null,""+exp,"消息对话框",JOptionPane.WARNING_MESSAGE); - } - } - - } -} \ No newline at end of file diff --git a/src/database/SystemLogin.java b/src/database/SystemLogin.java index dd77a91..765917b 100644 --- a/src/database/SystemLogin.java +++ b/src/database/SystemLogin.java @@ -22,7 +22,7 @@ public class SystemLogin extends JFrame implements ActionListener{ setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); } public void init() { - setLayout(new FlowLayout()); + setLayout(null); setTitle("系统登录"); setBounds(450,200,350,200); JLabel a=new JLabel("学号/工号:"); @@ -35,25 +35,21 @@ public class SystemLogin extends JFrame implements ActionListener{ t=new JButton("注册"); f=new JButton("登录"); //使用BoxLayout,分为2行2列 - Box h1;//账户密码 - Box v1,v2;//两个文本框 - h1=Box.createHorizontalBox(); - v1=Box.createVerticalBox(); - v2=Box.createVerticalBox(); + add(a); + add(b); + add(f); + add(t); + add(password); + add(account); - //添加组件到窗口 - v1.add(a); - v1.add(b); - v1.add(t); - h1.add(v1); + a.setBounds(30,30,150,30); + b.setBounds(30,70,200,30); + account.setBounds(150,30,150,30); + password.setBounds(150,70,150,30); + t.setBounds(60,110,70,30); + f.setBounds(190,110,70,30); - v2.add(account); - v2.add(password); - v2.add(f); - h1.add(v2); - - add(h1); f.addActionListener(this); t.addActionListener(this); } diff --git a/src/database/TextSwing.java b/src/database/TextSwing.java deleted file mode 100644 index f7b7ec3..0000000 --- a/src/database/TextSwing.java +++ /dev/null @@ -1,12 +0,0 @@ -package database; - -import java.sql.*; -import javax.swing.JOptionPane; -import javax.swing.JScrollPane; -import javax.swing.JTable; - -public class TextSwing { - public static void main(String args[]) { - new SystemLogin(); -} -} \ No newline at end of file -- Gitee From ac466955da8fb833ad0f3033cf9febbd29044215 Mon Sep 17 00:00:00 2001 From: 86184 <86184@LAPTOP-H62NC2FB> Date: Fri, 27 Aug 2021 12:54:14 +0800 Subject: [PATCH 24/24] =?UTF-8?q?=E6=94=B9=E4=BA=86=E4=B8=AA=E5=90=8D?= =?UTF-8?q?=E7=A7=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/database/Administrator.java | 2 +- src/database/Student.java | 2 +- src/database/Teacher.java | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/database/Administrator.java b/src/database/Administrator.java index 86c2fd7..57d5440 100644 --- a/src/database/Administrator.java +++ b/src/database/Administrator.java @@ -45,7 +45,7 @@ public class Administrator extends JFrame implements ActionListener{ item5.addActionListener(this); item6=new JMenuItem("修改密码"); item6.addActionListener(this); - item7=new JMenuItem("重新登录"); + item7=new JMenuItem("切换账号"); item7.addActionListener(this); subMenu.add(item3); diff --git a/src/database/Student.java b/src/database/Student.java index 9cb311f..545da6b 100644 --- a/src/database/Student.java +++ b/src/database/Student.java @@ -42,7 +42,7 @@ public class Student extends JFrame implements ActionListener{ item1.addActionListener(this); item2=new JMenuItem("修改信息"); item2.addActionListener(this); - item3=new JMenuItem("重新登录"); + item3=new JMenuItem("切换账号"); item3.addActionListener(this); diff --git a/src/database/Teacher.java b/src/database/Teacher.java index b8a6f70..9f1c97e 100644 --- a/src/database/Teacher.java +++ b/src/database/Teacher.java @@ -54,7 +54,7 @@ public class Teacher extends JFrame implements ActionListener{ item6.addActionListener(this); item7=new JMenuItem("修改密码"); item7.addActionListener(this); - item8=new JMenuItem("重新登录"); + item8=new JMenuItem("切换账号"); item8.addActionListener(this); subMenu.add(item2); -- Gitee