学生信息的增删改查(java).docx

上传人:李医生 文档编号:8653348 上传时间:2020-12-14 格式:DOCX 页数:6 大小:27.82KB
返回 下载 相关 举报
学生信息的增删改查(java).docx_第1页
第1页 / 共6页
学生信息的增删改查(java).docx_第2页
第2页 / 共6页
学生信息的增删改查(java).docx_第3页
第3页 / 共6页
学生信息的增删改查(java).docx_第4页
第4页 / 共6页
学生信息的增删改查(java).docx_第5页
第5页 / 共6页
点击查看更多>>
资源描述

《学生信息的增删改查(java).docx》由会员分享,可在线阅读,更多相关《学生信息的增删改查(java).docx(6页珍藏版)》请在三一文库上搜索。

1、学生信息的增删改查(java)学生信息的增删改查注意 :此处用到的就是access数据库。运行后效果如图:代码如下 :package example;import java 、awt、 *;import java 、awt、 event、 ActionEvent;import java 、awt、 event、 ActionListener;import javax 、 swing 、 *;import java 、sql、 *;import java 、util 、 Vector;class myrandom extends JFrame implements ActionListener

2、/这个程序的数据就是没有写入文件的JFrame f1,f2;JButton b1,b2,b3,b4,modify,direction;JLabel a1;JTextField t1,t2,t3,t4;JTable table;myrandom()table=new JTable();f1=new JFrame( 学生信息系统);f1、 setVisible(true);/ 设置窗体可见a1=new JLabel( 输入学号 :);t1=new JTextField(100);t2=new JTextField(100);b1=new JButton( 查姓名 :);b2=new JButton

3、( 插入信息 );b3=new JButton( 查瞧数据 );b4=new JButton( 删除 );t3=new JTextField(100);modify=new JButton( 修改 );direction=new JButton( 操作说明 );学生信息的增删改查(java)t4=new JTextField(100);f1、 setLayout(new GridLayout(6,2);/设置窗体的分布为四行二列f1、 add(a1);f1 、add(t1);/ 加入窗体f1、 add(b1);f1 、 add(t2);f1、 add(b2);f1 、 add(b3);f1、

4、add(b4);f1 、 add(t3);f1、 add(modify);f1 、 add(t4);f1、 add(direction);f1、 setSize(200,200);/设置窗体大小b1、 addActionListener(this);b2、 addActionListener(this);/ 设置按钮事件b3、 addActionListener(this);b4、 addActionListener(this);modify 、 addActionListener(this);direction 、 addActionListener(this);public void ac

5、tionPerformed(ActionEvent e) f1、setDefaultCloseOperation(WindowConstants 、EXIT_ON_CLOSE);/关闭窗体后释放资源 ,若不写这条语句,/ 则虽然关闭了窗体 ,但进程还在运行。try/ 这个 try 就是在整个 action 中的 ,用于捕获建立连接异常Class、 forName(sun 、 jdbc、 odbc、 JdbcOdbcDriver);String dburl=jdbc:odbc:mydb; Connection conn=DriverManager/mydb、getConnection(dburl

6、);/就是我建立的access数据源这四条语句就是用来在整个action 事件中建立连接的Statement stml=conn 、 createStatement();/也就不用在每一个button事件(b1,b2,b3,b4) 中重复写这四条语句/ 以上四条语句也可以改写为下面这四条语句:/Stringdburl=jdbc:odbc:driver=MicrosoftAccessDriver(*、mdb);DBQ=C:db1 、 mdb;/ Class、 forName(sun 、 jdbc、 odbc、 JdbcOdbcDriver);/Connectionconn = DriverMan

7、ager 、 getConnection(dburl);/Statementstml = conn 、 createStatement();if(e、 getSource()=b3)/查瞧数据(查瞧数据库中student 表的所有信息f2=new JFrame( 显示信息 );f2、 setVisible(true);/ 设置窗体可见f2、 setSize(200,200);/ 设置窗体大小Vector rows = new Vector();/ 用于存储数据库中的行信息Vector columnHeads = new Vector(); / 用于存储数据库中的列标题tryResultSet

8、rs=stml、 executeQuery(select * from student);boolean moreRecords = rs 、 next(); /定位到达第一条记录,这句话一定要写学生信息的增删改查(java)ResultSetMetaData rsmd = rs 、getMetaData(); /获得rs结果集中列属性信息for (int i = 1; i = rsmd 、 getColumnCount(); +i)columnHeads、 addElement(rsmd 、 getColumnName(i);/ 获得列名(将列名存放至向量columnHeads)dorows

9、、addElement(getNextRow(rs, rsmd);/获取下一行记录while (rs 、 next(); /利用循环获得所有记录JTable jTable = new JTable(rows, columnHeads); /将获得的行列数据信息作为参数重新构造表格视图jTable、 setSize(new Dimension(383, 81);JScrollPane scroller = new JScrollPane(jTable);/创建带有滚动条的面板,并将表格视图加入f2、add(scroller, BorderLayout 、 CENTER); /f2、validat

10、e(); /验证此容器及其所有子组件while(rs 、 next()将面板重新加入溶器中String ss=rs、 getString(id);/ 显示输出结果String s2=rs 、getString(name);System、 out、 println(ss+s2);rs、 close();stml、 close();conn、 close();/ 使用完后要记得关闭所有连接catch(Exception ee)System 、 out、 println(ee);else if(e、 getSource()=b2)/ 插入信息 (在 t1 文本框中输入要插入的学号,/ 在 t2文本框

11、中输入要插入的姓名,然后点击插入信息trystml、 executeUpdate(insert into student values(+t1 、 getText()+,+t2 、 getText()+);/excute 的返回值就是boolean 型的 ,excuteUpdate 的返回值就是值就是 ResultSet 型的int型的 ,executeQuery 的返回stml、 close();conn、 close();catch(Exception e1)System、 out、 println(e1);System、 out、 println(Insert successfully!

12、);JOptionPane、 showMessageDialog(f1,插入成功!);else if(e、 getSource()=b1)/ 查姓名 (在t1 文本框中输入学号,/ 在t2 文本框中显示相应的姓名t3、 setText();t4、 setText();学生信息的增删改查(java)trySystem、 out、 println(hi);String mysql=select name from student where id=+t1 、 getText()+; /ResultSet rs=stml 、executeQuery(select name from student

13、where id=+t1 、getText()+);ResultSet rs=stml、 executeQuery(mysql);String sn=;while(rs 、 next()/ 此处 while 语句用于逐条查询sn=rs、 getString(name);System、 out、 println( 学号为 :+t1 、getText()+姓名就是:+sn);if(sn=)/ 如果没有找到该学生的姓名JOptionPane、 showMessageDialog(f1, 没有该学生!);elset2、 setText(sn);rs、 close();stml、 close();con

14、n、 close();catch(Exception ee)System、 out、 println(ee);else if(e、 getSource()=b4) / 按学号删除记录(删除学号与姓名try/ 在 t3 文本框中输入要删除的学号)t1、 setText();t2、 setText();t4、 setText();System、 out、 println(hi);String yy=;String mmsql=select * from student where id=+t3、 getText()+;String mysql=delete from student where i

15、d=+t3、 getText()+;ResultSet rs=stml、 executeQuery(mmsql);while(rs 、 next()yy=rs、 getString(name);if(yy=)JOptionPane、 showMessageDialog(f1, 删除失败 ,没有该学生!);rs、 close();elsestml、 executeUpdate(mysql);JOptionPane、 showMessageDialog(f1, 删除成功! );stml、 close();conn、 close();学生信息的增删改查(java)catch(Exception ee

16、)System 、 out、 println(ee);System、 out、 println(success to delete!);else if(e、 getSource()=modify)/ 修改姓名 :在 t1 文本框中输入要修改的学号 , try / 在 t4 文本框中输入修改后的名字/JOptionPane 、 showMessageDialog(f1, 请在输入学号后面输入修改前的学号,在修改后面输入修改后该学号的姓名!);t2、 setText();t3、 setText();String mm=;String mmsql=select * from student wher

17、e id=+t1、 getText()+;Stringmysql=updatestudent set name=+t4 、 getText()+where id=+t1 、getText()+;ResultSet rs=stml 、 executeQuery(mmsql);while(rs 、next()mm=rs 、 getString(name);if(mm=)JOptionPane、 showMessageDialog(f1, 修改失败 ,没有该学生!);rs、 close();elsestml、 executeUpdate(mysql);JOptionPane、 showMessage

18、Dialog(f1, 修改成功! );stml、 close();conn、 close();catch(Exception eee)System 、 out、 println(eee);System、 out、 println(Congratulations!modify success!);else tryJOptionPane、showMessageDialog(f1,1若要修改:请在输入学号后面输入修改前的学号, +n+要删除在修改后面输入修改后该学号的姓名,然后点击 修改 ;+n+2 若,请在删除后面出入要删学生的学号,然后点击 删除 ; +n+3若要插入信息,请在输入学号后面输入学

19、号,在查姓名后面输入姓名,然后点击插入信息; +n+ 4n+若要若要查询数据 5 输入学生的学号,直接点击 查瞧数据 ; +,再点击 查姓名 可以查找该学号学生的姓名。 );catch(Exception e2)System、 out、 println(e2);catch(Exception ee)System、 out、 println(ee);学生信息的增删改查(java)public static void main(String args)new myrandom();public Vector getNextRow(ResultSet rs, ResultSetMetaData rsmd)throws SQLException /该方法获取下一行记录Vector currentRow = new V ector(); / 定义一个向量,用于存放记录for (int i = 1; i = rsmd 、 getColumnCount(); +i)currentRow 、 addElement(rs、 getString(i); /return currentRow; /返回记录获取记录

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 科普知识


经营许可证编号:宁ICP备18001539号-1