基于javaweb校医院管理系统

软件环境:eclipse2020 tomcat9.0 mysql5.5, jdk1.8

开发技术:java,   jsp,  servlet  , bootstrap,ajax

获取方式:xystgl · master · 码盗_java_bishe / java系统 · GitCode

功能简介:

用户角色:

登录:手机号和密码登录。

个人信息管理:(查看、修改个人信息)

综合信息管理:查看医务人员信息、查看我的诊断记录、查看公告

医务人员

登录:工号登录

个人信息管理:(查看、修改个人信息)

用户管理:(查看所有的用户信息、增删改查)

药品管理:增删改查(药品信息)

患者诊断管理:增删改查用户的就诊信息。(查看只能查看自己的,管理员可以查看所有的诊断记录,用户也只能查看自己的。

公告栏:查看公告

管理员:

登录:用户名登录

用户管理:增删改查

医务人员管理:增删改查

公告管理:增删改查

个人信息管理:查看、修改自己的信息。

统计管理:统计已经诊断过的人。

相关截图

登录页面:

 首页

 用户页面

 新增用户页面

 医务人员页面

 新增医务人员页面

 公告信息页面

 新增公告页面

 药品信息页面

 新增药品信息

 用户诊断页面

 数据统计页面

 项目结构图:

 数据库结构图

 相关代码

登录代码

    $("#login").click(function(){
	    	var username = $("#username").val();
	    	var password = $("#password").val();
	    	if(username == null || username == ""){
	    		alert("请填写用户名");
	    		return false;
	    	}if(password == null || password == ""){
	    		alert("请填写密码");
	    		return false;
	    	}
			//执行添加的操作ajax
			$.ajax({
				cache:true,
				type:"post",
				url:"LoginServlet?action=login",
				data:$("#saveForm").serialize(),
				async:false,
				success:function(e){
					if(e == 'ok'){
						alert("登录成功");
						 window.parent.location.href="LoginServlet?action=toMain";
					}else if(e == "user"){
                        alert("登录成功");
                        window.parent.location.href="IndexServlet?action=toIndex";
                    }else{
						alert("登录失败,账号或密码错误");
					}
				}
			})
		});
 /**
     * 登录
     * @param request
     * @param response
     * @throws ServletException
     * @throws IOException
     */
    public void login(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {//处理登录
        //清空登录记录
        request.getSession().invalidate();
        //进行登录操作
        String username = request.getParameter("username");
        String password = request.getParameter("password");
        String type = request.getParameter("type");
        Admin admin = new Admin();
        User user = new User();
        if(type != null && type.equals("1")){
            Admin admin1 = userService.selectAdmin(username,password);
            if(admin1 != null){
                response.getWriter().print("ok");
                request.getSession().setAttribute("admin",admin1);
                request.getSession().setAttribute("flag",1);
            }else{
                response.getWriter().print("error");
            }
        }else if(type != null && type.equals("2")){
            User user1 = userService.selectUser(username,password);
            if(user1 != null){
                response.getWriter().print("ok");
                request.getSession().setAttribute("user",user1);
                request.getSession().setAttribute("flag",2);
            }else{
                response.getWriter().print("error");
            }
        }else if(type != null && type.equals("3")){
            Doctor doctor = userService.selectDoctor(username,password);
            if(doctor != null){
                response.getWriter().print("ok");
                request.getSession().setAttribute("doctor",doctor);
                request.getSession().setAttribute("flag",3);
            }else{
                response.getWriter().print("error");
            }
        }else{
            response.getWriter().print("error");
        }

    }

用户相关代码

/**
	 * 用户列表
	 * 
	 * @param request
	 * @param response
	 * @throws ServletException
	 * @throws IOException
	 */
	protected void UserList(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {// 跳转到社长列表界面
		String p = request.getParameter("p");// 接收页码
		String key = request.getParameter("key");// 接收页码
		System.out.print(p);
		int pageSize = 6;// 每页显示5条
		int pageNum = 1; // 默认第一页
		if (p != null) {
			pageNum = Integer.parseInt(p);
		}
		Map map = new HashMap<>();
		map.put("key", key);
		// 调用分页查询
		List<User> list = userService.getUserPage(pageNum, pageSize, map);
		// 携带参数到页面
		request.setAttribute("list", list); // 绑定参数
		int nums = userService.queryUserCount(map); // 查询总数
		// 计算总页数
		int totalPage = (nums % pageSize == 0) ? (nums / pageSize) : (nums / pageSize + 1);
		request.setAttribute("cp", pageNum); // 当前页
		request.setAttribute("tp", totalPage); // 总页数
		request.setAttribute("key", key); // 总页数
		// 条件 值1:值2
		request.getRequestDispatcher("/WEB-INF/view/user/list.jsp").forward(request, response); // 页面转发
	}

	/**
	 * 添加用户
	 * 
	 * @param request
	 * @param response
	 * @throws ServletException
	 * @throws IOException
	 */
	protected void addUser(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {// 处理注册
		String message = "no";
		User user = fileUpload(request);
		User users = userService.selectUserByPhone(user.getPhone());
		if (users == null) {
			userService.addUser(user);
			message = "yes";
		} else {
			message = "isExist";
		}
		response.getWriter().print(message);

	}
/**
	 * 上传文件工具方法
	 * 
	 * @param request
	 * @return
	 */
	private User fileUpload(HttpServletRequest request) {
		User user = new User();
		try {
			DiskFileItemFactory factory = new DiskFileItemFactory();
			ServletFileUpload upload = new ServletFileUpload(factory);
			List<FileItem> list = upload.parseRequest(request);
			for (FileItem item : list) {
				if (item.isFormField()) {
					String name = item.getFieldName();
					String value = item.getString("UTF-8");
					BeanUtils.setProperty(user, name, value);
				} else {
					String filename = item.getName();
					String savefilename = makeFileName(filename);
					String savepath = "D:\\upload\\";
					InputStream in = item.getInputStream();
					FileOutputStream out = new FileOutputStream(savepath + "\\" + savefilename);
					int len = 0;
					byte buffer[] = new byte[1024];
					while ((len = in.read(buffer)) > 0) {
						out.write(buffer, 0, len);
					}
					in.close();
					out.close();
					item.delete();
					user.setPhoto(savefilename);
				}
			}
			return user;
		} catch (Exception e) {
			e.printStackTrace();
			throw new RuntimeException(e);
		}
	}

	/**
	 * 修改用户
	 * 
	 * @param request
	 * @param response
	 * @throws ServletException
	 * @throws IOException
	 */
	protected void updateUser(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {// 查询个人信息
		User user1 = (User)request.getSession().getAttribute("user");
		String message = "no";
		User user = WebUtils.toBean(request.getParameterMap(), User.class);
		userService.updateUser(user);
		if(user1 !=null) {
			request.getSession().setAttribute("user", userService.findUserById(user.getId().toString()));
		}
		message = "yes";
		response.getWriter().print(message);

	}
@Override
	public List<User> getUserPage(int pageNum, int pageSize, Map map) {
		String sql = "select * from User where 1 = 1 ";
		if (map.get("key") != null && !map.get("key").toString().equals("")) {
			sql += " and realname like  '%" + map.get("key").toString() + "%'";
		}
		sql += " limit ?,? ";
		int startNo = (pageNum - 1) * pageSize;
		List<User> list = null;
		try {
			list = runner.query(sql, new BeanListHandler<User>(User.class), new Object[] { startNo, pageSize });// 添加实体类的适配器进行类的反射
			return list;
		} catch (SQLException e) {// 捕获异常
			throw new RuntimeException(e);// 抛出运行异常
		}
	}

	@Override
	public int queryUserCount(Map map) {
		String sql = "select count(*) from User where 1 = 1 ";
		if (map.get("key") != null && !map.get("key").toString().equals("")) {
			sql += " and realname like  '%" + map.get("key").toString() + "%'";
		}
		try {
			Long count = (Long) runner.query(sql, new ScalarHandler());
			// 将long的类型转成int类型
			return count.intValue();
		} catch (SQLException e) {
			e.printStackTrace();
			throw new RuntimeException(e);
		}
	}

其他模块代码都类似!!!

喜欢的可以点赞加关注支持一下,谢谢!!!!

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

码盗_java_bishe

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值