基于javaweb的JSP+Servlet医院预约挂号系统(java+jdbc+jsp+mysql+ajax)

运行环境

Java≥8、MySQL≥5.7、Tomcat≥8

开发工具

eclipse/idea/myeclipse/sts等均可配置运行

适用

课程设计,大作业,毕业设计,项目练习,学习演示等

功能说明

080023092402

100023092402

110023092402

120023092402

130023092402

基于javaweb的JSP+Servlet医院预约挂号系统(java+jdbc+jsp+mysql+ajax)

一、项目简述

功能: 用户分为患者,医生,管理员,患者可进行注册选择医生 挂号,选择日期,选择号源,医生可进行接诊,管理员可 对用户,医生信息的维护等等功能。

二、项目运行

环境配置: Jdk1.8 + Tomcat8.5 + mysql + Eclispe (IntelliJ IDEA,Eclispe,MyEclispe,Sts 都支持)

项目技术: Jdbc+ Servlert + Jsp + css + JavaScript + JQuery + Ajax + Fileupload等等。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
        request.setAttribute("list",list);
request.getRequestDispatcher("/doctor/patientList.jsp").forward(request,response);
}
}
package com.qst.servlet.patient;



@WebServlet(urlPatterns = "/orderList")
public class OrderList extends HttpServlet {
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

doGet(request,response);
}

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
request.setCharacterEncoding("UTF-8");

Patient patient= (Patient) request.getSession().getAttribute("patient");
// RecodeDao recodeDao = new RecodeDao();
// DoctorDao doctorDao=new DoctorDao();
// String where="where pid=? order by ordertime desc";
// String where1="where pid=? order by ordertime desc";
// List<Recode> Recodelist = recodeDao.query(where, new Object[]{patient.getId()});
// List<Doctor> DoctorList= doctorDao.query(where,)
// // List<HashMap<String, String>> list = recodeDao.orderList(patient.getId());
// request.setAttribute("list",list);

RecodeDao recodeDao=new RecodeDao();
List<HashMap<String, String>> list = null;
try {
list = recodeDao.orderList1(patient.getId());
} catch (SQLException e) {
e.printStackTrace();
}
request.setAttribute("list",list);
request.getRequestDispatcher("orderList.jsp").forward(request,response);
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34


@WebServlet(urlPatterns = "/doctorManage")
public class DoctorManage extends HttpServlet {
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

doGet(request,response);
}

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

String office = Util.nullToString(request.getParameter("office"));
String name = Util.nullToString(request.getParameter("doctor"));
String action = Util.nullToString(request.getParameter("action"));
if("add".equals(action)){
String message="增加医生失败!";
DoctorDao doctorDao = new DoctorDao();
System.out.println(request.getParameter("account"));
List<Doctor> doctors = doctorDao.query("where account=? ",new Object[]{Util.nullToString(request.getParameter("account"))});
if(doctors.size()==0){
Doctor doctor=new Doctor();
doctor.setAccount(request.getParameter("account"));
doctor.setPassword(request.getParameter("password"));
doctor.setDname(request.getParameter("name"));
doctor.setFee(request.getParameter("fee"));
doctor.setGender(request.getParameter("gender"));
doctor.setAge(request.getParameter("age"));
doctor.setOffice(request.getParameter("office1"));
// doctor.setRoom(req.getParameter("room"));
doctor.setCareer(request.getParameter("career"));
doctor.setDescription(request.getParameter("description"));
doctor.setPicpath(request.getContextPath()https://yms-1257401191.cos.ap-nanjing.myqcloud.com/docpic/default.jpg");
if(doctorDao.insert(doctor)){
//添加医生
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
                        req.getRequestDispatcher("ShowWorkday?did=" + did).forward(req, resp);
}
} else {
req.getSession().setAttribute("message", "号源已被预约!");
req.getRequestDispatcher("ShowWorkday?did=" + did).forward(req, resp);
}
break;
}

}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {


}
}
package com.qst.servlet;



@WebServlet(urlPatterns= "/modifyPwd")
public class ModifyPwd extends HttpServlet {
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

doGet(request,response);
}

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

String action = Util.nullToString(request.getParameter("action"));
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41

doGet(request,response);
}

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
request.setCharacterEncoding("UTF-8");

Patient patient= (Patient) request.getSession().getAttribute("patient");
// RecodeDao recodeDao = new RecodeDao();
// DoctorDao doctorDao=new DoctorDao();
// String where="where pid=? order by ordertime desc";
// String where1="where pid=? order by ordertime desc";
// List<Recode> Recodelist = recodeDao.query(where, new Object[]{patient.getId()});
// List<Doctor> DoctorList= doctorDao.query(where,)
// // List<HashMap<String, String>> list = recodeDao.orderList(patient.getId());
// request.setAttribute("list",list);

RecodeDao recodeDao=new RecodeDao();
List<HashMap<String, String>> list = null;
try {
list = recodeDao.orderList1(patient.getId());
} catch (SQLException e) {
e.printStackTrace();
}
request.setAttribute("list",list);
request.getRequestDispatcher("orderList.jsp").forward(request,response);

}
}
package com.qst.filter;


@WebFilter("/*")
public class MyFilter implements Filter {
private ArrayList<String> patient;
@Override
public void init(FilterConfig filterConfig) throws ServletException {
patient=new ArrayList<>();
patient.add("/order");
patient.add("/orderList");
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35


@WebServlet(urlPatterns = "/doctorManage")
public class DoctorManage extends HttpServlet {
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

doGet(request,response);
}

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

String office = Util.nullToString(request.getParameter("office"));
String name = Util.nullToString(request.getParameter("doctor"));
String action = Util.nullToString(request.getParameter("action"));
if("add".equals(action)){
String message="增加医生失败!";
DoctorDao doctorDao = new DoctorDao();
System.out.println(request.getParameter("account"));
List<Doctor> doctors = doctorDao.query("where account=? ",new Object[]{Util.nullToString(request.getParameter("account"))});
if(doctors.size()==0){
Doctor doctor=new Doctor();
doctor.setAccount(request.getParameter("account"));
doctor.setPassword(request.getParameter("password"));
doctor.setDname(request.getParameter("name"));
doctor.setFee(request.getParameter("fee"));
doctor.setGender(request.getParameter("gender"));
doctor.setAge(request.getParameter("age"));
doctor.setOffice(request.getParameter("office1"));
// doctor.setRoom(req.getParameter("room"));
doctor.setCareer(request.getParameter("career"));
doctor.setDescription(request.getParameter("description"));
doctor.setPicpath(request.getContextPath()https://yms-1257401191.cos.ap-nanjing.myqcloud.com/docpic/default.jpg");
if(doctorDao.insert(doctor)){
//添加医生
message="添加"+request.getParameter("name")+"医生成功!";
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
case "confirm"://完成预约
NumSource numSources = (NumSource) request.getSession().getAttribute("numSource");
Recode recode=new Recode();
recode.setPid(patient.getId());
recode.setDid(did);
recode.setWid(wid);
recode.setSerialnumber(numSources.getSerialnumber());
recode.setRid(null);
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
// String OderTime = sdf.format(LocalDateTime.now());
SimpleDateFormat sdf1= new SimpleDateFormat("HH:mm:ss");
SimpleDateFormat sdf2= new SimpleDateFormat("yyy-MM-dd HH:mm:ss");
Date d=new Date();
Timestamp tm=new Timestamp(d.getTime());
recode.setOrdertime(tm);
try {
recode.setVisitdate(sdf.parse(numSources.getVisitdate()));
} catch (ParseException e) {
e.printStackTrace();
}
recode.setVisittime(numSources.getVisittime());
recode.setState("成功");
String where1 = "where wid=? and visitdate=? and visittime=? and state='成功'";

System.out.println(numSources.getState());
System.out.println(wid);
List<Recode> list = recodeDao.query(where1, new Object[]{numSources.getState(),numSources.getVisitdate(),numSources.getVisittime()});
if (list.size() == 0) {
//new Recode("",patient.getId(),numSource.getState(),did,numSource)
if (recodeDao.order(recode)) {
WorkDayDao workDayDao=new WorkDayDao();
String where2 =" where wid=? ";
List<WorkDay> workDay= workDayDao.query(where2,new Object[]{wid});
String where3="set nsnum=? where wid=?";
String where4="set nsnum=? and state=? where wid=?";
int num=workDay.get(0).getNsnum()-1;
if(num!=0)
{
workDayDao.update(where3,new Object[]{num,wid});
}
else
{
workDayDao.update(where4,new Object[]{num,"停诊",wid});
}
request.getSession().setAttribute("message", "预约成功!");
request.getRequestDispatcher("orderList").forward(request, response);
} else {
req.getSession().setAttribute("message", "预约失败!");
req.getRequestDispatcher("ShowWorkday?did=" + did).forward(req, resp);
}
} else {


项目链接:
https://javayms.github.io?id=331422272105200bd
https://javayms.pages.dev?id=331422272105200bd