医院管理信息系统
1需求分析
1。1现状
当前,医院作为病人就诊的地方,有许多信息需要处理和管理。现今,有很多门诊信息都是初步开始使用,甚至尚未使用计算机进行信息处理.根据调查得知,他们以前对信息管理的主要方式是基于文本、表格等纸介质的手工处理,对于医历等很多信息都是用人工计算、手抄进行。数据信息处理工作量大,容易出错;由于数据繁多,容易丢失,且不易查找。总的来说,缺乏系统,规范的信息管理手段.
数据处理手工操作,工作量大,出错率高,出错后不易更改。基于这此问题,我认为有必要建立一个医院管理系统,使医院管理工作规范化,系统化,程序化,避免医院管理的随意性,提高信息处理的速度和准确性,能够及时、准确、有效的查询和修改医院情况。
医院信息系统简称HIS,是Hospital Information System的简称,是指利用计算机和网络通信设备,为医院所属的各个部门提供病人诊疗和行政管理信息的手机、存储、处理提取和数据交换的能力。此次我课程设计的目标就是设计一个能使医院的管理工作系统化、规范化、自动化的系统,从而提高医院管理工作的效率。
1.2模块功能
本系统功能主要包括:员工信息、病人信息、药剂管理、仪器管理、工资管理、病床管理。
员工信息:储存了医院的医务人员的基本情况,包括员工编号,姓名,性别,所在部门,联系电话等信息.员工各种的查询、修改,包括员工基本信息、职称、岗位、工资等。 员工的人事调动管理。病人信息:病人基本资料表中所有项目(姓名,性别,婚否,出生日期,职业,职称,门诊诊断),病人基本资料表录入、修改、删除、复制。
药剂管理:实现对医院药品信息的分类管理和数据分析,从而使信息整理快速、准确、简单,以便于相关部门给予统筹安排,从而提高改进传统的管理方法,提高企业管理水平。
0
(完整word版)java课设医院管理信息系统
仪器管理:保存了医院所需医疗用品的基本情况,库存量和单品价格.以便管理人员查看,随时进行补货。
工资管理:存储医生员工号,工资级别和工资总额,管理人员可以进行增删查改。 病床管理:实现床位分配、空床查询、包床/退床、转床出院处理。
医院管理信息系统员工信息管理病人信息管理药剂管理仪器管理工资管理病床管理 图1.功能结构图
1.3用例图
医院管理信息系统员工信息管理病人信息管理药剂管理查看数据仪器管理管理员工资管理普通用户病床管理
1
(完整word版)java课设医院管理信息系统
图2.用例图
2系统设计
2.1识别需求文档中的类
1。管理员管理员工编号,姓名,性别,所在部门,联系电话等信息,进行增删查改。普通用户查看员工信息。
2.管理员设置病人姓名,性别,婚否,出生日期,职业,职称,门诊诊断,进行病人基本资料表录入、修改、删除、查询。
3。管理员实现对医院药品信息的分类管理,进行增删查改。 4。管理员保存医院所需医疗用品的基本情况,库存量和单品价格。
5。管理员录入医生员工号,工资级别和工资总额,进行增删查改.普通用户查看自己的工资。 6。管理员实现床位分配、空床查询、包床/退床、转床出院处理。 需求文档中的名词/名词短语,按照出现顺序,从左到右排列(不重复):
管理员(admin)、普通用户(person)、病人(invalid)、药品(stuff)、医疗用品)(apparatus、工资(pay)、床位(bed).
2.2初步建模类及类间关系
员工信息包括:医生编号、姓名、性别、学历、职务、所在科室。病人基本情况描述包括病人的病人编号、姓名、性别、联系电话、籍贯、国家、民族、身份证号、健康状况、科室名称、病房号、床号。病号唯一确定一个病人。药品信息描述包括:药品编号、药品名称、库存量、单价。仪器信息描述包括:仪器代号、名称、单价、数量。床位信息描述包括床号、病房号、是否已住人。一个床号和病房号唯一确定一个床位情况.
2。3初步的UML图
Database 2
(完整word版)java课设医院管理信息系统
+sql:String +url:String +user:String +password:String +〈 Apparatus +Datas:String +Columntitles:String +type:int +< Invalid +datas:String 3 (完整word版)java课设医院管理信息系统 +columntitles:String +type:int +< Personcheck -pclass:String +columns:String +datas:String +〈 Invalidcheck -pclass:String +columns:String +datas:String 4 (完整word版)java课设医院管理信息系统 +〈〈create>>Invalidcheck(in data:String[][]) +actionPerformed(in e:ActionEvent):void 图8.Invalidcheck UML设计 Invalidadd -pclass:String +〈〈create>>Invalidadd() +actionPerformed(in e:ActionEvent):void 图9.Invalidadd UML设计 InvalidBean sql:String iname:String sex:string pclass: String state:String doctor: String itime: String rno: String bno: String Add(in name:String,in sex:String,in time:String,in plass:String,in state:String,in doctor:String,in rno:String,in bno:String):void searchInvalidiname(in iname:String):String[] 5 (完整word版)java课设医院管理信息系统 editInvalid(in iname:String,in sex:String,in itime:String,in plass:String,in state:String,in doctor:String,in rno:String,in bno:String):void deleteInvalid(in iname:String):void searchAllInvalidor(in iname:String,in itime:String,in pclass:String,in state:String,in rno:String,in bno:String):String[][] searchAllInvalidand(in iname:String,in itime:String,in pclass:String,in state:String,in rno:String,in bno:String):String[][] getAlliname():String[] refresh():String[][] 图10。InvalidBean UML设计 3系统实现 3.1UML类图转换成Java代码框架 ① Database.Java是数据库连接,源代码如下: public class Database { public Database(){ } public void OpenConn()throws Exception{ try{ } catch(Exception e){ 6 (完整word版)java课设医院管理信息系统 } } public ResultSet executeQuery(String sql){ } catch(SQLException e){ } } public boolean executeUpdate(String sql){ } public void closeStmt(){ } } public void closeConn(){ public static void main(String[]args) throws Exception } } ② Personframe。java为员工信息窗口的代码,可以进行查询,删除,刷新,修改,源代码如下: public class PersonFrame extends JFrame implements ActionListener { private JButton button_add; private JButton button_check; private JButton button_delete; private JButton button_refresh; private JButton button_update; private JTable table; //表格组件 private DefaultTableModel tableModel; String datas[][]; String []columntitles={”员工号\”员工姓名”,\"性别”,\"所在部门\",”身份证”,\"生日\籍贯\",\"国家\",”民族”,\"婚姻状况\",”健康状况”,”工作时间\家庭住址\",\"联系电话 \"}; 7 (完整word版)java课设医院管理信息系统 public PersonFrame(String datas[][],int type) { public boolean isCellEditable(int row, int column) { return false;}//表格不允许被编辑 }; } @Override public void actionPerformed(ActionEvent e) { } public static void main(String []args) //测试方法 { //new PersonFrame(null,0); } } ③ Invalid。java是病人管理模块的代码,可以进行入院,查询,刷新和更新的操作,源代码如下: public class Invalid extends JFrame implements ActionListener { private JButton button_add; private JButton button_check; private JButton button_edit; private JButton button_refresh; private JButton button_delete; private JTable table; //表格组件 private DefaultTableModel tableModel; String datas[][]; String []columntitles={\"病人姓名\\"入院时间”,”所属科室\ 8 (完整word版)java课设医院管理信息系统 况”,\"主治医生\",\"病房号”,”病床号”}; public Invalid(String datas[][], int type) { public boolean isCellEditable(int row, int column) { return false;}//表格不允许被编辑 }; } } ④ @Override public void actionPerformed(ActionEvent e) { } public static void main(String []args) //测试方法 { //new Invalid(null,0); } Apparatus.java是对仪器进行管理,源代码如下: public class Apparatus extends JFrame implements ActionListener { private JButton button_add; private JButton button_check; private JButton button_edit; private JButton button_refresh; private JButton button_delete; private JTable table; //表格组件 private DefaultTableModel tableModel; String datas[][]; String []columntitles={\"仪器代号\\",\"仪器数量”,\"备注\; int type; 9 (完整word版)java课设医院管理信息系统 public Apparatus(String datas[][],int type) { public boolean isCellEditable(int row, int column) { return false;}//表格不允许被编辑 }; } ⑤ } @Override public void actionPerformed(ActionEvent e) { public static void main(String []args) //测试方法 { } new Apparatus(null,0); Stuff。java是药剂管理,可以查询库存药品的信息,源代码如下: public class Stuff extends JFrame implements ActionListener { private JButton button_add; private JButton button_check; private JButton button_edit; private JButton button_refresh; private JButton button_delete; private JTable table; //表格组件 private DefaultTableModel tableModel; String datas[][]; String []columntitles={\"药剂代号\药剂名称\",\"药剂价格\\备注”}; int type; public Stuff(String datas[][],int type) { 10 (完整word版)java课设医院管理信息系统 } @Override public void actionPerformed(ActionEvent e) { } public static void main(String []args) //测试方法 { new Stuff(null,0); } } ⑥ Pay。Java是对员工工资进行管理录入的操作,源代码如下: public class Pay extends JFrame implements ActionListener { private JButton button_add; private JButton button_check; private JButton button_edit; private JButton button_refresh; private JButton button_delete; private JTable table; private DefaultTableModel tableModel; String datas[][]; String []columntitles={\"员工号”,\"工资等级”,\"工资总额\"} public Pay(String datas[][]) { } @Override public void actionPerformed(ActionEvent e) { } public static void main(String []args) //测试方法 { new Pay(null); 11 //表格组件 (完整word版)java课设医院管理信息系统 } } ⑦ Bed.java是对医院病床进行管理,显示病房及病床的使用信息,源代码如下: Public class Bed extends JFrame implements ActionListener { private JButton button_add; private JButton button_check; private JButton button_refresh; private JButton button_delete; private JTable table; //表格组件 private DefaultTableModel tableModel; String datas[][]; String []columntitles={\"病床号\; public Bed(String datas[][]) { public boolean isCellEditable(int row, int column) { return false;}//表格不允许被编辑 }; } @Override public void actionPerformed(ActionEvent e) { { } new Bed(null); } public static void main(String []args) //测试方法 12 (完整word版)java课设医院管理信息系统 3。2添加表示层,实现交互功能 3.2。1Login类 系统的用户有管理员、医生,因此,在进入主界面之前,应该先弹出登录界面,要求用户输入用户编号(姓名可能重名)和登录口令,以验证用户身份。因此,我们首先需要设计一个登录界面——Login类。 设计思路:实现界面外观,添加交互功能.登录过程中需要进行用户ID与密码的验证. import java.awt.*; import javax。swing.*; import java。awt。event。*; public class Login extends JFrame implements ActionListener { private JLabel user,password; private JTextField text_user; //用户名文本行 private JPasswordField text_password; //密码文本行 13 (完整word版)java课设医院管理信息系统 private JButton button_ok,button_cancel; private JComboBox typeBox; JLabel jlabel; public boolean isLogin=false; //判断登录是否成功 public Login() { super(”用户登录”); this.setSize(240,150); this.setLocation(550,200); this。setBackground(Color.lightGray); this.setResizable(false); this。setDefaultCloseOperation(DISPOSE_ON_CLOSE); this.getContentPane().setLayout(new FlowLayout()); jlabel=new JLabel(\"欢迎登陆医院管理信息系统 ”,JLabel。CENTER); this.getContentPane().add(jlabel); user=new JLabel(\"用户名:\"); user。setFont(new Font(”Dialog\12)); this。getContentPane()。add(user); text_user = new JTextField(15); text_user。setEditable(true); this。getContentPane().add(text_user); password=new JLabel(”密 码:\"); password。setFont(new Font(\"Dialog\; 14 (完整word版)java课设医院管理信息系统 this。getContentPane()。add(password); text_password = new JPasswordField(15); this.getContentPane().add(text_password); String types[] = {”普通用户\",\"管理员\; typeBox = new JComboBox(types); button_ok = new JButton(\"登录\"); button_ok.setFont(new Font(\"Dialog”,0,12)); this。getContentPane()。add(new Label()); this.getContentPane().add(typeBox); this.getContentPane().add(button_ok); button_ok.addActionListener(this); button_cancel = new JButton(”取消\"); button_cancel.setFont(new Font(”Dialog”,0,12)); this。getContentPane().add(button_cancel); button_cancel。addActionListener(this); this。setVisible(true); } public void actionPerformed(ActionEvent e) //单击事件处理方法 { String username = text_user.getText(); String password = new String(text_password.getPassword()); if (e.getSource()==button_cancel) //单击退出按钮 {this.setVisible(false);} 15 (完整word版)java课设医院管理信息系统 else if (username。equals(””)) JOptionPane。showMessageDialog(this, ”请输入用户名”); else if (password.equals(\"”)) JOptionPane.showMessageDialog(this, \"密码不能为空,请输入密码”); else if (e。getSource()==button_ok) //单击登录按钮 { LoginBean login=new LoginBean(); isLogin=login.enter(username,password); int type = typeBox.getSelectedIndex(); if(isLogin) { if(login.Flag==type){ new HOSMain(type); }else{ JOptionPane.showMessageDialog(this, \"登陆身份不正确!”) return; } { text_user。setText(\"”); text_password.setText(\"\"); 16 ; (完整word版)java课设医院管理信息系统 } this.setVisible(false); } } } public void windowClosing(WindowEvent e) {} public void windowOpened(WindowEvent e) {} //打开窗口 public void windowClosed(WindowEvent e){} //关闭窗口后 public void windowIconified(WindowEvent e) {} //窗口最小化 public void windowDeiconified(WindowEvent e) {} //窗口恢复 public void windowActivated(WindowEvent e) {} //激活窗口 public void windowDeactivated(WindowEvent e) {} //变为不活动窗口 public static void main(String args[]) throws Exception //测试方法 {new Login(); } } 3.2.2HosMain类 HosMain类是登录完成后进入的医院管理信息系统的主界面,该界面显示了整个系统的功能模块。 17 (完整word版)java课设医院管理信息系统 代码如下: import java。awt.*; import java。awt.event.*; import javax。swing。*; import java。sql.*; /** * 系统主界面 */ public class HOSMain extends JFrame implements ActionListener { Dimension faceSize = new Dimension(450, 550); JPanel contentPane; JButton buttonPersonFrame; 18 (完整word版)java课设医院管理信息系统 JButton buttonInvalid; JButton buttonStuff; JButton buttonApparatus; JButton buttonPay; JButton buttonBed; JButton buttonExit; int type; public HOSMain(int type) { this。type=type; this.setDefaultCloseOperation(EXIT_ON_CLOSE); this.setSize(800,500); this.setTitle(”医院管理系统\"); this.setLocation(400,100); buttonPersonFrame=new JButton(\"员工信息\"); buttonInvalid=new JButton(\"病人信息”); buttonStuff=new JButton(”药剂管理”); buttonApparatus=new JButton(\"仪器管理\"); buttonPay=new JButton(\"工资管理\"); buttonBed=new JButton(”病床管理\"); buttonExit=new JButton(\"退出系统\"); JPanel panel1=new JPanel(); panel1。add(buttonPersonFrame); 19 (完整word版)java课设医院管理信息系统 JPanel panel2=new JPanel(); panel2.add(buttonInvalid); JPanel panel3=new JPanel(); panel3。add(buttonStuff); JPanel panel4=new JPanel(); panel4.add(buttonApparatus); JPanel panel5=new JPanel(); panel5。add(buttonPay); JPanel panel6=new JPanel(); panel6。add(buttonBed); JPanel panel7=new JPanel(); panel7。add(buttonExit); ImageIcon firstpage=new ImageIcon(\"abc。PNG”); this.getContentPane()。setLayout(new BorderLayout()); JPanel panel = new JPanel(); panel。add(panel1); panel.add(panel2); panel.add(panel3); panel.add(panel4); panel.add(panel5); panel。add(panel6); panel。add(panel7); 20 (完整word版)java课设医院管理信息系统 } { this.getContentPane()。add(panel,BorderLayout.NORTH); this。getContentPane()。add(new JLabel(firstpage),BorderLayout.CENTER); buttonPersonFrame。addActionListener(this); buttonInvalid.addActionListener(this); buttonStuff.addActionListener(this); buttonApparatus.addActionListener(this); buttonPay。addActionListener(this); buttonBed。addActionListener(this); buttonExit。addActionListener(this); //关闭程序时的操作 this。addWindowListener( new WindowAdapter() { public void windowClosing(WindowEvent e) { } System。exit(0); }); this.setVisible(true); public void actionPerformed(ActionEvent e) 21 (完整word版)java课设医院管理信息系统 if(e。getSource()==buttonPersonFrame) { new PersonFrame(null,type); } if(e。getSource()==buttonInvalid) { } if(e。getSource()==buttonStuff) { new Stuff(null,type); new Invalid(null,type); } if(e.getSource()==buttonApparatus) { } if(e.getSource()==buttonPay) { } if(e.getSource()==buttonBed) { new Apparatus(null,type); new Pay(null); 22 (完整word版)java课设医院管理信息系统 } new Bed(null); if(e.getSource()==buttonExit) { JOptionPane.showConfirmDialog(null, ”您确定退出系统吗?”,”消息”, JOptionPane。YES_NO_OPTION); } } System.exit(0); } public static void main(String []args) { } new HOSMain(1); 3。2.3ApparatusBean类 点击进入仪器管理的界面,实现添加、修改、查询、删除的操作。 import java.util。*; import java.util。Date; import java。sql。*; 23 (完整word版)java课设医院管理信息系统 import java。awt。*; import javax.swing。*; public class ApparatusBean { String sql; ResultSet rs = null; String ano; String aname; String aprice; String amount; String explain; public void add(String ano,String aname,String aprice,String amount,String explain) {Database DB = new Database(); } 24 sql=\"insert into apparatus values (’ \"+ano+”’,'\"+aname+\"','\"+aprice+”',try{ } catch(Exception e){ } finally { } DB。closeStmt(); DB。closeConn(); System。out.println(e); JOptionPane。showMessageDialog(null, ”保存失败\", \"错误”, DB.OpenConn(); DB.executeUpdate(sql); JOptionPane.showMessageDialog(null,”成功添加仪器信息!”); '”+amount+”’,'\"+explain+”’)”; JOptionPane.ERROR_MESSAGE); (完整word版)java课设医院管理信息系统 public String[] searchApparatusano(String ano){ } Database DB = new Database(); this。ano =ano; String[] s = new String[5]; sql = \"select distinct * from apparatus where ano = ’\"+ano+\"'\"; try{ } catch(Exception e){ } finally { } return s; DB。closeStmt(); DB.closeConn(); DB.OpenConn(); rs = DB.executeQuery(sql); if(rs.next()){ } else s = null; s[0] = rs。getString(1); s[1] = rs。getString(2); s[2] = rs。getString(3); s[3] = rs。getString(4); s[4] = rs。getString(5); public void editApparatus(String ano,String aname,String aprice,String Database DB = new Database(); 25 amount,String explain){ (完整word版)java课设医院管理信息系统 this。ano=ano; this。aname = aname; this.aprice=aprice; this.amount = amount; this。explain = explain; sql = \"update apparatus set aname = ’\"+aname+”’, try{ } DB。OpenConn(); DB.executeUpdate(sql); JOptionPane。showMessageDialog(null,”成功修改一条仪器信息!\"); aprice='”+aprice+”',amount = '”+amount+”’, explain = '”+explain+”'\"; } catch(Exception e){ } finally { } DB。closeStmt(); DB。closeConn(); JOptionPane。showMessageDialog(null, ”更新失败\", \"错误\ JOptionPane.ERROR_MESSAGE); public String[][] searchAllApparatusor(String ano,String aname,String aprice,String amount){ this.ano = ano; this。aname = aname; this。aprice = aprice; this。amount = amount; Database DB = new Database(); 26 (完整word版)java课设医院管理信息系统 String result[][]=null; sql = \"select * from apparatus where ano='”+ano+\"’ or aname=’\" +aname+”’ or aprice='”+aprice+\"’ or amount=’”+amount+\"’\"; try{DB。OpenConn(); rs = DB。executeQuery(sql); ResultSetMetaData rsmd = rs.getMetaData(); int columns=rsmd.getColumnCount(); int rows=0; while(rs。next()) { rows++; } if(rows==0) {JOptionPane。showMessageDialog(null, ”未查询到符合条件的仪器,请重新输入!”,\"错误”, JOptionPane。ERROR_MESSAGE); } String s[][]=new String[rows][columns]; rs。beforeFirst(); for(int i=0;rs.next();i++) for(int j=1;j〈=columns;j++) s[i][j-1]=rs.getString(j); result=s; } catch(Exception e){} finally { DB.closeStmt(); DB.closeConn(); } return result; } public String[][] searchAllApparatusand(String ano,String aname,String 27 (完整word版)java课设医院管理信息系统 aprice,String amount){ this。ano = ano; this。aname = aname; this。aprice = aprice; this。amount = amount; Database DB = new Database(); String result[][]=null; sql = ”select * from apparatus where ano='”+ano+”' and aname=' try{ DB.OpenConn(); rs = DB。executeQuery(sql); ResultSetMetaData rsmd = rs.getMetaData(); int columns=rsmd。getColumnCount(); int rows=0; while(rs。next()) { } if(rows==0) {JOptionPane。showMessageDialog(null, \"未查询到符合条件的仪器,请重新 +aname+”' and aprice=’”+aprice+”’ and amount='”+amount+\"'”; rows++; 输入!\", \"错误\", JOptionPane.ERROR_MESSAGE); } String s[][]=new String[rows][columns]; rs。beforeFirst(); for(int i=0;rs。next();i++) for(int j=1;j〈=columns;j++) s[i][j—1]=rs。getString(j); result=s; 28 } catch(Exception e){ } finally { DB.closeStmt(); DB。closeConn(); } return result; } public String[] getAllano(){ String[] s = null; int row = 0; int i = 0; Database DB = new Database(); sql = \"select distinct ano from apparatus ”; try{ DB。OpenConn(); rs = DB。executeQuery(sql); if(rs。last()){ row = rs。getRow(); } if(row == 0){ s = null; } else{ s = new String[row]; rs。first(); rs.previous(); while(rs.next()){ 29 (完整word版)java课设医院管理信息系统 (完整word版)java课设医院管理信息系统 } } } } s[i] = rs。getString(1); i++; catch(Exception e){ } finally { } return s; DB。closeStmt(); DB.closeConn(); System.out。println(e); public String[][] refresh() { Database DB = new Database(); String result[][]=null; sql = \"select * from apparatus \"; try { DB.OpenConn(); rs = DB。executeQuery(sql); ResultSetMetaData rsmd = rs。getMetaData(); int columns=rsmd.getColumnCount(); int rows=0; while(rs.next()) { } 30 rows++; (完整word版)java课设医院管理信息系统 if(rows==0) String s[][]=new String[rows][columns]; {JOptionPane.showMessageDialog(null,\"没有该仪器记录!”,”提示\",1);} rs.beforeFirst(); for(int i=0;rs.next();i++) for(int j=1;j<=columns;j++) s[i][j—1]=rs。getString(j); result=s; } catch(Exception e) {} finally { DB.closeStmt(); DB。closeConn(); } return result; } public String[][] searchAllStuff(String text, String text4) { return null; } } 3.2.4Apparatusadd类 对医院仪器信息进行添加。 31 String text2, String text3, (完整word版)java课设医院管理信息系统 import java.awt。*; import java。awt.event.ActionEvent; import java。awt.event。ActionListener; import javax.swing.*; public class Apparatusadd extends JFrame implements ActionListener { private JButton button_add; private JButton button_cancel; private JButton button_clear; private JLabel label_ano=new JLabel(”仪器代号: ”); private JLabel label_aname=new JLabel(”仪器名称: \"); private JLabel label_aprice=new JLabel(”仪器价格: \"); private JLabel label_amount=new JLabel(\"储存量: ”); private JLabel label_explain=new JLabel(\"备注: \"); private JTextField text_ano; private JTextField text_aname; private JTextField text_aprice; private JTextField text_amount; private JTextField text_explain; GridBagLayout gridBag=new GridBagLayout(); GridBagConstraints gridBagCon; public Apparatusadd() 32 (完整word版)java课设医院管理信息系统 { super(\"新增仪器信息”); this。setSize(700,300); this.setLocation(320,120); this。setBackground(Color。lightGray); this。setResizable(false); this。setDefaultCloseOperation(DISPOSE_ON_CLOSE); //添加主面板 JPanel main=new JPanel(); main.setLayout(gridBag); this.getContentPane()。add(main,”Center\"); label_ano.setFont(new Font(”Dialog”,0,14)); gridBagCon=new GridBagConstraints(); gridBagCon。gridx=0; //第0列 gridBagCon。gridy=0; //第0行 gridBagCon。insets=new Insets(10,10,10,1); gridBag。setConstraints(label_ano,gridBagCon); main.add(label_ano); gridBagCon=new GridBagConstraints(); gridBagCon。gridx=1; gridBagCon。gridy=0; gridBagCon。insets=new Insets(10,1,10,15); text_ano=new JTextField(15); gridBag。setConstraints(text_ano,gridBagCon); main.add(text_ano); label_aname.setFont(new Font(\"Dialog\",0,14)); gridBagCon=new GridBagConstraints(); 33 (完整word版)java课设医院管理信息系统 gridBagCon.gridx=2; gridBagCon。gridy=0; gridBagCon。insets=new Insets(10,15,10,1); gridBag.setConstraints(label_aname,gridBagCon); main.add(label_aname); gridBagCon=new GridBagConstraints(); gridBagCon。gridx=3; gridBagCon。gridy=0; gridBagCon.insets=new Insets(10,1,10,10); text_aname=new JTextField(15); gridBag。setConstraints(text_aname,gridBagCon); main.add(text_aname); label_aprice。setFont(new Font(”Dialog\14)); gridBagCon=new GridBagConstraints(); gridBagCon.gridx=0; gridBagCon。gridy=1; gridBagCon。insets=new Insets(10,15,10,1); gridBag.setConstraints(label_aprice,gridBagCon); main.add(label_aprice); gridBagCon=new GridBagConstraints(); gridBagCon.gridx=1; gridBagCon.gridy=1; gridBagCon.insets=new Insets(10,1,10,10); text_aprice=new JTextField(15); gridBag。setConstraints(text_aprice,gridBagCon); main。add(text_aprice); 34 (完整word版)java课设医院管理信息系统 label_amount。setFont(new Font(\"Dialog\",0,14)); gridBagCon=new GridBagConstraints(); gridBagCon.gridx=2; gridBagCon.gridy=1; gridBagCon。insets=new Insets(10,15,10,1); gridBag。setConstraints(label_amount,gridBagCon); main.add(label_amount); gridBagCon=new GridBagConstraints(); gridBagCon。gridx=3; gridBagCon.gridy=1; gridBagCon.insets=new Insets(10,1,10,10); text_amount=new JTextField(15); gridBag.setConstraints(text_amount,gridBagCon); main。add(text_amount); label_explain。setFont(new Font(\"Dialog”,0,14)); gridBagCon=new GridBagConstraints(); gridBagCon。gridx=0; gridBagCon.gridy=2; gridBagCon.insets=new Insets(10,15,10,1); gridBag。setConstraints(label_explain,gridBagCon); main.add(label_explain); gridBagCon=new GridBagConstraints(); gridBagCon.gridx=1; gridBagCon。gridy=2; gridBagCon。insets=new Insets(10,1,10,10); 35 (完整word版)java课设医院管理信息系统 text_explain=new JTextField(15); gridBag。setConstraints(text_explain,gridBagCon); main.add(text_explain); //添加增加、清空、取消按钮 JPanel down=new JPanel(); button_add=new JButton(”增加\"); button_add。setFont(new Font(\"Dialog”,0,14)); button_add。addActionListener(this); button_clear=new JButton(”清空\"); button_clear.setFont(new Font(”Dialog\",0,14)); button_clear。addActionListener(this); button_cancel=new JButton(”取消”); button_cancel。setFont(new Font(”Dialog\",0,14)); button_cancel.addActionListener(this); down。add(button_add); down。add(button_clear); down.add(button_cancel); this.getContentPane().add(down,”South\"); this。setVisible(true); } public void actionPerformed(ActionEvent e) { if(e.getSource()==button_add) {StuffBean p=new StuffBean(); p.add(text_ano.getText(),text_aname.getText(),text_aprice.getText(),text_amount。 } getText(),text_explain。getText()); if(e。getSource()==button_clear) { text_ano。setText(””); text_aname。setText(”\"); 36 (完整word版)java课设医院管理信息系统 } } } text_aprice。setText(””); text_amount.setText(\"”); text_explain.setText(”\"); if(e。getSource()==button_cancel) { } this.setVisible(false); public static void main(String[] args) { } new Apparatusadd(); 3。2.5Apparatuscheck类 对仪器信息进行查询。 import java.awt.*; 37 (完整word版)java课设医院管理信息系统 import java。awt.event。*; import java。sql.*; import javax.swing.*; import javax。swing.table.*; public class Apparatuscheck extends JFrame implements ActionListener { private JLabel label=new JLabel(\"设置查询条件: \"); private JLabel label_ano=new JLabel(”仪器代号: ”); private JLabel label_aname=new JLabel(\"仪器名称: ”); private JLabel label_aprice=new JLabel(”仪器价格: ”); private JLabel label_amount=new JLabel(”储存量: ”); private JTextField text_ano; private JTextField text_aname; private JTextField text_aprice; private JTextField text_amount; private JButton button_search1,button_search2,button_clear,button_cancel; private JTable table; //表格组件 private DefaultTableModel tableModel; String []columns={\"仪器代号\\",\"仪器数量\ String datas[][]; GridBagLayout gridBag=new GridBagLayout(); GridBagConstraints gridBagCon; public Apparatuscheck(String data[][]) { super(”仪器信息查询\"); this。setSize(800,600); this。setLocation(300,80); this.setBackground(Color.lightGray); this.setResizable(false); this。setDefaultCloseOperation(DISPOSE_ON_CLOSE); 38 (完整word版)java课设医院管理信息系统 this.datas=data; JSplitPane js=new JSplitPane(JSplitPane。VERTICAL_SPLIT); JPanel up=new JPanel(); up。setLayout(gridBag); js.add(up); this。getContentPane()。add(js); label.setFont(new Font(\"Dialog”,0,18)); gridBagCon=new GridBagConstraints(); gridBagCon.gridx=0; //第0列 gridBagCon。gridy=0; //第0行 gridBagCon.insets=new Insets(10,10,10,1); gridBag.setConstraints(label,gridBagCon); up。add(label); label_ano。setFont(new Font(”Dialog\",0,14)); gridBagCon=new GridBagConstraints(); gridBagCon。gridx=0; gridBagCon.gridy=1; gridBagCon。insets=new Insets(10,10,10,1); gridBag。setConstraints(label_ano,gridBagCon); up.add(label_ano); gridBagCon=new GridBagConstraints(); gridBagCon。gridx=1; gridBagCon。gridy=1; gridBagCon.insets=new Insets(10,1,10,15); text_ano=new JTextField(15); 39 (完整word版)java课设医院管理信息系统 gridBag。setConstraints(text_ano,gridBagCon); up。add(text_ano); label_aname.setFont(new Font(”Dialog\",0,14)); gridBagCon=new GridBagConstraints(); gridBagCon。gridx=2; gridBagCon。gridy=1; gridBagCon。insets=new Insets(10,10,10,1); gridBag.setConstraints(label_aname,gridBagCon); up.add(label_aname); gridBagCon=new GridBagConstraints(); gridBagCon.gridx=3; gridBagCon。gridy=1; gridBagCon.insets=new Insets(10,1,10,15); text_aname=new JTextField(15); gridBag.setConstraints(text_aname,gridBagCon); up.add(text_aname); label_aprice。setFont(new Font(”Dialog\",0,14)); gridBagCon=new GridBagConstraints(); gridBagCon.gridx=0; gridBagCon.gridy=2; gridBagCon.insets=new Insets(10,10,10,1); gridBag。setConstraints(label_aprice,gridBagCon); up。add(label_aprice); gridBagCon=new GridBagConstraints(); gridBagCon。gridx=1; 40 (完整word版)java课设医院管理信息系统 gridBagCon。gridy=2; gridBagCon.insets=new Insets(10,1,10,15); text_aprice=new JTextField(15); gridBag.setConstraints(text_aprice,gridBagCon); up.add(text_aprice); label_amount。setFont(new Font(”Dialog”,0,14)); gridBagCon=new GridBagConstraints(); gridBagCon。gridx=2; gridBagCon.gridy=2; gridBagCon。insets=new Insets(10,10,10,1); gridBag.setConstraints(label_amount,gridBagCon); up。add(label_amount); gridBagCon=new GridBagConstraints(); gridBagCon.gridx=3; gridBagCon。gridy=2; gridBagCon。insets=new Insets(10,1,10,15); text_amount=new JTextField(15); gridBag.setConstraints(text_amount,gridBagCon); up。add(text_amount); gridBagCon=new GridBagConstraints(); gridBagCon.gridx=0; gridBagCon。gridy=4; gridBagCon.gridwidth=2; gridBagCon.insets=new Insets(10,20,10,15); button_search1=new JButton(”模糊查询\"); button_search1。setFont(new Font(”Dialog”,0,14)); 41 (完整word版)java课设医院管理信息系统 gridBag。setConstraints(button_search1,gridBagCon); up。add(button_search1); button_search1.addActionListener(this); gridBagCon=new GridBagConstraints(); gridBagCon.gridx=2; gridBagCon.gridy=4; gridBagCon。gridwidth=2; gridBagCon.insets=new Insets(10,20,10,15); button_search2=new JButton(”精确查询”); button_search2.setFont(new Font(\"Dialog”,0,14)); gridBag.setConstraints(button_search2,gridBagCon); up.add(button_search2); button_search2。addActionListener(this); JSplitPane south=new JSplitPane(JSplitPane.VERTICAL_SPLIT); south。setDividerLocation(280); //列表框 tableModel=new DefaultTableModel(datas,columns); table=new JTable(tableModel){ public boolean isCellEditable(int row, int column) { return false;}//表格不允许被编辑 }; JScrollPane scrollPane = new JScrollPane(table) ; south.add(scrollPane); JPanel down=new JPanel(); down.setLayout(gridBag); button_clear=new JButton(”清空”); 42 (完整word版)java课设医院管理信息系统 button_clear.setFont(new Font(”Dialog\ down。add(button_clear); button_clear.addActionListener(this); button_cancel=new JButton(\"取消”); button_cancel。setFont(new Font(\"Dialog\,14)); down。add(button_cancel); button_cancel.addActionListener(this); south。add(down); js。add(south); this.setVisible(true); } public void actionPerformed(ActionEvent e) { ApparatusBean searchallp=new ApparatusBean(); //或关系查询 if(e。getSource()==button_search1) {datas=searchallp。searchAllApparatusand(text_ano。getText(),text_aname.getText } //与关系查询 if(e.getSource()==button_search2) new Invalidcheck(datas); this。setVisible(false); //System。out。println(\"全部”); (),text_aprice。getText(),text_amount.getText()); {datas=searchallp。searchAllApparatusand(text_ano.getText(),text_aname。 new Invalidcheck(datas); this.setVisible(false); //System.out。println(\"全部\"); 43 getText(),text_aprice.getText(),text_amount。getText()); (完整word版)java课设医院管理信息系统 } } } { //清空列表框 } if(e。getSource()==button_cancel) { } this。setVisible(false); //断开数据库 datas=null; if(e.getSource()==button_clear) new Apparatuscheck(datas); this。setVisible(false); public static void main(String[] args) //测试方法 { new Apparatuscheck(null); } 其他几个模块的增删查改功能与仪器管理模块的增删查改类似,代码就不一一列举了. 4总结 本课程设计是java语言学习中很重要的实践性环节之一。我体会到编写程序首先要明确编程思想,即在编程之前要对程序有一个总体的构思、总体的框架,这样编程时才能条理清晰。有时候我们可能会到书上或网上找到一些满足我们要求的程序代码,在此我们应该取其优秀的简单易理解代码作为我们设计程序的代码,作为初学者参考和借用部分外部程序是不可避免,但是我认为前提我们应该看懂那些程序代码,要知其所以然,那样才达到我们学程序的目的,但不主张完全照搬,否则就会没意义了。java是一个非常实用的编程语言,通过本次课程设计我学到了很多、也发现了自己的很多不足,以后会加倍努力学好java. 44 (完整word版)java课设医院管理信息系统 5参考资料 [1] 王淼 张奔。《浅谈医院门诊管理系统的设计与实现[J]》清华大学出版社 [2] 朱福喜。《Java语言程序设计》(第二版).科学出版社 [3] 陈国君等。《Java程序设计基础》(第二版).清华大学出版社 [4] Deitel.《Java大学基础教程》(第六版).电子工业出版社 [5](美)拉曼(Larman,C。)著,李洋 译《UML和模式应用》.机械工业出版社 45 因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- shangjiatang.cn 版权所有 湘ICP备2022005869号-4
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务