ideaSSM 学员信息管理系统bootstrap开发mysql数据库web结构java编程计算机网页源码maven项目

一、源码特点

idea 开发 SSM 学员信息管理系统是一套完善的信息管理系统,结合SSM框架和bootstrap完成本系统,对理解JSP java编程开发语言有帮助系统采用SSM框架(MVC模式开发),系统具有完整的源代码和数据库,系统主要采用B/S模式开发。

前段主要技术 bootstrap.css jquery

后端主要技术 SpringMVC spring mybatis

数据库 mysql

开发工具 IDEA JDK1.8 TOMCAT 8.5

ssm 学员信息管理系统1

二、功能介绍

(1)管理员管理:对管理员信息进行添加、删除、修改和查看

(2)教师管理:对教师信息进行添加、删除、修改和查看

(3)班级管理:对班级信息进行添加、删除、修改和查看

(4)学生管理:对学生信息进行添加、删除、修改和查看

(5)课程管理:对课程信息进行添加、删除、修改和查看

(6)课程表管理:对课程表信息进行添加、删除、修改和查看

(7)选课管理:对选课信息进行添加、删除、修改和查看

(8)成绩管理:对成绩信息进行添加、删除、修改和查看 导入

(9)个人信息修改 业主注册、用户登录

数据库设计

|----|-------|---------|----|----|-------|
| #### [表gly] 管理员列属性表格 ||||||
| 序号 | 字段名称 | 数据类型 | 长度 | 主键 | 描述 |
| 1 | glyid | INTEGER | 11 | 是 | 管理员编号 |
| 2 | yhm | VARCHAR | 40 | 否 | 用户名 |
| 3 | mm | VARCHAR | 40 | 否 | 密码 |
| 4 | xm | VARCHAR | 40 | 否 | 姓名 |

|----|------|---------|----|----|------|
| #### [表jiaoshi] 教师列属性表格 ||||||
| 序号 | 字段名称 | 数据类型 | 长度 | 主键 | 描述 |
| 1 | jsid | INTEGER | 11 | 是 | 教师编号 |
| 2 | yhm | VARCHAR | 40 | 否 | 用户名 |
| 3 | mm | VARCHAR | 40 | 否 | 密码 |
| 4 | xm | VARCHAR | 40 | 否 | 姓名 |
| 5 | lxdh | VARCHAR | 40 | 否 | 联系电话 |
| 6 | lxdz | VARCHAR | 40 | 否 | 联系地址 |
| 7 | xy | VARCHAR | 40 | 否 | 学院 |

|----|------|---------|----|----|------|
| #### [表banji] 班级列属性表格 ||||||
| 序号 | 字段名称 | 数据类型 | 长度 | 主键 | 描述 |
| 1 | bjid | INTEGER | 11 | 是 | 班级编号 |
| 2 | bj | VARCHAR | 40 | 否 | 班级 |

|----|------|---------|----|----|------|
| #### [表xuesheng] 学生列属性表格 ||||||
| 序号 | 字段名称 | 数据类型 | 长度 | 主键 | 描述 |
| 1 | xsid | INTEGER | 11 | 是 | 学生编号 |
| 2 | yhm | VARCHAR | 40 | 否 | 用户名 |
| 3 | mm | VARCHAR | 40 | 否 | 密码 |
| 4 | xm | VARCHAR | 40 | 否 | 姓名 |
| 5 | zy | VARCHAR | 40 | 否 | 专业 |
| 6 | xy | VARCHAR | 40 | 否 | 学院 |
| 7 | nl | VARCHAR | 40 | 否 | 年龄 |
| 8 | dh | VARCHAR | 40 | 否 | 电话 |
| 9 | bj | VARCHAR | 40 | 否 | 班级 |

|----|------|---------|----|----|------|
| #### [表kecheng] 课程列属性表格 ||||||
| 序号 | 字段名称 | 数据类型 | 长度 | 主键 | 描述 |
| 1 | kcid | INTEGER | 11 | 是 | 课程编号 |
| 2 | kcmc | VARCHAR | 40 | 否 | 课程名称 |
| 3 | js | VARCHAR | 40 | 否 | 介绍 |
| 4 | fbjs | VARCHAR | 40 | 否 | 发布教师 |

代码设计

复制代码
    @RequestMapping(value="/add")
    public String add(chengji bean, HttpServletRequest request){
        /**
	成绩添加处理方法
	**/
        Map<String,Object> map= new HashMap<String,Object>();//初始变量

	

		String cjid=(String)request.getParameter("cjid");//成绩编号

		String kc=(String)request.getParameter("kc");//课程

		String xs=(String)request.getParameter("xs");//学生

		String djsj=(String)request.getParameter("djsj");//登记时间

		String lx=(String)request.getParameter("lx");//类型

		String cj=(String)request.getParameter("cj");//成绩

		String lb=(String)request.getParameter("lb");//类别

        if(Integer.parseInt(cj)>=60){
        	lb="及格";
		}else{
        	lb="不及格";
		}
		DBO db=new DBO();
		ResultSet rs=null;
		String sql="";
		int num=0;
		int a=0;
		try{
			sql="select count(1) as num from xuanke where kc='"+kc+"' and xs='"+xs+"'";
			rs=db.query(sql);
			if(rs.next()){
				num=rs.getInt("num");

			}
			if(num>0){

				if(lb.equals("期末")){
					sql="select count(1) as num from chengji where kc='"+kc+"' and xs='"+xs+"' ";
					rs=db.query(sql);
					if(rs.next()){

						a=rs.getInt("num");
					}
					if(a>0){
						request.setAttribute("msg", "<script>alert('添加失败、期末成绩只能添加一次');</script>");//操作提示
					}else{
						chengjidao.add(bean);//调用添加方法
						System.out.println("add");
						request.setAttribute("msg", "<script>alert('添加成功');</script>");//操作提示
					}


				}else{
					chengjidao.add(bean);//调用添加方法
					System.out.println("add");
					request.setAttribute("msg", "<script>alert('添加成功');</script>");//操作提示
				}



			}else{
				request.setAttribute("msg", "<script>alert('添加失败、抱歉该生没选该门课');</script>");//操作提示
			}

		}catch(Exception e){
			e.printStackTrace();
		}finally{
			db.close();
		}



        return "chengji/chengjiadd";
    }


    /**删除 成绩
     *
     */
    @RequestMapping(value="/del")
    public String  del(HttpServletRequest request,Map<String,Object> map){
	
        //	Map<String,Object> map= new HashMap<String,Object>();//初始化对象
        String a=(String)request.getParameter("keyid");//request 方式获得主键id
        int id=Integer.parseInt(a);
        request.setAttribute("msg", "<script>alert('删除成功');</script>");
        chengjidao.delete(id);//调用 删除方法
        return listpage(map,request);
    }

	/**
	 * 查询chengji信息 返回list结果 前台获取
	 */
	@RequestMapping(value="/list")
	public String list(Map<String,Object> map,HttpServletRequest request){
		List<Map> list= new ArrayList<Map>();//初始化对象
		Map  map1= new HashMap();


		String cjid=(String)request.getParameter("cjid");//成绩编号
		if(cjid!=null&&!cjid.equals("")){
			map1.put("cjid",cjid);//成绩编号
		}
		String kc=(String)request.getParameter("kc");//课程
		if(kc!=null&&!kc.equals("")){
			map1.put("kc",kc);//课程
		}
		String xs=(String)request.getParameter("xs");//学生
		if(request.getSession().getAttribute("yhm")!=null){
			map1.put("xs",request.getSession().getAttribute("yhm"));//学生
		}
		String djsj=(String)request.getParameter("djsj");//登记时间
		if(djsj!=null&&!djsj.equals("")){
			map1.put("djsj",djsj);//登记时间
		}
		String lx=(String)request.getParameter("lx");//类型
		if(lx!=null&&!lx.equals("")){
			map1.put("lx",lx);//类型
		}
		String cj=(String)request.getParameter("cj");//成绩
		if(cj!=null&&!cj.equals("")){
			map1.put("cj",cj);//成绩
		}
		String lb=(String)request.getParameter("lb");//类别
		if(lb!=null&&!lb.equals("")){
			map1.put("lb",lb);//类别
		}

		list=chengjidao.getAll(map1);//传入 方法参数 返回gly结果集
		System.out.println("listsize="+list.size());

		map.put("list", list);//传递参数
		return "chengji/list";
	}

三、注意事项

1、管理员账号:admin密码:admin 数据库配置文件src\main\resources 下的 jdbc.properties 更改对应数据库连接配置

2、开发环境为IDEA开发,数据库为mysql,使用java语言开发。

3、数据库文件名是jspxyxx.sql 系统名称ssmxyxx

4、地址:login.jsp

四系统实现

代码下载

https://download.csdn.net/download/qq_41221322/89003611

需要源码 其他的服务 下方联系卡片↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓

相关推荐
Awbeci几秒前
微前端-解决MicroApp微前端内存泄露问题
前端
前端领航者3 分钟前
重学Vue3《Vue Watch 监听器深度指南:场景、技巧与底层优化原理剖析》
前端·vue.js
布列瑟农的星空6 分钟前
34岁老前端的一周学习总结(2025/8/15)
前端·后端
豆苗学前端19 分钟前
vue3+TypeScript 实现一个图片占位符生成器
前端·面试·github
neon120421 分钟前
Vue 3 父子组件通信核心机制详解:defineProps、defineEmits 与 defineExpose 完全指南
前端·javascript·vue.js·前端框架
卓码软件测评38 分钟前
网站测评-利用缓存机制实现XSS的分步测试方法
java·后端·安全·spring·可用性测试·软件需求
Juchecar38 分钟前
Vue3 开发环境搭建及循序渐进学习指南
前端·javascript
青鱼入云40 分钟前
mysql查询中的filesort是指什么
数据库·mysql
开航母的李大44 分钟前
Navicat 全量&增量数据库迁移
数据库·oracle
Data_Adventure1 小时前
@scqilin/phone-ui手机外观组件库
前端