基于SSM實(shí)現(xiàn)學(xué)籍管理系統(tǒng)
?作者主頁:
?簡介:Java領(lǐng)域優(yōu)質(zhì)創(chuàng)作者、CSDN博客專家? Java項(xiàng)目、簡歷模板、學(xué)習(xí)資料、面試題庫、技術(shù)互助
文末獲取源碼?
?項(xiàng)目編號:BS-GX-026
運(yùn)行環(huán)境
jdk8+tomcat8.5+mysql+IntelliJ IDEA(或eclipse)+maven
項(xiàng)目技術(shù)(必填)
spring+spring mvc+mybatis+layui+jsp+echarts
本系統(tǒng)是一個基于ssm+layui的學(xué)籍管理系統(tǒng);
本系統(tǒng)比較簡單,適用于新手,上手簡單易操作,主要是幫助理解java web (ssm框架)項(xiàng)目的整體運(yùn)行流程,附帶著也熟悉一下這種項(xiàng)目的搭建;
本系統(tǒng)具有三種用戶: 1.管理員:專業(yè)管理,班級管理,學(xué)生管理,老師管理,課程管理,開課管理以及用戶管理 2.教師:成績管理,學(xué)生查詢 3.學(xué)生:選課管理,查看成績
下面展示一下系統(tǒng)功能截圖:








老師身份登陸

學(xué)生身份登陸


以上是基于SSM實(shí)現(xiàn)的學(xué)籍管理系統(tǒng)的部分功能展示,本系統(tǒng)功能完整,界面美觀,適合做畢業(yè)設(shè)計使用。
部分實(shí)現(xiàn)代碼:
package com.niudada.service;
import com.github.pagehelper.PageHelper;
import com.niudada.dao.CourseDao;
import com.niudada.entity.Course;
import com.niudada.utils.BeanMapUtils;
import com.niudada.utils.MapParameter;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;import java.util.List;
import java.util.Map;@Service
public class CourseService {? ? @Autowired
? ? private CourseDao courseDao;? ? //添加
? ? public int create(Course pi) {
? ? ? ? return courseDao.create(pi);
? ? }? ? //刪除
? ? public int delete(Integer id) {
? ? ? ? return courseDao.delete(MapParameter.getInstance().addId(id).getMap());
? ? }? ? //批量刪除
? ? public int delete(String ids) {
? ? ? ? int count = 0; //count表示刪除的記錄條數(shù)
? ? ? ? for (String str : ids.split(",")) {
? ? ? ? ? ? count = courseDao.delete(MapParameter.getInstance().addId(Integer.parseInt(str)).getMap());
? ? ? ? }
? ? ? ? return count;
? ? }? ? //修改
? ? public int update(Course course) {
? ? ? ? Map<String, Object> map = MapParameter.getInstance().add(BeanMapUtils.beanToMapForUpdate(course)).addId(course.getId()).getMap();
? ? ? ? return courseDao.update(map);
? ? }? ? //查詢
? ? public List<Course> query(Course course) {
? ? ? ? if(course != null && course.getPage() != null) {
? ? ? ? ? ? PageHelper.startPage(course.getPage(),course.getLimit());
? ? ? ? }
? ? ? ? return courseDao.query(BeanMapUtils.beanToMap(course));
? ? }? ? //根據(jù)id查詢
? ? public Course detail(Integer id) {
? ? ? ? return courseDao.detail(MapParameter.getInstance().addId(id).getMap());
? ? }? ? //查詢總記錄條數(shù)
? ? public int count(Course course) {
? ? ? ? return courseDao.count(BeanMapUtils.beanToMap(course));
? ? }}
?
package com.niudada.service;
import com.github.pagehelper.PageHelper;
import com.niudada.dao.JobDao;
import com.niudada.entity.Job;
import com.niudada.utils.BeanMapUtils;
import com.niudada.utils.MapParameter;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;import java.util.List;
import java.util.Map;@Service
public class JobService {? ? @Autowired
? ? private JobDao jobDao;? ? //添加
? ? public int create(Job pi) {
? ? ? ? return jobDao.create(pi);
? ? }? ? //刪除
? ? public int delete(Integer id) {
? ? ? ? return jobDao.delete(MapParameter.getInstance().addId(id).getMap());
? ? }? ? //批量刪除
? ? public int delete(String ids) {
? ? ? ? int count = 0; //count表示刪除的記錄條數(shù)
? ? ? ? for (String str : ids.split(",")) {
? ? ? ? ? ? count = jobDao.delete(MapParameter.getInstance().addId(Integer.parseInt(str)).getMap());
? ? ? ? }
? ? ? ? return count;
? ? }? ? //修改
? ? public int update(Job job) {
? ? ? ? Map<String, Object> map = MapParameter.getInstance().add(BeanMapUtils.beanToMapForUpdate(job)).addId(job.getId()).getMap();
? ? ? ? return jobDao.update(map);
? ? }? ? //查詢
? ? public List<Job> query(Job job) {
? ? ? ? if(job != null && job.getPage() != null) {
? ? ? ? ? ? PageHelper.startPage(job.getPage(),job.getLimit());
? ? ? ? }
? ? ? ? return jobDao.query(BeanMapUtils.beanToMap(job));
? ? }? ? //根據(jù)id查詢
? ? public Job detail(Integer id) {
? ? ? ? return jobDao.detail(MapParameter.getInstance().addId(id).getMap());
? ? }? ? //查詢總記錄條數(shù)
? ? public int count(Job job) {
? ? ? ? return jobDao.count(BeanMapUtils.beanToMap(job));
? ? }}
?
package com.niudada.service;
import com.github.pagehelper.PageHelper;
import com.niudada.dao.ScoreDao;
import com.niudada.entity.Score;
import com.niudada.utils.BeanMapUtils;
import com.niudada.utils.MapParameter;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;import java.util.HashMap;
import java.util.List;
import java.util.Map;@Service
public class ScoreService {? ? @Autowired
? ? private ScoreDao scoreDao;? ? //添加
? ? public int create(String sectionIds,String courseIds,Integer studentId) {
? ? ? ? //清除已有選課數(shù)據(jù)
? ? ? ? Map<String, Object> map = MapParameter.getInstance().add("stuId", studentId).getMap();
? ? ? ? scoreDao.delete(map);
? ? ? ? //批量保存
? ? ? ? int flag = 0;
? ? ? ? String[] sectionIdArr = sectionIds.split(",");
? ? ? ? String[] courseIdArr = courseIds.split(",");
? ? ? ? for(int i = 0; i < sectionIdArr.length; i++) {
? ? ? ? ? ? Score score = new Score();
? ? ? ? ? ? score.setCourseId(Integer.parseInt(courseIdArr[i]));
? ? ? ? ? ? score.setSectionId(Integer.parseInt(sectionIdArr[i]));
? ? ? ? ? ? score.setStuId(studentId);
? ? ? ? ? ? flag = scoreDao.create(score);
? ? ? ? }
? ? ? ? return flag;
? ? }? ? //批量刪除
? ? public int delete(String ids) {
? ? ? ? int count = 0; //count表示刪除的記錄條數(shù)
? ? ? ? for (String str : ids.split(",")) {
? ? ? ? ? ? count = scoreDao.delete(MapParameter.getInstance().addId(Integer.parseInt(str)).getMap());
? ? ? ? }
? ? ? ? return count;
? ? }? ? //修改
? ? public int update(Score score) {
? ? ? ? Map<String, Object> map = MapParameter.getInstance().add(BeanMapUtils.beanToMapForUpdate(score)).addId(score.getId()).getMap();
? ? ? ? return scoreDao.update(map);
? ? }? ? //查詢
? ? public List<Score> query(Score score) {
? ? ? ? if(score != null && score.getPage() != null) {
? ? ? ? ? ? PageHelper.startPage(score.getPage(),score.getLimit());
? ? ? ? }
? ? ? ? return scoreDao.query(BeanMapUtils.beanToMap(score));
? ? }? ? //根據(jù)id查詢
? ? public Score detail(Integer id) {
? ? ? ? return scoreDao.detail(MapParameter.getInstance().addId(id).getMap());
? ? }
? ??
? ? //查詢總記錄條數(shù)
? ? public int count(Score score) {
? ? ? ? return scoreDao.count(BeanMapUtils.beanToMap(score));
? ? }? ? //老師評分,修改成績
? ? public int update(Integer courseId,Integer sectionId,String stuIds,String scores) {? ? ? ? String[] stuIdArray = stuIds.split(",");
? ? ? ? String[] scoresArray = scores.split(",");
? ? ? ? int flag = 0;
? ? ? ? for(int i = 0; i < stuIdArray.length; i++) {
? ? ? ? ? ? Map<String, Object> map = MapParameter.getInstance()
? ? ? ? ? ? ? ? ? ? .add("courseId", courseId)
? ? ? ? ? ? ? ? ? ? .add("sectionId", sectionId)
? ? ? ? ? ? ? ? ? ? .add("stuId", Integer.parseInt(stuIdArray[i]))
? ? ? ? ? ? ? ? ? ? .add("updateScore", Double.parseDouble(scoresArray[i]))
? ? ? ? ? ? ? ? ? ? .getMap();
? ? ? ? ? ? flag = scoreDao.update(map);
? ? ? ? }
? ? ? ? return flag;
? ? }? ? //查詢各科平均成績
? ? public List<HashMap>queryAvgScoreBySection(){
? ? ? ? List<HashMap> mapList = scoreDao.queryAvgScoreBySection(null);
? ? ? ? return mapList;
? ? }
}
?
package com.niudada.service;
import com.github.pagehelper.PageHelper;
import com.niudada.dao.SectionDao;
import com.niudada.entity.Section;
import com.niudada.utils.BeanMapUtils;
import com.niudada.utils.MapParameter;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;import java.util.List;
import java.util.Map;@Service
public class SectionService {? ? @Autowired
? ? private SectionDao sectionDao;? ? //添加
? ? public int create(Section pi) {
? ? ? ? return sectionDao.create(pi);
? ? }? ? //刪除
? ? public int delete(Integer id) {
? ? ? ? return sectionDao.delete(MapParameter.getInstance().addId(id).getMap());
? ? }? ? //批量刪除
? ? public int delete(String ids) {
? ? ? ? int count = 0;
? ? ? ? for (String str : ids.split(",")) {
? ? ? ? ? ? count = sectionDao.delete(MapParameter.getInstance().addId(Integer.parseInt(str)).getMap());
? ? ? ? }
? ? ? ? return count;
? ? }? ? //修改
? ? public int update(Section section) {
? ? ? ? Map<String, Object> map = MapParameter.getInstance().add(BeanMapUtils.beanToMapForUpdate(section)).addId(section.getId()).getMap();
? ? ? ? return sectionDao.update(map);
? ? }? ? //查詢
? ? public List<Section> query(Section section) {
? ? ? ? if(section != null && section.getPage() != null) {
? ? ? ? ? ? PageHelper.startPage(section.getPage(),section.getLimit());
? ? ? ? }
? ? ? ? return sectionDao.query(BeanMapUtils.beanToMap(section));
? ? }? ? //根據(jù)id查詢
? ? public Section detail(Integer id) {
? ? ? ? return sectionDao.detail(MapParameter.getInstance().addId(id).getMap());
? ? }? ? //查詢總記錄條數(shù)
? ? public int count(Section section) {
? ? ? ? return sectionDao.count(BeanMapUtils.beanToMap(section));
? ? }? ? //按照學(xué)生查詢班級開課
? ? public List<Section> queryByStudent(Integer studentId) {
? ? ? ? return sectionDao.queryByStudent(MapParameter.getInstance().add("studentId",studentId).getMap());
? ? }
}
?
package com.niudada.service;
import com.github.pagehelper.PageHelper;
import com.niudada.dao.TeacherDao;
import com.niudada.entity.Teacher;
import com.niudada.utils.BeanMapUtils;
import com.niudada.utils.MD5Utils;
import com.niudada.utils.MapParameter;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;import java.util.List;
import java.util.Map;@Service
public class TeacherService {? ? @Autowired
? ? private TeacherDao teacherDao;? ? //添加
? ? public int create(Teacher pi) {
? ? ? ? //設(shè)置密碼加密
? ? ? ? pi.setTeacherPwd(MD5Utils.getMD5(pi.getTeacherPwd()));
? ? ? ? return teacherDao.create(pi);
? ? }? ? //刪除
? ? public int delete(Integer id) {
? ? ? ? return teacherDao.delete(MapParameter.getInstance().addId(id).getMap());
? ? }? ? //批量刪除
? ? public int delete(String ids) {
? ? ? ? int count = 0;
? ? ? ? for (String str : ids.split(",")) {
? ? ? ? ? ? count = teacherDao.delete(MapParameter.getInstance().addId(Integer.parseInt(str)).getMap());
? ? ? ? }
? ? ? ? return count;
? ? }? ? //修改
? ? public int update(Teacher teacher) {
? ? ? ? Map<String, Object> map = MapParameter.getInstance().add(BeanMapUtils.beanToMapForUpdate(teacher)).addId(teacher.getId()).getMap();
? ? ? ? return teacherDao.update(map);
? ? }? ? //查詢
? ? public List<Teacher> query(Teacher teacher) {
? ? ? ? if(teacher != null && teacher.getPage() != null){
? ? ? ? ? ? PageHelper.startPage(teacher.getPage(),teacher.getLimit());
? ? ? ? }
? ? ? ? return teacherDao.query(BeanMapUtils.beanToMap(teacher));
? ? }? ? //根據(jù)id查詢
? ? public Teacher detail(Integer id) {
? ? ? ? return teacherDao.detail(MapParameter.getInstance().addId(id).getMap());
? ? }? ? //查詢總記錄數(shù)
? ? public int count(Teacher teacher) {
? ? ? ? return teacherDao.count(BeanMapUtils.beanToMap(teacher));
? ? }? ? //登錄
? ? public Teacher login(String userName, String password){
? ? ? ? Map<String, Object> map = MapParameter.getInstance()
? ? ? ? ? ? ? ? .add("teacherName", userName)
? ? ? ? ? ? ? ? .add("teacherPwd", password)
? ? ? ? ? ? ? ? .getMap();
? ? ? ? return teacherDao.detail(map);
? ? }
}