版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 学生管理系统java实现准备的软件,我用是eclipse.exe,MySql,还有mysql jdbc 5.0 数据库。网上很容易找到华军上就有的。第一步,安装eclipse.exe,MySql。MySql的密码请设置为123,因为我的程序上的密码就是123。以后你看懂了可以修改的!把下载的mysql jdbc 5.0 数据库.zip通常是个压缩包解压到一个地方。然后运行eclipse.exe。 建立个项目,名字自己随便叫即可。然后在菜单栏上Project就是Run旁边的那个菜单,按下左键选择Properties就是最下面的一项。选择Java Build Path。在对话框的右面出现个小窗体
2、,选Libraries。选择Add External JARs.。选择你mysql jdbc 5.0 数据库,解压出来的mysql-connector-java-5.0.0-beta-bin.jar 也许名字有出入。如下面的图添加完成后就是这个样子了第二步 安装Mysql数据库 请把密码设置为123 就是带password的地方。我的程序上密码设置就是123为了运行方便。然后运行Mysql执行下面四个步骤。四部的命令分别是1。create database scxdb; 2。use scxdb;3。create table student(number int,name char(8),lan
3、guage int,math int,english int,birthday date); 4。insert into student values(1717,曹操,80,90,20,1985-01-01); 下面是程序清单!/=第一部分package DBTest;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import javax.swing.JFrame;import javax.swing.JMenu;import javax.swing.JMenuBar;import javax.sw
4、ing.JMenuItem;import javax.swing.JScrollPane;import javax.swing.JTable;public class DBFrame /* * param args */public static void main(String args) / TODO Auto-generated method stubString sql = select * from student;/ sql=insert into student values/ (1717,张云风,56,80,65,1979-02-16);DBFrameWindow db = n
5、ew DBFrameWindow(sql);db.setDefaultCloseOperation(db.EXIT_ON_CLOSE);db.setVisible(true);db.setResizable(false);class DBFrameWindow extends JFrame public DBFrameWindow(String sql) super.setTitle(DBFrameWindow);this.sql=sql;this.setSize(500, 380);JTable table = DBHander.getTable(this.sql);scroolPane =
6、 new JScrollPane(table);this.add(scroolPane);/ =JMenu runMenu = new JMenu(Run);JMenuBar mb = new JMenuBar();mb.add(runMenu);this.setJMenuBar(mb);/=Append=Append=JMenuItem appendItem = new JMenuItem(Append);appendItem.addActionListener(new ActionListener() Overridepublic void actionPerformed(ActionEv
7、ent e) / TODO Auto-generated method stubappendFrame af = new appendFrame();af.setDefaultCloseOperation(af.EXIT_ON_CLOSE);af.setVisible(true);af.setResizable(false);DBHander.getUpdataTest(););/=Append=Append=/=Remove=Remove=JMenuItem removeItem = new JMenuItem(Remove);removeItem.addActionListener(new
8、 ActionListener()Overridepublic void actionPerformed(ActionEvent arg0) / TODO Auto-generated method stubremoveFrame rf=new removeFrame();rf.setDefaultCloseOperation(rf.EXIT_ON_CLOSE);rf.setResizable(false);rf.setVisible(true););/=Remove=Remove=/=Update=Update=JMenuItem updateItem = new JMenuItem(Upd
9、ate);updateItem.addActionListener(new ActionListener()public void actionPerformed(ActionEvent e) / TODO Auto-generated method stubupdateFrame uf = new updateFrame();uf.setDefaultCloseOperation(uf.EXIT_ON_CLOSE);uf.setResizable(false);uf.setVisible(true););/=Update=Update=/=Find=Find=JMenuItem findIt
10、em = new JMenuItem(Find);findItem.addActionListener(new ActionListener()Overridepublic void actionPerformed(ActionEvent arg0) / TODO Auto-generated method stubselectFrame sf = new selectFrame();sf.setDefaultCloseOperation(sf.EXIT_ON_CLOSE);sf.setResizable(false);sf.setVisible(true););/=Find=Find=JMe
11、nuItem refreshItem = new JMenuItem(Refresh);refreshItem.addActionListener(new ActionListener() Overridepublic void actionPerformed(ActionEvent arg0) / TODO Auto-generated method stubJTable ta=DBHander.getTable(select * from student;);JScrollPane scroolPane_1=new JScrollPane(ta);add(scroolPane_1);Sys
12、tem.out.println(refreshItem););runMenu.add(appendItem);runMenu.add(removeItem);runMenu.add(updateItem);runMenu.add(findItem);runMenu.add(refreshItem);/ =private JScrollPane scroolPane = null;private String sql=;/=/=第二部分package DBTest;import java.io.UnsupportedEncodingException;import java.sql.Connec
13、tion;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.ResultSetMetaData;import java.sql.SQLException;import java.sql.Statement;import javax.swing.JTable;import com.mysql.jdbc.jdbc2.optional.MysqlConnectionPoolDataSource;public class DBHander /* * param args */public static
14、 void main(String args) / TODO Auto-generated method stubString sql = insert into student values (1717,张云风,56,80,65,1979-02-16);Connection conn = getConnection();if (conn = null) System.out.println(conn=null); else System.out.println(conn!=null);Statement stat = getStatement();if (stat = null) Syste
15、m.out.println(stat=null); else System.out.println(stat!=null);ResultSet rs = getResult(select * from student;);if (rs = null) System.out.println(rs=null); else System.out.println(rs!=null);JTable table = getTable(select * from student;);if (rs = null) System.out.println(table=null); else System.out.
16、println(table!=null);private static String select=null;/ = Connection =public static Connection getConnection() MysqlConnectionPoolDataSource ds = new MysqlConnectionPoolDataSource();ds.setUrl(jdbc:MySQL:/localhost/scxdb);ds.setUser(root);ds.setPassword(123);try return ds.getConnection(); catch (SQL
17、Exception e) / TODO Auto-generated catch blocke.printStackTrace();System.out.println(conn=null);return null;/ = Connection =/ = Statement =public static Statement getStatement() Connection conn = DBHander.getConnection();try return conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CON
18、CUR_UPDATABLE); catch (SQLException e) / TODO Auto-generated catch blocke.printStackTrace();System.out.println(stat=null);return null;/ = Statement =/ = ResultSet =public static ResultSet getResult(String sql) try return getStatement().executeQuery(sql); catch (SQLException e) / TODO Auto-generated
19、catch blocke.printStackTrace();System.out.println(table=null);return null;/ = ResultSet =/ = getTable =public static JTable getTable(String sql) ResultSet rs = null;String str = null;int cols = 0;try rs = getResult(sql);ResultSetMetaData md = rs.getMetaData();cols = md.getColumnCount();int n = 0;whi
20、le (rs.next() n = n + 1;str = new Stringncols; catch (SQLException e) / TODO Auto-generated catch blocke.printStackTrace();rs = getResult(sql);int n = 0;try while (rs.next() for (int i = 0; i cols; i+) / strni=rs.getString(i+1);strni = new String(rs.getString(i + 1).getBytes(iso-8859-1), GBK);n = n
21、+ 1; catch (SQLException e) / TODO Auto-generated catch blocke.printStackTrace(); catch (UnsupportedEncodingException e) / TODO Auto-generated catch blocke.printStackTrace();String s = new String Number, Name, Language, Math, English, Birthday ;JTable table = new JTable(str, s);for (int i = 0; i str
22、.length; i+) for (int j = 0; j stri.length; j+)System.out.print(strij + );System.out.println();select=str;return table;/ = getTable =public static void getUpdataTest(String sql)try Connection conn=getConnection();if(conn=null) System.out.println(null);PreparedStatement ps=conn.prepareStatement(UPDAT
23、E student SET number = ? WHERE number=?;);ps.setString(1,2088);ps.setString(2,1717);System.out.println(#); catch (SQLException e) / TODO Auto-generated catch blocke.printStackTrace();/ = getUpdata =public static void getUpdate(String sql) Statement stat;try stat = getConnection().createStatement();i
24、nt n = stat.executeUpdate(sql);System.out.println(* + n + *); catch (SQLException e) / TODO Auto-generated catch blocke.printStackTrace();/ = getUpdata =/ = getSelect =public static String getSelect(String sql)getTable(sql);if(select=null) System.out.println(select=null);return select;/ = getSelect
25、=/=/=第3部分package DBTest;import java.awt.BorderLayout;import java.awt.GridLayout;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.io.UnsupportedEncodingException;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JPanel;
26、import javax.swing.JTextField;public class appendFrame extends JFrame /* * param args */public static void main(String args) / TODO Auto-generated method stubappendFrame af = new appendFrame();af.setDefaultCloseOperation(af.EXIT_ON_CLOSE);af.setVisible(true);public appendFrame() super.setTitle(Appen
27、dFrame);this.setSize(150, 220);JPanel panel = new JPanel();panel.setLayout(new GridLayout(6, 2);panel.add(new JLabel( 学号), tf_num);panel.add(tf_num);panel.add(new JLabel( 姓名), tf_name);panel.add(tf_name);panel.add(new JLabel( 语文), tf_c);panel.add(tf_c);panel.add(new JLabel( 数学), tf_m);panel.add(tf_m
28、);panel.add(new JLabel( 外语), tf_e);panel.add(tf_e);panel.add(new JLabel( 生日), tf_b);panel.add(tf_b);tf_c.setText(0);tf_m.setText(0);tf_e.setText(0);this.add(panel, BorderLayout.CENTER);JPanel p = new JPanel();p.setLayout(new GridLayout(1, 2);p.add(smitButton);/ = returnButton =returnButton.addAction
29、Listener(new ActionListener() Overridepublic void actionPerformed(ActionEvent arg0) / TODO Auto-generated method stubappendFrame.this.setVisible(false);appendFrame.this.setEnabled(false););p.add(returnButton);/ = returnButton =/ = smitButton/ =smitButton.addActionListener(new ActionListener() Overri
30、de/ 本应该在此处添加判断是否为空纪录的,然后有对话框弹出但是,没有想到好的省事的方法,不过是可以实现的!public void actionPerformed(ActionEvent e) / TODO Auto-generated method stubString t1 = + tf_num.getText() + ,;String t2 = + tf_name.getText() + ,;String t3 = + tf_c.getText() + ,;String t4 = + tf_m.getText() + ,;String t5 = + tf_e.getText() + ,;
31、String t6 = + tf_b.getText() + ;sql = insert into student values( + t1 + t2 + t3 + t4 + t5+ t6 + );try sql = new String(sql.getBytes(GBK), iso8859-1); catch (UnsupportedEncodingException e1) / TODO Auto-generated catch blocke1.printStackTrace();System.out.println( + sql);DBHander.getUpdate(sql);appe
32、ndFrame.this.setVisible(false);appendFrame.this.setEnabled(false););/ = smitButton/ =this.add(p, BorderLayout.SOUTH);public String getSql() return sql;private JTextField tf_num = new JTextField(10);private JTextField tf_name = new JTextField(10);private JTextField tf_c = new JTextField(10);private J
33、TextField tf_m = new JTextField(10);private JTextField tf_e = new JTextField(10);private JTextField tf_b = new JTextField(16);private JButton smitButton = new JButton(确认);private JButton returnButton = new JButton(返回);private String sql = null;/=/=第4部分package DBTest;import java.awt.BorderLayout;impo
34、rt java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.io.UnsupportedEncodingException;import javax.swing.JButton;import javax.swing.JCheckBox;import javax.swing.JComboBox;import javax.swing.JFrame;import javax.swing.JOptionPane;import javax.swing.JPanel;import javax.swing.JT
35、extField;public class removeFrame extends JFrame /* * param args */public static void main(String args) / TODO Auto-generated method stubremoveFrame rf = new removeFrame();rf.setDefaultCloseOperation(rf.EXIT_ON_CLOSE);rf.setVisible(true);private JComboBox comboBox_condition = null;private JComboBox
36、comboBox_field = null;private JTextField text_str = new JTextField(10);private JButton smitButton = new JButton(确定);private JButton returnButton = new JButton(返回);private JCheckBox cBox = new JCheckBox(ALL);private String sql = ;public removeFrame() super.setTitle(RemoveFrame);this.setSize(410, 160)
37、;setResizable(false);String strCondition = new String , =, ;String strField = new String Number, Name, Language, Math, English, Birthday;comboBox_condition = new JComboBox(strCondition);comboBox_field = new JComboBox(strField);JPanel panel = new JPanel();/ panel.setLayout(new GridLayout(2,3);panel.a
38、dd(comboBox_field);panel.add(comboBox_condition);panel.add(text_str);panel.add(cBox);/ =cBox=cBox.addActionListener(new ActionListener() Overridepublic void actionPerformed(ActionEvent arg0) / TODO Auto-generated method stubif (cBox.isSelected() comboBox_field.setEnabled(false);comboBox_condition.se
39、tEnabled(false);text_str.setEditable(false);/ sql=delete from student; else comboBox_field.setEnabled(true);comboBox_condition.setEnabled(true);text_str.setEditable(true););/ =cBox=/ =smitButton=smitButton.addActionListener(new ActionListener() Overridepublic void actionPerformed(ActionEvent arg0) i
40、f (text_str.getText().equals()JOptionPane.showMessageDialog(null, 条件不能为空);else String t1 = (String) comboBox_field.getSelectedItem();String t2 = (String) comboBox_condition.getSelectedItem();String t3 = +text_str.getText()+;sql = delete from student where + t1 + t2 + t3;try sql=new String(sql.getByt
41、es(GBK),iso8859-1); catch (UnsupportedEncodingException e) / TODO Auto-generated catch blocke.printStackTrace();if (cBox.isSelected() sql = delete from student;System.out.println(sql);DBHander.getUpdate(sql);/else);/ =smitButton=/=returnButton=returnButton.addActionListener(new ActionListener()Overr
42、idepublic void actionPerformed(ActionEvent arg0) / TODO Auto-generated method stubremoveFrame.this.setVisible(false);removeFrame.this.setEnabled(false););/=returnButton=JPanel p = new JPanel();p.add(smitButton);p.add(returnButton);this.add(panel, BorderLayout.NORTH);this.add(p, BorderLayout.SOUTH);/
43、=/=第5部分package DBTest;import java.awt.BorderLayout;import java.awt.GridLayout;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.io.UnsupportedEncodingException;import javax.swing.JButton;import javax.swing.JCheckBox;import javax.swing.JComboBox;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JPanel;import javax.swing.JTextField;public class updateFrame extends JFrame /* * param args */public static voi
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026《汤姆索亚历险记》阅读测试题及答案
- 电视调查类节目《新闻调查》中记者型主持人的提问技巧研究
- 2026年吉林高考文科综合题库及一套完整答案
- 2026年保密培训考试题及答案
- 2025年内蒙古巴彦淖尔市中小学教师招聘考试真题解析含答案
- 2026年安徽铜陵中小学教师招聘考试真题解析含答案
- 第12课 水-生命之源教学设计小学信息技术(信息科技)六年级冀教版
- 八年级下册活动三 创建补间动画教学设计
- 江西省九江市高中数学 第一章 计数原理 2 排列(一)教学设计 北师大版选修2-3
- 江苏省宜兴市徐舍中学八年级地理下册 第6章 第2节“白山黑水”-东北三省教学设计 (新版)新人教版
- 酒水广告合同模板
- 民用建筑外门窗应用技术标准
- 人类辅助生殖技术规范1;2
- 校园活动应急预案模板策划
- 装饰装修工程验收资料表格
- 【教案】伴性遗传第1课时教学设计2022-2023学年高一下学期生物人教版必修2
- 广州地铁3号线市桥站-番禺广场站区间隧道设计与施工
- LY/T 2602-2016中国森林认证生产经营性珍稀濒危植物经营
- GB/T 36024-2018金属材料薄板和薄带十字形试样双向拉伸试验方法
- GB/T 19518.2-2017爆炸性环境电阻式伴热器第2部分:设计、安装和维护指南
- 简化的WHOQOL表WHOQOL-BREF-生活质量量表
评论
0/150
提交评论