ImageVerifierCode 换一换
格式:DOC , 页数:9 ,大小:59.04KB ,
资源ID:4063909      下载积分:6 金币
快捷注册下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

开通VIP
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.zixin.com.cn/docdown/4063909.html】到电脑端继续下载(重复下载【60天内】不扣币)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

开通VIP折扣优惠下载文档

            查看会员权益                  [ 下载后找不到文档?]

填表反馈(24小时):  下载求助     关注领币    退款申请

开具发票请登录PC端进行申请

   平台协调中心        【在线客服】        免费申请共赢上传

权利声明

1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。

注意事项

本文(简单学生管理信息系统源代码.doc)为本站上传会员【精***】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4009-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

简单学生管理信息系统源代码.doc

1、package xsgl; import java.awt。*; import java.awt.event.*; import java。sql。*; import java。util。*; import javax.swing.*; import java。util。Vector; import javax.swing。table.*; import java。awt.event.*; public class Xsglxt extends JFrame implements ActionListener//继承JFrame 并实现接口ActionListener {

2、 JPanel mb1,mb2; JLabel bq1; JTextField wbk1; JButton an1,an2,an3,an4; JTable bg1; //定义表格对象 JScrollPane gd1; Xsxx xsxx2; //定义Xsxx类的一个对象xsxx2 public static void main(String[] args) { Xsglxt xs=new Xs

3、glxt(); } public Xsglxt() //XSGLXT构造方法,用于对象初始化。 { mb1=new JPanel(); bq1=new JLabel(”请输入姓名”); wbk1=new JTextField(10); an1=new JButton(”查询"); an1。addActionListener(this); //对按钮1添加监听 an1.setActionCommand("chaxun”); //设置按钮1

4、的监听信息 mb1.add(bq1); mb1。add(wbk1); mb1。add(an1); mb2=new JPanel(); an2=new JButton(”添加”); an2。addActionListener(this); an2.setActionCommand("tianjia"); an3=new JButton("修改”); an3。addActionListener(this); an3。setActionCommand("xiugai"); an4=new JButton("删除”); an4。addActi

5、onListener(this); an4.setActionCommand("shanchu”); mb2.add(an2); mb2.add(an3); mb2.add(an4); xsxx2=new Xsxx(); bg1=new JTable(xsxx2); gd1=new JScrollPane(bg1); this。add(gd1); this.add(mb1,"North”); this。add(mb2,”South"); this。setTitle("学生管理系统"); this.setSize(500,400);

6、 this.setLocation(201,181); this.setResizable(false); this。setDefaultCloseOperation(JFrame。EXIT_ON_CLOSE); this.setVisible(true); } public void actionPerformed(ActionEvent e) //实现接口ActionListener中的actionPerformed抽象方法 { if(e。getActionCommand().equals("chaxun”)) //判断监听到的组件

7、信息是不是"chaxun"(是不是查询按钮) { String xingming=this。wbk1。getText().trim(); //将本窗口的文本框1中文本取出,忽略前后空格后赋给变量xingming String sql=”select * from xuesheng where xingming=’"+xingming+”’"; //将SQL语句赋给String类型变量sq

8、l xsxx2=new Xsxx(sql); //将String类型变量sql作为参数NEW一个Xsxx类的对象xsxx2 bg1。setModel(xsxx2); //将表bg1的数据模型设为 newModel,并向其注册以获取来自新数据模型的侦听器通知。 } else if(e.getActionCommand().equals("tianjia”)) { Tianjia tj=new Tianjia(this,”添加

9、学生信息”,true); xsxx2=new Xsxx(); //无参数传递的NEW一个Xsxx类的对象xsxx2 bg1.setModel(xsxx2); } else if(e。getActionCommand().equals("xiugai”)) { int ii=this.bg1。getSelectedRow(); //使用getSelectedRow()方法返回第一个选定行的索引;如果没有选定的行,则返回 -1。

10、 if(ii==-1) { JOptionPane.showMessageDialog(this,”请选中要修改的行"); //显示一个错误对话框 return; } new Xiugai(this,"修改学生信息",true,xsxx2,ii); //NEW一个修改类对象并附上相关参数,true指定对话框在显示时是否阻塞用户向其他顶层窗口输入 xsxx2

11、new Xsxx(); bg1.setModel(xsxx2); } else if(e.getActionCommand().equals(”shanchu”)) { int ii=this。bg1。getSelectedRow(); if(ii==—1) { JOptionPane.showMessageDialog(this,"请选中要删除的行"); return; } String st=(String)xsxx2.getValueAt(ii,0);

12、 //使用getValueAt(ii,0)方法返回第ii行的第0字段数据并强转为字符串型数据 PreparedStatement ps=null; //定义一个PreparedStatement对象ps;SQL 语句被预编译并存储在 PreparedStatement 对象中 Connection ct=null; //定义一个Connection对象ct;用来与特定数据库的连接。 Re

13、sultSet rs=null; //定义一个ResultSet对象rs;表示数据库结果集的数据表,通常通过执行查询数据库的语句生成。 Statement sm=null; try { Class。forName(”sun.jdbc.odbc。JdbcOdbcDriver”); //返回与带有给定字符串名的类或接口相关联的 Class 对象。 ct=DriverManager.getConnectio

14、n("jdbc:odbc:123”,”sa",”123456”); //DriverManager:管理一组 JDBC 驱动程序的基本服务.getConnection方法试图建立到给定数据库 URL 的连接。 ps=ct.prepareStatement(”delete from xuesheng where xuehao=?”); //prepareStatement()方法是创建一个 PreparedStatement 对象来将参数化的 SQL 语句发送到数据库。 p

15、s.setString(1,st); //设置prepareStatement中SQL语句中第一个?位置为st中的字符串 ps。executeUpdate(); //在此 PreparedStatement 对象中执行 SQL 语句。 } catch (Exception e2){} finally { try { if(rs!=null) { rs。close(); }

16、 if(ps!=null) { ps.close(); } if(ct!=null) { ct。close(); } } catch (Exception e3){} } xsxx2=new Xsxx(); bg1.setModel(xsxx2); } } } class Xsxx extends AbstractTableModel { Vector ziduan,jilu; PreparedStat

17、ement ps=null; Connection ct=null; ResultSet rs=null; public int getRowCount() // AbstractTableModel抽象类中的一个抽象方法(子类中必须实现),返回该模型中的行数.JTable 使用此方法来确定它应该显示多少行。 { return this.jilu。size(); } public int getColumnCount() //返回该模型中的列数.JTable 使用此方法来确定在默认情况下它应该创建并显示多少列。

18、 { return this.ziduan.size(); } public Object getValueAt(int hang, int lie) //返回指定行和列对应位置的单元格值. { return ((Vector)this。jilu。get(hang))。get(lie); } public Xsxx() { this.sqlyj(”select * from xuesheng”); } public Xsxx(String ss) { this.sqlyj(ss); } public String getC

19、olumnName(int e) //返回 e 位置的列的名称。 { return (String)this。ziduan.get(e); } public void sqlyj(String sql) { ziduan=new Vector(); ziduan。add(”学号"); ziduan.add(”姓名"); ziduan.add("性别”); ziduan。add("年龄"); ziduan。add(”籍贯”); ziduan.add("所在院系"); jilu=new Vector();

20、 try { Class。forName(”sun.jdbc。odbc。JdbcOdbcDriver"); ct=DriverManager.getConnection("jdbc:odbc:123”,"sa","123456"); ps=ct。prepareStatement(sql); rs=ps.executeQuery(); //executeQuery()方法是在此 PreparedStatement 对象ps中执行 SQL 查询,并返回该查询生成的 ResultSet 对象。

21、 while(rs.next()) { Vector hang=new Vector(); hang。add(rs。getString(1)); //以 Java 编程语言中 String 的形式获取此 ResultSet 对象的当前行中指定列的值. hang.add(rs。getString(2)); hang。add(rs.getString(3)); hang。add(rs.getInt(4)); hang。add(rs。getString(5));

22、 hang.add(rs.getString(6)); jilu.add(hang); } } catch (Exception e){} finally { try { if(rs!=null) { rs。close(); } if(ps!=null) { ps.close(); } if(ct!=null) { ct.close(); } } catch (Exception

23、 e){} } } } class Xiugai extends JDialog implements ActionListener //JDialog是创建对话框窗口的主要类 { JLabel bq1,bq2,bq3,bq4,bq5,bq6; JTextField wbk1,wbk2,wbk3,wbk4,wbk5,wbk6; JButton an1,an2; JPanel mb1,mb2,mb3,mb4; public Xiugai(Frame fck,String ckm,Boolean msck,Xsxx xsxx2,in

24、t hang) { super(fck,ckm,msck); bq1=new JLabel(" 学号 ”); bq2=new JLabel(" 姓名 ”); bq3=new JLabel(” 性别 "); bq4=new JLabel(” 年龄 ”); bq5=new JLabel(" 籍贯 "); bq6=new JLabel("

25、 院系 "); wbk1=new JTextField(5); wbk1。setText((String)xsxx2.getValueAt(hang,0)); wbk1。setEditable(false); wbk2=new JTextField(5); wbk2。setText((String)xsxx2。getValueAt(hang,1)); wbk3=new JTextField(5); wbk3.setText((String)xsxx2。getValueAt(hang,2));

26、 wbk4=new JTextField(5); wbk4。setText((String)xsxx2。getValueAt(hang,3)。toString()); wbk5=new JTextField(5); wbk5。setText((String)xsxx2.getValueAt(hang,4)); wbk6=new JTextField(5); wbk6.setText((String)xsxx2。getValueAt(hang,5)); an1=new JButton(”修改"); an1.addAct

27、ionListener(this); an1。setActionCommand("xiugai1"); an2=new JButton(”取消"); an2.addActionListener(this); an2.setActionCommand(”quxiao"); mb1=new JPanel(); mb2=new JPanel(); mb3=new JPanel(); mb4=new JPanel(); mb1.setLayout(new GridLayout(6,1)); mb2.

28、setLayout(new GridLayout(6,1)); mb1。add(bq1); mb1。add(bq2); mb1.add(bq3); mb1。add(bq4); mb1。add(bq5); mb1。add(bq6); mb2。add(wbk1); mb2。add(wbk2); mb2。add(wbk3); mb2。add(wbk4); mb2。add(wbk5); mb2。add(wbk6); mb3.add(an1); mb3。add(an2); this。add(mb1,BorderLayout.W

29、EST); this.add(mb2); this。add(mb3,BorderLayout。SOUTH); this。add(mb4,BorderLayout。EAST); this。setSize(370,270); this.setLocation(401,281); this。setResizable(false); this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); this.setVisible(true); } public voi

30、d actionPerformed(ActionEvent e) { if(e.getActionCommand().equals("xiugai1”)) { PreparedStatement ps=null; Connection ct=null; ResultSet rs=null; Statement sm=null; try { Class.forName("sun。jdbc.odbc.JdbcOdbcDriver”); ct=DriverManager。getC

31、onnection("jdbc:odbc:123”,”sa",”123456"); String ss=(”update xuesheng set xingming=?,xingbie=?,nianling=?,jiguan=?,yuanxi=? where xuehao=?”); ps=ct。prepareStatement(ss); ps.setString(1,wbk2.getText()); ps.setString(2,wbk3。getText()); ps.setString(3,wbk4。getText());

32、 ps。setString(4,wbk5。getText()); ps.setString(5,wbk6。getText()); ps.setString(6,wbk1。getText()); ps.executeUpdate(); this。dispose(); } catch (Exception e2){} finally { try { if(rs!=null) { rs。close(); }

33、 if(ps!=null) { ps。close(); } if(ct!=null) { ct。close(); } } catch (Exception e3){} } } else if(e。getActionCommand().equals(”quxiao")) { this。dispose();//关闭当前窗口 } } } class Tianjia extends JDialog implements

34、ActionListener { JLabel bq1,bq2,bq3,bq4,bq5,bq6; JTextField wbk1,wbk2,wbk3,wbk4,wbk5,wbk6; JButton an1,an2; JPanel mb1,mb2,mb3,mb4; public Tianjia(Frame fck,String ckm,Boolean msck) { super(fck,ckm,msck); bq1=new JLabel(” 学号 "); bq2=new JLab

35、el(" 姓名 "); bq3=new JLabel(” 性别 ”); bq4=new JLabel(" 年龄 "); bq5=new JLabel(" 籍贯 "); bq6=new JLabel(” 院系 "); wbk1=new JTextField(5); wbk2=new JTextField(5); wbk3=new JTextFiel

36、d(5); wbk4=new JTextField(5); wbk5=new JTextField(5); wbk6=new JTextField(5); an1=new JButton("添加”); an1.addActionListener(this); an1.setActionCommand("tianjia2"); an2=new JButton("取消"); an2。addActionListener(this); an2.setActionCommand(”quxiao”); mb

37、1=new JPanel(); mb2=new JPanel(); mb3=new JPanel(); mb4=new JPanel(); mb1。setLayout(new GridLayout(6,1)); mb2。setLayout(new GridLayout(6,1)); mb1。add(bq1); mb1。add(bq2); mb1.add(bq3); mb1.add(bq4); mb1.add(bq5); mb1。add(bq6); mb2.add(wbk1); mb2.add(wbk2

38、 mb2.add(wbk3); mb2.add(wbk4); mb2.add(wbk5); mb2.add(wbk6); mb3.add(an1); mb3。add(an2); this。add(mb1,BorderLayout.WEST); this.add(mb2); this。add(mb3,BorderLayout.SOUTH); this.add(mb4,BorderLayout。EAST); this.setSize(370,270); this。setLocation(401,281);

39、 this.setResizable(false); this.setDefaultCloseOperation(JFrame。DISPOSE_ON_CLOSE); this。setVisible(true); } public void actionPerformed(ActionEvent e) { if(e.getActionCommand()。equals("tianjia2”)) { PreparedStatement ps=null; Connection ct=null; Res

40、ultSet rs=null; Statement sm=null; try { Class。forName(”sun.jdbc.odbc。JdbcOdbcDriver"); ct=DriverManager。getConnection(”jdbc:odbc:123","sa”,"123456”); String ss=("insert into xuesheng values(?,?,?,?,?,?)”); ps=ct。prepareStatement(ss); ps.setString(1

41、wbk1.getText()); ps.setString(2,wbk2。getText()); ps.setString(3,wbk3。getText()); ps。setString(4,wbk4。getText()); ps。setString(5,wbk5。getText()); ps。setString(6,wbk6。getText()); ps。executeUpdate(); this。dispose(); } catch (Exception e2){}

42、 finally { try { if(rs!=null) { rs。close(); } if(ps!=null) { ps.close(); } if(ct!=null) { ct.close(); } } catch (Exception e3){} } } else if(e.getActionCommand()。equals("quxiao”)) { this。dispose(); } } }

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服