基于JSP实现医院病历管理系统

简介: 基于JSP实现医院病历管理系统

项目编号:BS-YL-006

本系统基于JSP+SERVLET实现医院病历管理系统,前端基于CSS+JS实现开发,数据库采用MYSQL,开发工具为IDEA或ECLIPSE均可。

本系统共分为四个角色:

管理员角色:主要管理工作人员信息,管理员信息,系统日志等。

医生角色:主要进行患者就诊,病历管理,处方管理,个人信息管理等功能。

窗口工作人员角色:主要进行划价收费工作。

库存工作人员角色:主要管理药品相关的库存工作。

系统部分功能展示:

http://localhost:8080/tjsqyygl/login.jsp

管理员登陆:

工作人员管理

管理人员管理

日志管理

医生登陆系统:

患者就诊

填写病历

病历查看

处方管理

个人信息管理

窗口工作人员:

患者挂号

处方划价

处方缴费

药品取药

库管人员登陆

药品管理

药品入库管理

药品盘点

本系统功能完整,运行无误,界面简洁大方,适合做毕业设计使用。

部分代码实现:

package cn.bukaa.control;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import cn.bukaa.dao.CommDAO;
import cn.bukaa.util.Info;
public class UserController extends MainCtrl {
  private CommDAO dao;
  public void doPost(HttpServletRequest request, HttpServletResponse response)
      throws ServletException, IOException {
    dao = new CommDAO();
    response.setContentType("text/html");
    PrintWriter out = response.getWriter();
    String ac = request.getParameter("ac");
    String date = Info.getDateStr();
    String today = date.substring(0, 10);
    String tomonth = date.substring(0, 7);
    if ("login".equals(ac)) {
      login(request, response);
    }else if("logout".equals(ac)){
      logout(request,response);
    }
    else if("uppass".equals(ac)){
      updatePass(request, response);
    }
  }
  private void logout(HttpServletRequest request,HttpServletResponse response) {
    request.getSession().invalidate();
    gor("login.jsp", request, response);
  }
  private void login(HttpServletRequest request, HttpServletResponse response){
    String pagerandom = request.getParameter("pagerandom") == null ? ""
        : request.getParameter("pagerandom");
    String random = (String) request.getSession()
        .getAttribute("random");
    if (!pagerandom.equals(random) && request.getParameter("a") != null) {
      request.setAttribute("random", "");
      go("/login.jsp", request, response);
    } else {
      dao = new CommDAO();
      String username = request.getParameter("uname");
      String password = request.getParameter("upass");
      String utype = request.getParameter("utype");
      request.getSession().setAttribute("utype", utype);
      List<HashMap> list = dao
          .select("select * from sysuser where uname='"
              + username + "'");
      if (list.size() == 1) {
        HashMap map = list.get(0);
        List<HashMap> ulist = dao
            .select("select * from sysuser where uname='"
                + username + "' and upass='" + password
                + "'");
        if (ulist.size() == 1
            && password.equals(map.get("upass").toString())) {
          request.getSession().setAttribute("admin", map);
          dao = new CommDAO();
          HashMap<String,Object> ext = new HashMap<String,Object>();
          ext.put("userid", map.get("id"));
          ext.put("tname", map.get("tname"));
          ext.put("oper", "登录");
          request.setAttribute("f", "f");
          dao.insert(request, response, "log", ext, false, true);
          gor("admin/index.jsp", request, response);
        } else {
          request.setAttribute("error", "");
          go("/login.jsp", request, response);
        }
      } else {
        request.setAttribute("error", "");
        go("/login.jsp", request, response);
      }
    }
  }
  private void  updatePass(HttpServletRequest request, HttpServletResponse response){
    dao = new CommDAO();
    String olduserpass = request.getParameter("oldpass");
    String userpass = request.getParameter("upass");
    String copyuserpass = request.getParameter("repass");
    HashMap user = dao.getmap(Info.getUser(request).get("id")
        .toString(), "sysuser");
    if (!(((String) user.get("upass")).equals(olduserpass))) {
      request.setAttribute("error", "");
      go("/admin/uppass.jsp", request, response);
    } else {
      String id = (String) user.get("id");
      String sql = "update sysuser set upass='" + userpass
          + "' where id=" + id;
      dao.commOper(sql);
      request.setAttribute("suc", "");
      go("/admin/uppass.jsp", request, response);
    }
  }
}
package cn.bukaa.control;
import java.io.File;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import jxl.Cell;
import jxl.Sheet;
import jxl.Workbook;
import org.apache.commons.fileupload.FileItem;
import org.apache.commons.fileupload.FileUpload;
import org.apache.commons.fileupload.RequestContext;
import org.apache.commons.fileupload.disk.DiskFileItemFactory;
import org.apache.commons.fileupload.servlet.ServletFileUpload;
import org.apache.commons.fileupload.servlet.ServletRequestContext;
import cn.bukaa.dao.CommDAO;
import cn.bukaa.util.Info;
public class MainCtrl extends HttpServlet {
  public MainCtrl() {
    super();
  }
  public void destroy() {
    super.destroy(); 
  }
  public void doGet(HttpServletRequest request, HttpServletResponse response)
      throws ServletException, IOException {
    this.doPost(request, response);
  }
  public void go(String url, HttpServletRequest request,
      HttpServletResponse response) {
    try {
      request.getRequestDispatcher(url).forward(request, response);
    } catch (ServletException e) {
      e.printStackTrace();
    } catch (IOException e) {
      e.printStackTrace();
    }
  }
  public void gor(String url, HttpServletRequest request,
      HttpServletResponse response) {
    try {
      response.sendRedirect(url);
    } catch (IOException e) {
      e.printStackTrace();
    }
  }
  public void doPost(HttpServletRequest request, HttpServletResponse response)
      throws ServletException, IOException {
    response.setContentType("text/html");
    PrintWriter out = response.getWriter();
    String ac = request.getParameter("ac");
    if (ac == null)
      ac = "";
    CommDAO dao = new CommDAO();
    String date = Info.getDateStr();
    String today = date.substring(0, 10);
    String tomonth = date.substring(0, 7);
    if (ac.equals("uploaddoc")) {
      try {
        String filename = "";
        request.setCharacterEncoding("utf-8");
        RequestContext requestContext = new ServletRequestContext(
            request);
        if (FileUpload.isMultipartContent(requestContext)) {
          DiskFileItemFactory factory = new DiskFileItemFactory();
          factory.setRepository(new File(request
              .getRealPath("/upfile/") + "/"));
          ServletFileUpload upload = new ServletFileUpload(factory);
          upload.setSizeMax(100 * 1024 * 1024);
          List items = new ArrayList();
          items = upload.parseRequest(request);
          FileItem fileItem = (FileItem) items.get(0);
          if (fileItem.getName() != null && fileItem.getSize() != 0) {
            if (fileItem.getName() != null
                && fileItem.getSize() != 0) {
              File fullFile = new File(fileItem.getName());
              filename = Info.generalFileName(fullFile.getName());
              File newFile = new File(
                  request.getRealPath("/upfile/") + "/"
                      + filename);
              try {
                fileItem.write(newFile);
              } catch (Exception e) {
                e.printStackTrace();
              }
            } else {
            }
          }
        }
        go("/js/uploaddoc.jsp?docname=" + filename, request, response);
      } catch (Exception e1) {
        e1.printStackTrace();
      }
    }
    if (ac.equals("uploaddoc2")) {
      try {
        String filename = "";
        request.setCharacterEncoding("utf-8");
        RequestContext requestContext = new ServletRequestContext(
            request);
        if (FileUpload.isMultipartContent(requestContext)) {
          DiskFileItemFactory factory = new DiskFileItemFactory();
          factory.setRepository(new File(request
              .getRealPath("/upfile/") + "/"));
          ServletFileUpload upload = new ServletFileUpload(factory);
          upload.setSizeMax(100 * 1024 * 1024);
          List items = new ArrayList();
          items = upload.parseRequest(request);
          FileItem fileItem = (FileItem) items.get(0);
          if (fileItem.getName() != null && fileItem.getSize() != 0) {
            if (fileItem.getName() != null
                && fileItem.getSize() != 0) {
              File fullFile = new File(fileItem.getName());
              filename = Info.generalFileName(fullFile.getName());
              File newFile = new File(
                  request.getRealPath("/upfile/") + "/"
                      + filename);
              try {
                fileItem.write(newFile);
              } catch (Exception e) {
                e.printStackTrace();
              }
            } else {
            }
          }
        }
        go("/js/uploaddoc2.jsp?docname=" + filename, request, response);
      } catch (Exception e1) {
        e1.printStackTrace();
      }
    }
    if (ac.equals("uploaddoc3")) {
      try {
        String filename = "";
        request.setCharacterEncoding("utf-8");
        RequestContext requestContext = new ServletRequestContext(
            request);
        if (FileUpload.isMultipartContent(requestContext)) {
          DiskFileItemFactory factory = new DiskFileItemFactory();
          factory.setRepository(new File(request
              .getRealPath("/upfile/") + "/"));
          ServletFileUpload upload = new ServletFileUpload(factory);
          upload.setSizeMax(100 * 1024 * 1024);
          List items = new ArrayList();
          items = upload.parseRequest(request);
          FileItem fileItem = (FileItem) items.get(0);
          if (fileItem.getName() != null && fileItem.getSize() != 0) {
            if (fileItem.getName() != null
                && fileItem.getSize() != 0) {
              File fullFile = new File(fileItem.getName());
              filename = Info.generalFileName(fullFile.getName());
              File newFile = new File(
                  request.getRealPath("/upfile/") + "/"
                      + filename);
              try {
                fileItem.write(newFile);
              } catch (Exception e) {
                e.printStackTrace();
              }
            } else {
            }
          }
        }
        go("/js/uploaddoc3.jsp?docname=" + filename, request, response);
      } catch (Exception e1) {
        e1.printStackTrace();
      }
    }
    // 导excel
    if (ac.equals("importexcel")) {
      String page = request.getParameter("page");
      String whzdstr = request.getParameter("whzdstr");
      String tablename = request.getParameter("tablename");
      try {
        String filename = "";
        request.setCharacterEncoding("utf-8");
        RequestContext requestContext = new ServletRequestContext(
            request);
        if (FileUpload.isMultipartContent(requestContext)) {
          DiskFileItemFactory factory = new DiskFileItemFactory();
          factory.setRepository(new File(request
              .getRealPath("/upfile/") + "/"));
          ServletFileUpload upload = new ServletFileUpload(factory);
          upload.setSizeMax(100 * 1024 * 1024);
          List items = new ArrayList();
          items = upload.parseRequest(request);
          FileItem fileItem = (FileItem) items.get(0);
          if (fileItem.getName() != null && fileItem.getSize() != 0) {
            if (fileItem.getName() != null
                && fileItem.getSize() != 0) {
              File fullFile = new File(fileItem.getName());
              filename = Info.generalFileName(fullFile.getName());
              File newFile = new File(
                  request.getRealPath("/upfile/") + "/"
                      + filename);
              try {
                fileItem.write(newFile);
              } catch (Exception e) {
                e.printStackTrace();
              }
            } else {
            }
          }
          if (filename.indexOf(".xls") > -1) {
            Workbook workbook;
            try {
              workbook = Workbook.getWorkbook(new File(request
                  .getRealPath("/upfile/") + "/" + filename));
              // 通过Workbook的getSheet方法选择第一个工作簿(从0开始)
              Sheet sheet = workbook.getSheet(0);
              // 通过Sheet方法的getCell方法选择位置为C2的单元格(两个参数都从0开始)
              for (int i = 1; i < 1000; i++) {
                Cell cell = null;
                try {
                  String isql = "insert into " + tablename
                      + "(";
                  for (String str : whzdstr.split("-")) {
                    isql += str + ",";
                  }
                  isql = isql.substring(0, isql.length() - 1);
                  isql += ")values(";
                  int j = 0;
                  int empty = 1;
                  for (String str : whzdstr.split("-")) {
                    cell = sheet.getCell(j, i);
                    isql += "'" + cell.getContents() + "',";
                    String content = cell.getContents() == null ? ""
                        : cell.getContents();
                    if (!"".equals(content.trim())) {
                      empty = 0;
                    }
                    j++;
                  }
                  if (empty == 1)
                    continue;
                  isql = isql.substring(0, isql.length() - 1);
                  isql += ")";
                  dao.commOper(isql);
                } catch (Exception e) {
                  continue;
                }
              }
              workbook.close();
            } catch (Exception e) {
              e.printStackTrace();
            }
          }
        }
        go("/admin/" + page + "?docname=" + filename, request, response);
      } catch (Exception e1) {
        e1.printStackTrace();
      }
    }
    if (ac.equals("uploadimg")) {
      try {
        String filename = "";
        request.setCharacterEncoding("utf-8");
        RequestContext requestContext = new ServletRequestContext(
            request);
        if (FileUpload.isMultipartContent(requestContext)) {
          DiskFileItemFactory factory = new DiskFileItemFactory();
          factory.setRepository(new File(request
              .getRealPath("/upfile/") + "/"));
          ServletFileUpload upload = new ServletFileUpload(factory);
          upload.setSizeMax(100 * 1024 * 1024);
          List items = new ArrayList();
          items = upload.parseRequest(request);
          FileItem fileItem = (FileItem) items.get(0);
          if (fileItem.getName() != null && fileItem.getSize() != 0) {
            if (fileItem.getName() != null
                && fileItem.getSize() != 0) {
              File fullFile = new File(fileItem.getName());
              filename = Info.generalFileName(fullFile.getName());
              File newFile = new File(
                  request.getRealPath("/upfile/") + "/"
                      + filename);
              try {
                fileItem.write(newFile);
              } catch (Exception e) {
                e.printStackTrace();
              }
            } else {
            }
          }
        }
        go("/js/uploadimg.jsp?filename=" + filename, request, response);
      } catch (Exception e1) {
        e1.printStackTrace();
      }
    }
    if (ac.equals("uploadimg2")) {
      try {
        String filename = "";
        request.setCharacterEncoding("utf-8");
        RequestContext requestContext = new ServletRequestContext(
            request);
        if (FileUpload.isMultipartContent(requestContext)) {
          DiskFileItemFactory factory = new DiskFileItemFactory();
          factory.setRepository(new File(request
              .getRealPath("/upfile/") + "/"));
          ServletFileUpload upload = new ServletFileUpload(factory);
          upload.setSizeMax(100 * 1024 * 1024);
          List items = new ArrayList();
          items = upload.parseRequest(request);
          FileItem fileItem = (FileItem) items.get(0);
          if (fileItem.getName() != null && fileItem.getSize() != 0) {
            if (fileItem.getName() != null
                && fileItem.getSize() != 0) {
              File fullFile = new File(fileItem.getName());
              filename = Info.generalFileName(fullFile.getName());
              File newFile = new File(
                  request.getRealPath("/upfile/") + "/"
                      + filename);
              try {
                fileItem.write(newFile);
              } catch (Exception e) {
                e.printStackTrace();
              }
            } else {
            }
          }
        }
        go("/js/uploadimg2.jsp?filename=" + filename, request, response);
      } catch (Exception e1) {
        e1.printStackTrace();
      }
    }
    if (ac.equals("uploadimg3")) {
      try {
        String filename = "";
        request.setCharacterEncoding("utf-8");
        RequestContext requestContext = new ServletRequestContext(
            request);
        if (FileUpload.isMultipartContent(requestContext)) {
          DiskFileItemFactory factory = new DiskFileItemFactory();
          factory.setRepository(new File(request
              .getRealPath("/upfile/") + "/"));
          ServletFileUpload upload = new ServletFileUpload(factory);
          upload.setSizeMax(100 * 1024 * 1024);
          List items = new ArrayList();
          items = upload.parseRequest(request);
          FileItem fileItem = (FileItem) items.get(0);
          if (fileItem.getName() != null && fileItem.getSize() != 0) {
            if (fileItem.getName() != null
                && fileItem.getSize() != 0) {
              File fullFile = new File(fileItem.getName());
              filename = Info.generalFileName(fullFile.getName());
              File newFile = new File(
                  request.getRealPath("/upfile/") + "/"
                      + filename);
              try {
                fileItem.write(newFile);
              } catch (Exception e) {
                e.printStackTrace();
              }
            } else {
            }
          }
        }
        go("/js/uploadimg3.jsp?filename=" + filename, request, response);
      } catch (Exception e1) {
        e1.printStackTrace();
      }
    }
    if (ac.equals("uploadimg4")) {
      try {
        String filename = "";
        request.setCharacterEncoding("utf-8");
        RequestContext requestContext = new ServletRequestContext(
            request);
        if (FileUpload.isMultipartContent(requestContext)) {
          DiskFileItemFactory factory = new DiskFileItemFactory();
          factory.setRepository(new File(request
              .getRealPath("/upfile/") + "/"));
          ServletFileUpload upload = new ServletFileUpload(factory);
          upload.setSizeMax(100 * 1024 * 1024);
          List items = new ArrayList();
          items = upload.parseRequest(request);
          FileItem fileItem = (FileItem) items.get(0);
          if (fileItem.getName() != null && fileItem.getSize() != 0) {
            if (fileItem.getName() != null
                && fileItem.getSize() != 0) {
              File fullFile = new File(fileItem.getName());
              filename = Info.generalFileName(fullFile.getName());
              File newFile = new File(
                  request.getRealPath("/upfile/") + "/"
                      + filename);
              try {
                fileItem.write(newFile);
              } catch (Exception e) {
                e.printStackTrace();
              }
            } else {
            }
          }
        }
        go("/js/uploadimg4.jsp?filename=" + filename, request, response);
      } catch (Exception e1) {
        e1.printStackTrace();
      }
    }
    if (ac.equals("uploadimg5")) {
      try {
        String filename = "";
        request.setCharacterEncoding("utf-8");
        RequestContext requestContext = new ServletRequestContext(
            request);
        if (FileUpload.isMultipartContent(requestContext)) {
          DiskFileItemFactory factory = new DiskFileItemFactory();
          factory.setRepository(new File(request
              .getRealPath("/upfile/") + "/"));
          ServletFileUpload upload = new ServletFileUpload(factory);
          upload.setSizeMax(100 * 1024 * 1024);
          List items = new ArrayList();
          items = upload.parseRequest(request);
          FileItem fileItem = (FileItem) items.get(0);
          if (fileItem.getName() != null && fileItem.getSize() != 0) {
            if (fileItem.getName() != null
                && fileItem.getSize() != 0) {
              File fullFile = new File(fileItem.getName());
              filename = Info.generalFileName(fullFile.getName());
              File newFile = new File(
                  request.getRealPath("/upfile/") + "/"
                      + filename);
              try {
                fileItem.write(newFile);
              } catch (Exception e) {
                e.printStackTrace();
              }
            } else {
            }
          }
        }
        go("/js/uploadimg5.jsp?filename=" + filename, request, response);
      } catch (Exception e1) {
        e1.printStackTrace();
      }
    }
    dao.close();
    out.flush();
    out.close();
  }
  public void init() throws ServletException {
  }
}
相关文章
|
3天前
|
Java
学院管理系统【JSP+Servlet+JavaBean】(Java课设)
学院管理系统【JSP+Servlet+JavaBean】(Java课设)
20 3
学院管理系统【JSP+Servlet+JavaBean】(Java课设)
|
3天前
|
Java
人事管理系统【JSP+Servlet+JavaBean】(Java课设)
人事管理系统【JSP+Servlet+JavaBean】(Java课设)
21 0
|
3天前
银行营业网点管理系统——修改的页面(updateBreaches.jsp)
银行营业网点管理系统——修改的页面(updateBreaches.jsp)
18 2
|
3天前
|
Java
学校教师管理系统【JSP+Servlet+JavaBean】(Java课设)
学校教师管理系统【JSP+Servlet+JavaBean】(Java课设)
17 2
|
3天前
|
Java
学校人员管理系统【JSP+Servlet+JavaBean】(Java课设)
学校人员管理系统【JSP+Servlet+JavaBean】(Java课设)
13 2
|
3天前
|
Java
个人信息管理系统【JSP+Servlet+JavaBean】(Java课设)
个人信息管理系统【JSP+Servlet+JavaBean】(Java课设)
10 0
|
3天前
|
Java 关系型数据库 MySQL
基于JSP的教师管理系统
基于JSP的教师管理系统
10 1
|
3天前
|
Java
奶茶管理系统【JSP+Servlet+JavaBean】(Java课设)
奶茶管理系统【JSP+Servlet+JavaBean】(Java课设)
12 1
|
3天前
|
Java
酒店客房预订管理系统【JSP+Servlet+JavaBean】(Java课设)
酒店客房预订管理系统【JSP+Servlet+JavaBean】(Java课设)
12 0
|
3天前
|
Java
大学生日记管理系统【JSP+Servlet+JavaBean】(Java课设)
大学生日记管理系统【JSP+Servlet+JavaBean】(Java课设)
16 0

相关课程

更多