欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Java实现医院管理系统

程序员文章站 2024-03-02 10:50:52
本文实例为大家分享了java实现医院管理系统的具体代码,供大家参考,具体内容如下 1.开发工具 netbeans8.2 mysql5.7 mysql-connect...

本文实例为大家分享了java实现医院管理系统的具体代码,供大家参考,具体内容如下

1.开发工具

netbeans8.2
mysql5.7
mysql-connector-java-5.1.6.jar

2.演示

登录界面

Java实现医院管理系统

增删查改界面

Java实现医院管理系统

3.源码

create table user ( 
username varchar(255) not null, 
password varchar(255) default null, 
primary key (username) 
) engine=innodb default charset=utf8;

create table doctor_info ( 
no varchar(45) not null, 
name varchar(45) default null, 
departments varchar(45) default null, 
level varchar(45) default null, 
ghf varchar(45) default null, 
primary key (no) 
) engine=innodb default charset=utf8;
package 经典增删查改;
import com.mysql.jdbc.connection;
import java.sql.resultset;
import java.sql.sqlexception;
import java.sql.statement;
import java.util.logging.level;
import java.util.logging.logger;
import javax.swing.jcombobox;
import javax.swing.joptionpane;


public class login extends javax.swing.jframe {

 private int flag;
 public login() {
  initcomponents();
 }

 /**
 * this method is called from within the constructor to initialize the form.
 * warning: do not modify this code. the content of this method is always
 * regenerated by the form editor.
 */
 @suppresswarnings("unchecked")
 // <editor-fold defaultstate="collapsed" desc="generated code">       
 private void initcomponents() {

  jlabel1 = new javax.swing.jlabel();
  jlabel2 = new javax.swing.jlabel();
  jtextfield2 = new javax.swing.jtextfield();
  jpasswordfield1 = new javax.swing.jpasswordfield();
  jbutton2 = new javax.swing.jbutton();
  jbutton3 = new javax.swing.jbutton();

  setdefaultcloseoperation(javax.swing.windowconstants.exit_on_close);

  jlabel1.settext("账号");

  jlabel2.settext("密码");

  jtextfield2.settext(" ");

  jbutton2.settext("登录");
  jbutton2.addactionlistener(new java.awt.event.actionlistener() {
   public void actionperformed(java.awt.event.actionevent evt) {
    jbutton2actionperformed(evt);
   }
  });

  jbutton3.settext("退出");
  jbutton3.addactionlistener(new java.awt.event.actionlistener() {
   public void actionperformed(java.awt.event.actionevent evt) {
    jbutton3actionperformed(evt);
   }
  });

  javax.swing.grouplayout layout = new javax.swing.grouplayout(getcontentpane());
  getcontentpane().setlayout(layout);
  layout.sethorizontalgroup(
   layout.createparallelgroup(javax.swing.grouplayout.alignment.leading)
   .addgroup(layout.createsequentialgroup()
    .addgap(103, 103, 103)
    .addgroup(layout.createparallelgroup(javax.swing.grouplayout.alignment.trailing)
     .addcomponent(jlabel2)
     .addcomponent(jlabel1))
    .addpreferredgap(javax.swing.layoutstyle.componentplacement.unrelated)
    .addgroup(layout.createparallelgroup(javax.swing.grouplayout.alignment.trailing, false)
     .addgroup(layout.createsequentialgroup()
      .addcomponent(jbutton2)
      .addpreferredgap(javax.swing.layoutstyle.componentplacement.related, 35, short.max_value)
      .addcomponent(jbutton3))
     .addgroup(layout.createparallelgroup(javax.swing.grouplayout.alignment.leading, false)
      .addcomponent(jtextfield2, javax.swing.grouplayout.default_size, 149, short.max_value)
      .addcomponent(jpasswordfield1)))
    .addcontainergap(114, short.max_value))
  );
  layout.setverticalgroup(
   layout.createparallelgroup(javax.swing.grouplayout.alignment.leading)
   .addgroup(layout.createsequentialgroup()
    .addgap(69, 69, 69)
    .addgroup(layout.createparallelgroup(javax.swing.grouplayout.alignment.baseline)
     .addcomponent(jlabel1)
     .addcomponent(jtextfield2, javax.swing.grouplayout.preferred_size, javax.swing.grouplayout.default_size, javax.swing.grouplayout.preferred_size))
    .addpreferredgap(javax.swing.layoutstyle.componentplacement.unrelated)
    .addgroup(layout.createparallelgroup(javax.swing.grouplayout.alignment.baseline)
     .addcomponent(jlabel2, javax.swing.grouplayout.preferred_size, 26, javax.swing.grouplayout.preferred_size)
     .addcomponent(jpasswordfield1, javax.swing.grouplayout.preferred_size, javax.swing.grouplayout.default_size, javax.swing.grouplayout.preferred_size))
    .addgap(18, 18, 18)
    .addgroup(layout.createparallelgroup(javax.swing.grouplayout.alignment.baseline)
     .addcomponent(jbutton2)
     .addcomponent(jbutton3))
    .addcontainergap(49, short.max_value))
  );

  pack();
 }// </editor-fold>      

 private void jbutton3actionperformed(java.awt.event.actionevent evt) {           
  system.exit(0);
 }          

 private void jbutton2actionperformed(java.awt.event.actionevent evt) {           
  try {
   connection con = dbconnection.getconnection();
   statement stmt = con.createstatement();
   string sql="select *from user";
   resultset rs = stmt.executequery(sql);
   string usename=jtextfield2.gettext().trim();
   char[] p=jpasswordfield1.getpassword();
   string pwd=new string(p);
   string name = null;
   string pass = null;
   while(rs.next()){
    name=rs.getstring(1);
    pass=rs.getstring(2);
    if(usename.equals(name)&&pwd.equals(pass)){
     system.out.println("登录成功!!");

     new doctorinfogui().setvisible(true);
     this.dispose();

    } 
    }


  } catch (classnotfoundexception ex) {
   logger.getlogger(login.class.getname()).log(level.severe, null, ex);
  } catch (sqlexception ex) {
   logger.getlogger(login.class.getname()).log(level.severe, null, ex);
  }
 }          

 /**
 * @param args the command line arguments
 */
 public static void main(string args[]) {
  /* set the nimbus look and feel */
  //<editor-fold defaultstate="collapsed" desc=" look and feel setting code (optional) ">
  /* if nimbus (introduced in java se 6) is not available, stay with the default look and feel.
  * for details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html 
  */
  try {
   for (javax.swing.uimanager.lookandfeelinfo info : javax.swing.uimanager.getinstalledlookandfeels()) {
    if ("nimbus".equals(info.getname())) {
     javax.swing.uimanager.setlookandfeel(info.getclassname());
     break;
    }
   }
  } catch (classnotfoundexception ex) {
   java.util.logging.logger.getlogger(login.class.getname()).log(java.util.logging.level.severe, null, ex);
  } catch (instantiationexception ex) {
   java.util.logging.logger.getlogger(login.class.getname()).log(java.util.logging.level.severe, null, ex);
  } catch (illegalaccessexception ex) {
   java.util.logging.logger.getlogger(login.class.getname()).log(java.util.logging.level.severe, null, ex);
  } catch (javax.swing.unsupportedlookandfeelexception ex) {
   java.util.logging.logger.getlogger(login.class.getname()).log(java.util.logging.level.severe, null, ex);
  }
  //</editor-fold>

  /* create and display the form */
  java.awt.eventqueue.invokelater(new runnable() {
   public void run() {
    new login().setvisible(true);
   }
  });
 }

 // variables declaration - do not modify      
 private javax.swing.jbutton jbutton2;
 private javax.swing.jbutton jbutton3;
 private javax.swing.jlabel jlabel1;
 private javax.swing.jlabel jlabel2;
 private javax.swing.jpasswordfield jpasswordfield1;
 private javax.swing.jtextfield jtextfield2;
 // end of variables declaration     
}
package 经典增删查改;
import java.awt.event.keyevent;

import javax.swing.joptionpane;
public class doctorinfogui extends javax.swing.jframe {
 public doctorinfogui() {
  initcomponents();
  string sql="select*from doctor_info";
  //doctorinfo看作为一个tablemodel
  doctorinfo d=new doctorinfo (sql);
  //教你如何添加数据的方法
  jtable1.setmodel(d);
  system.out.println(" 已经给表添加好了数据!");
 }


 private void initcomponents() {

  jtfseacher = new javax.swing.jtextfield();
  jbtseacher = new javax.swing.jbutton();
 ///////////////////////////////////////////////////////////////////
   //alt+enter
  jbtseacher.setmnemonic(keyevent.vk_enter);


  jscrollpane1 = new javax.swing.jscrollpane();
  jscrollpane2 = new javax.swing.jscrollpane();
  jtable1 = new javax.swing.jtable();
  jlabel1 = new javax.swing.jlabel();
  jlabel2 = new javax.swing.jlabel();
  jlabel3 = new javax.swing.jlabel();
  jlabel4 = new javax.swing.jlabel();
  jlabel5 = new javax.swing.jlabel();
  jtfno = new javax.swing.jtextfield();
  jtfname = new javax.swing.jtextfield();
  jtextfieldks = new javax.swing.jtextfield();
  jtflevel = new javax.swing.jtextfield();
  jtfghf = new javax.swing.jtextfield();
  jbtadd = new javax.swing.jbutton();
  updatajbt = new javax.swing.jbutton();
  jbtupdata = new javax.swing.jbutton();
  jlabel6 = new javax.swing.jlabel();
  deletejbt = new javax.swing.jbutton();
  jbtclear = new javax.swing.jbutton();
  jlabel7 = new javax.swing.jlabel();


  setdefaultcloseoperation(javax.swing.windowconstants.exit_on_close);

  jbtseacher.settext("查询");
  jtfseacher.settooltiptext("按姓名查询");
  jbtseacher.addactionlistener(new java.awt.event.actionlistener() {
   public void actionperformed(java.awt.event.actionevent evt) {
    jbtseacheractionperformed(evt);
   }
  });


  jtable1.addmouselistener(new java.awt.event.mouseadapter() {
   public void mouseclicked(java.awt.event.mouseevent evt) {
    jtable1mouseclicked(evt);
   }
  });
  jscrollpane2.setviewportview(jtable1);

  jscrollpane1.setviewportview(jscrollpane2);

  jlabel1.settext("编号");

  jlabel2.settext("姓名");

  jlabel3.settext("科室");

  jlabel4.settext("级别");

  jlabel5.settext("挂号费");

  jtfno.settext(" ");

  jtfname.settext(" ");


  jtflevel.settext(" ");

  jtfghf.settext(" ");

  jbtadd.settext("添加");
  jbtadd.addactionlistener(new java.awt.event.actionlistener() {
   public void actionperformed(java.awt.event.actionevent evt) {
    jbtaddactionperformed(evt);
   }
  });

  updatajbt.settext("修改");
  updatajbt.addactionlistener(new java.awt.event.actionlistener() {
   public void actionperformed(java.awt.event.actionevent evt) {
    updatajbtactionperformed(evt);
   }
  });


  jlabel6.settext("姓名");

  deletejbt.settext("删除");
  deletejbt.addactionlistener(new java.awt.event.actionlistener() {
   public void actionperformed(java.awt.event.actionevent evt) {
    deletejbtactionperformed(evt);
   }
  });

  jbtclear.settext("清空");
  jbtclear.addactionlistener(new java.awt.event.actionlistener() {
   public void actionperformed(java.awt.event.actionevent evt) {
    jbtclearactionperformed(evt);
   }
  });

  jlabel7.settext("科室");

  jtextfieldks.settext(" ");

  javax.swing.grouplayout layout = new javax.swing.grouplayout(getcontentpane());
  getcontentpane().setlayout(layout);
  layout.sethorizontalgroup(
   layout.createparallelgroup(javax.swing.grouplayout.alignment.leading)
   .addgroup(layout.createsequentialgroup()
    .addgroup(layout.createparallelgroup(javax.swing.grouplayout.alignment.leading)
     .addgroup(layout.createsequentialgroup()
      .addcontainergap()
      .addcomponent(jscrollpane1, javax.swing.grouplayout.default_size, 515, short.max_value))
     .addgroup(layout.createsequentialgroup()
      .addgap(81, 81, 81)
      .addcomponent(jtfseacher, javax.swing.grouplayout.preferred_size, 78, javax.swing.grouplayout.preferred_size)
      .addgap(39, 39, 39)
      .addcomponent(jbtseacher)
      .addgap(32, 32, 32)
      .addcomponent(deletejbt))
     .addgroup(layout.createsequentialgroup()
      .addcontainergap()
      .addgroup(layout.createparallelgroup(javax.swing.grouplayout.alignment.leading)
       .addgroup(layout.createsequentialgroup()
        .addcomponent(jlabel1)
        .addpreferredgap(javax.swing.layoutstyle.componentplacement.related)
        .addcomponent(jtfno, javax.swing.grouplayout.preferred_size, 76, javax.swing.grouplayout.preferred_size))
       .addgroup(layout.createsequentialgroup()
        .addcomponent(jlabel6)
        .addpreferredgap(javax.swing.layoutstyle.componentplacement.related)
        .addcomponent(jtfname, javax.swing.grouplayout.preferred_size, 76, javax.swing.grouplayout.preferred_size)))
      .addgroup(layout.createparallelgroup(javax.swing.grouplayout.alignment.leading)
       .addgroup(layout.createsequentialgroup()
        .addgap(32, 32, 32)
        .addcomponent(jlabel4)
        .addpreferredgap(javax.swing.layoutstyle.componentplacement.related)
        .addcomponent(jtflevel, javax.swing.grouplayout.preferred_size, 74, javax.swing.grouplayout.preferred_size))
       .addgroup(layout.createsequentialgroup()
        .addgap(18, 18, 18)
        .addcomponent(jlabel5)
        .addpreferredgap(javax.swing.layoutstyle.componentplacement.related)
        .addcomponent(jtfghf, javax.swing.grouplayout.preferred_size, 74, javax.swing.grouplayout.preferred_size)))
      .addgroup(layout.createparallelgroup(javax.swing.grouplayout.alignment.leading)
       .addgroup(layout.createsequentialgroup()
        .addgap(55, 55, 55)
        .addcomponent(jbtupdata))
       .addgroup(layout.createsequentialgroup()
        .addgap(30, 30, 30)
        .addgroup(layout.createparallelgroup(javax.swing.grouplayout.alignment.leading)
         .addgroup(layout.createsequentialgroup()
          .addcomponent(jlabel7)
          .addpreferredgap(javax.swing.layoutstyle.componentplacement.related)
          .addcomponent(jtextfieldks, javax.swing.grouplayout.preferred_size, 65, javax.swing.grouplayout.preferred_size))
         .addgroup(layout.createsequentialgroup()
          .addcomponent(jbtadd)
          .addgap(10, 10, 10)
          .addcomponent(jbtclear)
          .addpreferredgap(javax.swing.layoutstyle.componentplacement.unrelated)
          .addcomponent(updatajbt)))))))
    .addcontainergap())
   .addgroup(layout.createsequentialgroup()
    .addcontainergap()
    .addcomponent(jlabel3)
    .addpreferredgap(javax.swing.layoutstyle.componentplacement.related)
    .addgroup(layout.createparallelgroup(javax.swing.grouplayout.alignment.leading)
     .addcomponent(jlabel2))));


  layout.setverticalgroup(
   layout.createparallelgroup(javax.swing.grouplayout.alignment.leading)
   .addgroup(layout.createsequentialgroup()
    .addgap(17, 17, 17)
    .addgroup(layout.createparallelgroup(javax.swing.grouplayout.alignment.baseline)
     .addcomponent(jtfseacher, javax.swing.grouplayout.preferred_size, javax.swing.grouplayout.default_size, javax.swing.grouplayout.preferred_size)
     .addcomponent(jbtseacher)
     .addcomponent(deletejbt))
    .addpreferredgap(javax.swing.layoutstyle.componentplacement.unrelated)
    .addgroup(layout.createparallelgroup(javax.swing.grouplayout.alignment.leading)
     .addcomponent(jscrollpane1, javax.swing.grouplayout.preferred_size, 172, javax.swing.grouplayout.preferred_size)
     .addgroup(layout.createparallelgroup(javax.swing.grouplayout.alignment.baseline)
      .addcomponent(jlabel3, javax.swing.grouplayout.preferred_size, 37, javax.swing.grouplayout.preferred_size)

      .addcomponent(jbtupdata)))
    .addpreferredgap(javax.swing.layoutstyle.componentplacement.related)
    .addgroup(layout.createparallelgroup(javax.swing.grouplayout.alignment.leading)
     .addgroup(layout.createsequentialgroup()
      .addgroup(layout.createparallelgroup(javax.swing.grouplayout.alignment.baseline)
       .addcomponent(jlabel1)
       .addcomponent(jlabel4)
       .addcomponent(jtfno, javax.swing.grouplayout.preferred_size, javax.swing.grouplayout.default_size, javax.swing.grouplayout.preferred_size)
       .addcomponent(jtflevel, javax.swing.grouplayout.preferred_size, javax.swing.grouplayout.default_size, javax.swing.grouplayout.preferred_size)
       .addcomponent(jlabel7)
       .addcomponent(jtextfieldks, javax.swing.grouplayout.preferred_size, javax.swing.grouplayout.default_size, javax.swing.grouplayout.preferred_size))
      .addgap(8, 8, 8)
      .addgroup(layout.createparallelgroup(javax.swing.grouplayout.alignment.baseline)
       .addcomponent(jlabel5)
       .addcomponent(jtfname, javax.swing.grouplayout.preferred_size, javax.swing.grouplayout.default_size, javax.swing.grouplayout.preferred_size)
       .addcomponent(jtfghf, javax.swing.grouplayout.preferred_size, javax.swing.grouplayout.default_size, javax.swing.grouplayout.preferred_size)
       .addcomponent(jlabel6))
      .addpreferredgap(javax.swing.layoutstyle.componentplacement.related)
      .addcomponent(jlabel2, javax.swing.grouplayout.preferred_size, 0, javax.swing.grouplayout.preferred_size)
      .addcontainergap(39, short.max_value))
     .addgroup(javax.swing.grouplayout.alignment.trailing, layout.createsequentialgroup()
      .addgroup(layout.createparallelgroup(javax.swing.grouplayout.alignment.trailing)
       .addgroup(layout.createparallelgroup(javax.swing.grouplayout.alignment.baseline)
        .addcomponent(jbtclear)
        .addcomponent(updatajbt))
       .addcomponent(jbtadd, javax.swing.grouplayout.alignment.leading))
      .addgap(43, 43, 43))))
  );

  pack();
 }// </editor-fold>      

 private void jbtseacheractionperformed(java.awt.event.actionevent evt) {           
   string text=jtfseacher.gettext().trim();
   //重新执行查询sql语句,在读取数据,然后再添加到table表格中,实现刷新表格的作用
   string sql="select*from doctor_info where name='"+text+"'";
   doctorinfo d=new doctorinfo (sql);
   jtable1.setmodel(d);
   jtfseacher.settext("");


 }           

 private void jbtaddactionperformed(java.awt.event.actionevent evt) {          
   string no=jtfno.gettext().trim();
   string name=jtfname.gettext().trim();
   string ks= jtextfieldks.gettext().trim();
   string level=jtflevel.gettext().trim();
   string ghf=jtfghf.gettext().trim();

   //执行添加sql语句,再读取数据
   string sql = "insert into doctor_info(no,name ,departments,level,ghf) values('" + no + "','" + name+ "', '" + ks+ "', '" + level + "','"+ghf+"')";
   doctorinfo df=new doctorinfo ();
   df.add(sql);
   //
   //重新读取数据
   string sql1="select*from doctor_info";
   doctorinfo d=new doctorinfo (sql1);
   jtable1.setmodel(d);

   jtfno.settext("");
   jtfname.settext("");
   jtflevel.settext("");
   jtfghf.settext("");
   jtextfieldks.settext("");
 }          

 private void updatajbtactionperformed(java.awt.event.actionevent evt) {           
  //获取当前位置
  int index = jtable1.getselectedrow();
  //获取莫一行的第0列的值,注意获取的行数需要减少一个
  string id = jtable1.getvalueat(index-1, 0).tostring() ;

  string no=jtfno.gettext().trim();
  string name=jtfname.gettext().trim();
  string ks= jtextfieldks.gettext().trim();
  string level=jtflevel.gettext().trim();
  string ghf=jtfghf.gettext().trim();


  jtfno.settext("");
  jtfname.settext("");
  jtflevel.settext("");
  jtfghf.settext("");
  jtextfieldks.settext("");

  string sql = "update doctor_info set name ='" + name + "',departments='" + ks + "',level='" + level+ "',ghf='" + ghf + "' where no='" + no+ "'";
  system.out.println(id);
  system.out.println(no);
  doctorinfo df=new doctorinfo ();
  df.update(sql);


  //重新读取数据
  string sql1="select*from doctor_info";
  doctorinfo d=new doctorinfo (sql1);
  jtable1.setmodel(d);


 }          


 private void jtable1mouseclicked(java.awt.event.mouseevent evt) {          
  //获取某一行的具体值,并把它显示在文本框中
  string no = jtable1.getvalueat(jtable1.getselectedrow(), 0).tostring();
  string name = jtable1.getvalueat(jtable1.getselectedrow(), 1).tostring();
  string ks = jtable1.getvalueat(jtable1.getselectedrow(), 2).tostring();
  string level = jtable1.getvalueat(jtable1.getselectedrow(), 3).tostring();
  string ghf= jtable1.getvalueat(jtable1.getselectedrow(), 4).tostring();
  //把点击的内容显示在文本框中
  jtfno.settext(no);
  jtfname.settext(name);
  jtextfieldks.settext(ks);
  jtflevel.settext(level);
  jtfghf.settext(ghf);


 }         

 private void deletejbtactionperformed(java.awt.event.actionevent evt) {           
   //设置选择对话框的选项          
  string[] options = {"是", "否"};
  int answ = joptionpane.showoptiondialog(null, "是否确认删除??", "提示", joptionpane.yes_no_cancel_option, joptionpane.question_message, null, options, options[1]);

  if (answ == 0) {
   int index = jtable1.getselectedrow();
   string id = jtable1.getvalueat(index, 0).tostring();
   string sql="delete from doctor_info where no='"+id+"'";

   // 删除一条记录
   doctorinfo df=new doctorinfo ();
   df.delete(sql);
   system.out.println("删除成功!!!");

   //重新读取数据
   string sql1="select*from doctor_info";
   doctorinfo d=new doctorinfo (sql1);
    jtable1.setmodel(d);

    jtfno.settext("");
    jtfname.settext("");
    jtflevel.settext("");
    jtfghf.settext("");
    jtextfieldks.settext("");

   } else 
   {
    joptionpane.showmessagedialog(null, "无法删除!!!");
   }
 }          

 private void jbtclearactionperformed(java.awt.event.actionevent evt) {           
   jtfno.settext("");
   jtfname.settext("");
   jtflevel.settext("");
   jtfghf.settext("");
   jtextfieldks.settext("");
 }          

 public static void main(string args[]) {
  /* set the nimbus look and feel */
  //<editor-fold defaultstate="collapsed" desc=" look and feel setting code (optional) ">
  /* if nimbus (introduced in java se 6) is not available, stay with the default look and feel.
   * for details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html 
   */
  try {
   for (javax.swing.uimanager.lookandfeelinfo info : javax.swing.uimanager.getinstalledlookandfeels()) {
    if ("nimbus".equals(info.getname())) {
     javax.swing.uimanager.setlookandfeel(info.getclassname());
     break;
    }
   }
  } catch (classnotfoundexception ex) {
   java.util.logging.logger.getlogger(doctorinfogui.class.getname()).log(java.util.logging.level.severe, null, ex);
  } catch (instantiationexception ex) {
   java.util.logging.logger.getlogger(doctorinfogui.class.getname()).log(java.util.logging.level.severe, null, ex);
  } catch (illegalaccessexception ex) {
   java.util.logging.logger.getlogger(doctorinfogui.class.getname()).log(java.util.logging.level.severe, null, ex);
  } catch (javax.swing.unsupportedlookandfeelexception ex) {
   java.util.logging.logger.getlogger(doctorinfogui.class.getname()).log(java.util.logging.level.severe, null, ex);
  }
  //</editor-fold>

  /* create and display the form */
  java.awt.eventqueue.invokelater(new runnable() {
   public void run() {
    new doctorinfogui().setvisible(true);
   }
  });
 }

 // variables declaration - do not modify      
 private javax.swing.jbutton updatajbt;
 private javax.swing.jbutton deletejbt;
 private javax.swing.jlabel jlabel1;
 private javax.swing.jlabel jlabel2;
 private javax.swing.jlabel jlabel3;
 private javax.swing.jlabel jlabel4;
 private javax.swing.jlabel jlabel5;
 private javax.swing.jlabel jlabel6;
 private javax.swing.jlabel jlabel7;
 private javax.swing.jscrollpane jscrollpane1;
 private javax.swing.jscrollpane jscrollpane2;
 private javax.swing.jtable jtable1;

 private javax.swing.jbutton jbtadd;
 private javax.swing.jbutton jbtclear;
 private javax.swing.jbutton jbtupdata;
 private javax.swing.jbutton jbtseacher;
 private javax.swing.jtextfield jtfghf;
 private javax.swing.jtextfield jtextfieldks;
 private javax.swing.jtextfield jtflevel;
 private javax.swing.jtextfield jtfname;
 private javax.swing.jtextfield jtfno;
 private javax.swing.jtextfield jtfseacher;
 // end of variables declaration     
}
package 经典增删查改;

import java.io.serializable;
import java.sql.connection;
import java.sql.preparedstatement;
import java.sql.resultset;
import java.sql.sqlexception;
import java.util.vector;
import java.util.logging.level;
import java.util.logging.logger;
import javax.swing.table.abstracttablemodel;

public class doctorinfo extends abstracttablemodel {
  connection con=null;
  preparedstatement ps=null;
  resultset rs=null;
  vector<serializable> rowdata,columnname;
  public doctorinfo(string sql){
   init( sql) ;
  }

  public doctorinfo(){

  }
  public void init(string sql){

    //columnname保存表头信息
    columnname=new vector<serializable>();
    columnname.add("编号");
    columnname.add("姓名");
    columnname.add("科室");
    columnname.add("级别");
    columnname.add("挂号费");


   //rowdata向量保存每一行的信息
   rowdata=new vector<serializable>();
   try {
   con = dbconnection.getconnection();
    ps=(preparedstatement) con.preparestatement( sql);
    rs=ps.executequery();
   while(rs.next()){
     vector bang=new vector();
     bang.add(rs.getstring(1) );
     bang.add(rs.getstring(2) );
     bang.add(rs.getstring(3) );
     bang.add(rs.getstring(4) );
     bang.add(rs.getstring(5) );

     //将读取的每一行数据添加到bang中,然后再把bang添加到rowdata向量中
     rowdata.add(bang);
   }
  } catch (classnotfoundexception e) {
   // todo auto-generated catch block
   e.printstacktrace();
  } catch (sqlexception e) {
   // todo auto-generated catch block
   e.printstacktrace();
  }finally {
   if(con!=null&&ps!=null&rs!=null){
    try {
     con.close();
     ps.close();
     rs.close();
    } catch (sqlexception e) {

     e.printstacktrace();
    }

   }
  }
 }
 public void chushihua(string sql){
   connection con=null;
   preparedstatement ps=null;
  int rs;

  try {
   con = dbconnection.getconnection();
    ps=(preparedstatement) con.preparestatement( sql);
    rs=ps.executeupdate();

  } catch (classnotfoundexception e) {
   // todo auto-generated catch block
   e.printstacktrace();
  } catch (sqlexception e) {
   // todo auto-generated catch block
   e.printstacktrace();
  }


 } 
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
 public void delete(string sql){
  chushihua( sql);

 }
 public void add(string sql){
  chushihua( sql);

 }

 public void update(string sql){
  chushihua( sql);

 }

//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
 @override
 public int getrowcount() {
  return this.rowdata.size();
 }

 @override
 public int getcolumncount() {
  return this.columnname.size();
 }

 @override
 public object getvalueat(int row, int column) {
  return ((vector ) this.rowdata.get(row)).get(column);
 }
 public string getcolumnname(int column) {

  return (string) this.columnname.get(column);
 }


 }
package 经典增删查改;
import com.mysql.jdbc.connection;
import java.sql.drivermanager;
import java.sql.sqlexception;
import java.util.logging.level;
import java.util.logging.logger;
class dbconnection{
  public static connection getconnection() throws classnotfoundexception { 
  // jdbc 驱动名及数据库 url
  string jdbc_driver = "com.mysql.jdbc.driver";
  string url = "jdbc:mysql://localhost:3306/hospital";
  string user = "root";
  string password = "root";
  connection conn = null; 

   //与数据库建立连接 
    class.forname(jdbc_driver);
   try {
    conn= (connection) drivermanager.getconnection(url,user,password);
   system.out.println("已经连接数据库");

   } catch (sqlexception ex) {
    logger.getlogger(dbconnection.class.getname()).log(level.severe, null, ex);
   }


  return conn; 
 } 

}

网上难找一个带界面的管理系统源码,我把这简单管理系统分享出去,希望能够帮助到那些需要帮助的人。

更多学习资料请关注专题《管理系统开发》。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。