SSM项目-基于Java+Mysql的大学生奖助学金发放管理系统(附论文+源码)

大家好!我是职场程序猿,感谢您阅读本文,欢迎一键三连哦。

💞当前专栏:Java毕业设计

精彩专栏推荐👇🏻👇🏻👇🏻

🎀 安卓app毕业设计
🌎微信小程序毕业设计

演示视频

ssm112大学生奖助学金发放管理系统演示

源码下载地址:

https://download.csdn.net/download/m0_46388260/88010587

一、项目简介

本系统使用JSP语言中的SSM框架和MySQL数据库开发,为各位老师、学生提供了奖助学金信息查询、申请和管理等多种功能,让学生和老师们不需要再通过打电话和发消息就可以进行奖助学金信息的查看,在极大地满足学生们进行了解各类奖助学金的需求的同时,还可以让每位辅导员老师可以更好地管理自己的学生的奖助学金申请。

二、系统设计

2.1软件功能模块设计

本奖助学金信息管理主要包括四个角色,分别为学生用户、辅导员用户以及教务处用户,系统的基本功能模块图如图 5-1 所示:在这里插入图片描述

2.2数据库设计

(1)学生用户信息表,用户注册之后的个人信息会存储在此表中。这个表中的用户ID应设置为主键,除此之外还要有用户名、密码、注册时间等列。在这里插入图片描述
(2)辅导员老师信息表,用来保存本系统内辅导员老师的详细信息,具体的表机构如表 5-2 所示:在这里插入图片描述
(3)奖助学金发放信息表,这张表主要存储系统中的奖助学金的发放信息,当辅导员老师用户或学生用户对奖助学金信息进行查看时就需要对此表进行查询。此外,奖助学金发放信息表中应设置一列来反映当前发放的状态,如未发放、发放中和已发放等,具体的表结构如表 5-3 所示:在这里插入图片描述
(4)奖助学金公示表,用于存放教务处编辑和添加在本系统页面中的奖助学金公示的信息,具体表结构如表 5-4 所示:在这里插入图片描述

三、系统项目部分截图

3.16.1学生用户

主界面展示

不管是学生用户还是拥有管理权限的管理员用户都需要先进行登录之后才可以使用系统内的功能,如果不进行登录只能进行一些网页浏览的基本功能,如果想要进行奖助学金申请、修改个人信息等功能是不被允许的,用户登录后就可以进入前台主页面。系统中各用户在输入正确的域名后即可访问本系统,输入自己的账户密码即可进入本系统。本系统的主页面分为左右结构,左边为该用户权限下的所有功能的菜单,而右侧为具体的数据显示面板。下图为本系统的前台首页面展示:在这里插入图片描述

3.2奖助学金申请功能

进入主页面之后可以点击导航栏中的奖助学金管理链接,点击之后可以查看站内所有的辅导员老师的列表,在列表中可以选择负责自己班级奖助学金工作的辅导员老师进行添加申请的操作。在添加奖助学金申请的界面中,学生需要填写申请等级、申请原因及申请时间等信息,在申请完成之后即可在奖助学金申请列表中看到自己的申请信息,此功能具体的实现效果如下图所示。在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3.3用户注册登录功能

在没有进行注册和登录之前,用户无法使用本系统的所有功能。需要注意的是,本系统分为注册用户、辅导员老师用户、教务处用户和管理员用户四个角色,在登录时要通过下拉框进行选择。注册页面的具体效果如下:在这里插入图片描述

3.4奖助学金评定界面

学生处于登录的情况下可以点击菜单栏中的奖助学金评定链接进入此功能,此界面下可以查看所有的奖助学金评定的信息,点击最右侧的详细按钮可以进入详情信息界面,在详情信息下学生用户可以查看具体的公示信息,此界面具体效果如下:在这里插入图片描述
在这里插入图片描述

辅导员老师用户

奖助学金管理界面

辅导员用户可以通过此功能查看所有自己班级中学生的奖助学金申请情况,可以看到每条奖助学金申请的申请编号、申请登记和学生信息等列,在最右侧还可以进行删除及修改等操作,以下是辅导员老师奖助学金管理界面的效果图:
在这里插入图片描述

经济困难评定管理

在整个奖助学金管理的工作过程中,对于经济困难同学的认定是非常重要的,辅导员老师可以查看学生信息列表,在最后一列中可以将某位学生添加为经济困难学生。添加完成后,在经济困难评定的数据列表中可以查看具体的学生信息及评定的等级,以下是辅导员老师对经济困难学生评定管理的界面:在这里插入图片描述
在这里插入图片描述

管理员用户

在登录时如果选择了管理员的角色进行登录并且用户名和密码都可以通过验证的话,管理员就可以进入后台管理界面。在后台的布局中,左侧为折叠起来的菜单栏,后台管理的模块分为系统学生用户管理、辅导员老师信息管理、教务处用户管理等,右侧为对应的具体模块的信息展示。页面具体效果如下:
在这里插入图片描述

辅导员老师信息管理

辅导员老师用户信息管理与学生用户的管理区别不大,本文以辅导员老师信息管理为例进行讲解。管理员进入此界面后可以看到所有的辅导员老师用户的数据列表,在列表中可以清楚的看到辅导员老师的工号、姓名及照片等个人信息,在数据的最后放还可以对某一个辅导员老师的数据进行编辑和删除,如果数据太多找不到的话可以通过上方的工号或姓名进行查询。以下是辅导员老师信息管理功能的界面:
在这里插入图片描述

三、论文目录

1课题概述 1
1.1研究的背景及意义 1
1.2研究思路 1
1.3课题研究内容 2
2可行性分析 2
2.1.1技术可行性分析 2
2.1.2经济可行性分析 3
2.1.3操作可行性分析 3
3相关技术简要概述 3
3.1B/S架构的介绍 3
3.2JSP技术的介绍 3
3.3HTML的介绍 4
3.4MYSQL数据库的介绍 4
4需求分析 4
4.1功能需求分析 4
4.2性能需求分析 6
5系统设计 6
5.1系统概要设计 6
5.2数据库设计 7
6系统实现 9
6.1 学生用户 10
6.2 辅导员用户 11
6.3 管理员用户 11
7系统测试 18
7.1系统测试目的与意义 18
7.2测试用例与测试结果 18
8 结论 21
参考文献 23
致 谢 24

四、部分核心代码

4.1 用户部分

package com.controller;

import java.io.File;
import java.io.IOException;

import java.sql.Timestamp;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.io.PrintWriter;

import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.multipart.MultipartFile;

import com.entity.Allusers;
//import com.chengxusheji.po.News;
import com.server.AllusersServer;
import com.util.PageBean;
import net.sf.json.JSONObject;

@Controller
public class AllusersController {
	@Resource
	private AllusersServer allusersService;


//	
   @RequestMapping("showAllusers.do")
   public String showAllusers(int id,ModelMap map,HttpSession session){
	 /*  Map<String,Object> bmap=new HashMap<String,Object>();
	   bmap.put("uid", id);*/
	  // map.put("blist", allusersService.getAll(bmap));
	   map.put("allusers", allusersService.getById(id));
	   return "read";
   }
   
	@RequestMapping("addAllusers.do")
	public String addAllusers(HttpServletRequest request,Allusers allusers,HttpSession session){
		Timestamp time=new Timestamp(System.currentTimeMillis());
		//Users u=(Users)session.getAttribute("user");
		/*if(u==null||u.equals("")){
			return "redirect:showIndex.do";
		}else{*/
			//bbs.setUid(u.getId());
			/*bbs.setPubtime(time.toString());
			bbs.setIsdel("1");*/
		    allusers.setAddtime(time.toString().substring(0, 19));
			allusersService.add(allusers);
			return "redirect:allusersList.do";
		/*}*/
		
		
	}
 
//	处理编辑
	@RequestMapping("doUpdateAllusers.do")
	public String doUpdateAllusers(int id,ModelMap map,Allusers allusers){
		allusers=allusersService.getById(id);
		map.put("allusers", allusers);
		return "allusers_updt";
	}
//	
	@RequestMapping("updateAllusers.do")
	public String updateAllusers(int id,ModelMap map,Allusers allusers){
		allusersService.update(allusers);
		return "redirect:allusersList.do";
	}
//	所有List
//	@RequestMapping("allusersList.do")
//	public String allusersList(ModelMap map,HttpSession session){
//		map.put("list", allusersService.getAll(null));
//		map.put("clist", allusersService.getAll(null));
//		return "allusers";
//	}
//	分页查询
	@RequestMapping("allusersList.do")
	public String goodList(@RequestParam(value="page",required=false)String page,
			ModelMap map,HttpSession session,Allusers allusers, String username, String pwd, String cx){
		/*if(session.getAttribute("user")==null){
			return "login";
		}*/
		if(page==null||page.equals("")){
			page="1";
		}
		PageBean pageBean=new PageBean(Integer.parseInt(page), 15);
		Map<String, Object> pmap=new HashMap<String,Object>();
		pmap.put("pageno", pageBean.getStart());
		pmap.put("pageSize", 15);
		Map<String, Object> bmap=new HashMap<String, Object>();
		Map<String,Object> cmap=new HashMap<String,Object>();
		/*pmap.put("uid",  ((Users)session.getAttribute("user")).getId());
		bmap.put("uid", ((Users)session.getAttribute("user")).getId());*/
		if(username==null||username.equals("")){pmap.put("username", null);cmap.put("username", null);}else{pmap.put("username", username);cmap.put("username", username);}
		if(pwd==null||pwd.equals("")){pmap.put("pwd", null);cmap.put("pwd", null);}else{pmap.put("pwd", pwd);cmap.put("pwd", pwd);}
		if(cx==null||cx.equals("")){pmap.put("cx", null);cmap.put("cx", null);}else{pmap.put("cx", cx);cmap.put("cx", cx);}
		
		int total=allusersService.getCount(bmap);
		pageBean.setTotal(total);
		List<Allusers> list=allusersService.getByPage(pmap);
		map.put("page", pageBean);
		map.put("list", list);
		session.setAttribute("p", 1);
		return "allusers_list";
	}
//   分页模糊查询
	@RequestMapping("vagueAllusersList.do")
	public String vagueAllusersList(@RequestParam(value="page",required=false)String page,
			ModelMap map,HttpSession session){
		if(page==null||page.equals("")){
			page="1";
		}
		PageBean pageBean=new PageBean(Integer.parseInt(page),PageBean.PAGESIZE);
		Map<String, Object> pmap=new HashMap<String,Object>();
		pmap.put("pageno", pageBean.getStart());
		pmap.put("pageSize", pageBean.getPageSize());
		Map<String, Object> bmap=new HashMap<String, Object>();
		/*pmap.put("uid",  ((Users)session.getAttribute("user")).getId());
		bmap.put("uid",  ((Users)session.getAttribute("user")).getId());*/
		int total=allusersService.getCount(bmap);
		pageBean.setTotal(total);
		List<Allusers> list=allusersService.getByPage(pmap);
		map.put("page", pageBean);
		map.put("list", list);
		session.setAttribute("p", 2);
		return "queryallusers";
	}
	@RequestMapping("deleteAllusers.do")
	public String deleteAllusers(int id){
		allusersService.delete(id);
		return "redirect:allusersList.do";
	}
	
	@RequestMapping("quchongAllusers.do")
	public void quchongAllusers(Allusers allusers,HttpServletResponse response){
		   Map<String,Object> map=new HashMap<String,Object>();
		   map.put("username", allusers.getUsername());
		   System.out.println("username==="+allusers.getUsername());
		   System.out.println("username222==="+allusersService.quchongAllusers(map));
		   JSONObject obj=new JSONObject();
		   if(allusersService.quchongAllusers(map)!=null){
				 obj.put("info", "ng");
			   }else{
				   obj.put("info", "username可以用!");
				  
			   }
		   response.setContentType("text/html;charset=utf-8");
		   PrintWriter out=null;
		   try {
			out=response.getWriter();
			out.print(obj);
			out.flush();
		} catch (IOException e) {
			e.printStackTrace();
		}finally{
			out.close();
		}
	}
	
	@RequestMapping("Alluserslogin.do")
	public String checkAllusersLogin(Allusers allusers, HttpSession session) {
		Map<String,Object> u=new HashMap<String,Object>();
		System.out.println("name===" + allusers.getUsername());
		u.put("username",allusers.getUsername());
		//u.put("utype", "用户");
		//Md5.MD5HexEncode(user.getPassword())
		u.put("pwd",allusers.getPwd());
		allusers = allusersService.allusersLogin(u);
		if (allusers != null) {
			session.setAttribute("username", allusers);
			System.out.println("username=" + allusers);
			session.removeAttribute("suc");
			return "redirect:index.do";
		} else {
			System.out.println("usernafwfwwme=");
			session.setAttribute("suc", "登录失败!用户名或密码错误!");
			return "login";
		}

	}
}

获取源码或论文

如需对应的论文或源码,也可以下方微信联系我

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值