IDEA+Java+SSM+Mysql+Bootstrap实现Web学生信息管理系统(下)

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,高可用系列 2核4GB
简介: IDEA+Java+SSM+Mysql+Bootstrap实现Web学生信息管理系统

StudentController

package com.offcn.controller;
import java.util.ArrayList;
import java.util.List;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import javax.validation.Valid;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.validation.BindingResult;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.servlet.mvc.support.RedirectAttributes;
import com.offcn.pojo.Classes;
import com.offcn.pojo.CourseExt;
import com.offcn.pojo.Sc;
import com.offcn.pojo.Student;
import com.offcn.service.ClassesService;
import com.offcn.service.StudentService;
@Controller
@RequestMapping("/stu")
public class StudentController {
  @Resource
  StudentService studentService;
  @Resource
  ClassesService classesService;
  @RequestMapping("/list")
  public String getlist(@RequestParam(required=false,defaultValue="1") int pageNO,Model model) {
    int size=3;
      List<Student> slist=studentService.getStudentPager(pageNO, size);
      model.addAttribute("pageNO", pageNO);
      model.addAttribute("size", size);
      model.addAttribute("count", studentService.getCount());
      model.addAttribute("slist", slist);
    return "student/list";
  }
  @RequestMapping("/findByName")
  public String findByName(String name,Model model) {
    int size=10;
      List<Student> slist=studentService.findByName(name);
      model.addAttribute("pageNO", 1);
      model.addAttribute("size", size);
      model.addAttribute("count", studentService.getCount());
      model.addAttribute("slist", slist);
      model.addAttribute("name", name);
    return "student/list";
  }
  @RequestMapping("/findByName2")
  public String findByName2(String id,Model model) {
    int size=10;
    List<Student> slist = new ArrayList<>();
    if(id!=""&&id!=null) {
        slist=studentService.findByName2(Integer.parseInt(id));
    }
      model.addAttribute("pageNO", 1);
      model.addAttribute("size", size);
      model.addAttribute("count", studentService.getCount());
      model.addAttribute("slist", slist);
      model.addAttribute("id", id);
    return "student/list";
  }
  @RequestMapping("/findByName3")
  public String findByName3(String address,Model model) {
    int size=10;
      List<Student> slist=studentService.findByName3(address);
      model.addAttribute("pageNO", 1);
      model.addAttribute("size", size);
      model.addAttribute("count", studentService.getCount());
      model.addAttribute("slist", slist);
      model.addAttribute("address", address);
    return "student/list";
  }
  //重定向一定要写绝对路径eg:redirect:/stu/list
  @RequestMapping("/delete/{id}")
  public String  delete(@PathVariable int id,Model model) {
    studentService.deleteByPrimaryKey(id);
    return "redirect:/stu/list";
  }
  @RequestMapping("/deletes")
  public String  deletes(@RequestParam("id") int[] ids,Model model,RedirectAttributes redirectAttributes) {
    int rows=0;
    rows=studentService.multiDelete(ids);
    if(rows>0){
      redirectAttributes.addFlashAttribute("message", "成功删除!");
    }else{
      redirectAttributes.addFlashAttribute("message", "删除shibai!");
    }
    return "redirect:/stu/list";
  }
  //
  @RequestMapping("/add")
  public String add(Model model) {
    List<Classes> clist=classesService.getAllClasses();
    model.addAttribute("clist", clist);
    model.addAttribute("entity", new Student());
    return "student/add";
  }
  //mm           `
  @RequestMapping("/addSave")
  public String addSave(Model model,@ModelAttribute("entity") @Valid Student entity,BindingResult bindingResult,RedirectAttributes redirectAttributes) {
    if(bindingResult.hasErrors()){
       model.addAttribute("entity", entity);
       List<Classes> clist=classesService.getAllClasses();
       model.addAttribute("clist", clist);
       //redirectAttributes.addFlashAttribute("entity", arg1)
             return "student/add";
       //return "redirect:/add";
    }else{
      List<Classes> clist=classesService.getAllClasses();
      model.addAttribute("clist", clist);
      model.addAttribute("entity", new Student());
      studentService.insert(entity);
      return "redirect:/stu/list";
    }
  }
  //edit/${entity.id}
  @RequestMapping("/edit/{id}")
  public String add(Model model,@PathVariable int id) {
    List<Classes> clist=classesService.getAllClasses();
    model.addAttribute("clist", clist);
    model.addAttribute("entity", studentService.selectByPrimaryKey(id));
    return "student/edit";
  }
  //
  @RequestMapping("/editSave")
  public String editSave(Model model,Student student) {
    studentService.updateByPrimaryKey(student);
    return "redirect:/stu/list";
  }
  @RequestMapping("/getXuXiu")
  public String getXuXiu(Model model,HttpServletRequest req){
    HttpSession session=req.getSession();
    Student student=(Student) session.getAttribute("user");
    List<CourseExt> clist= studentService.getXuxiu(student.getClassid());
    model.addAttribute("colist", clist);
    return "student/colist";
  }
  @RequestMapping(value="/semycou",produces="text/html;charset=utf8")
  @ResponseBody
  public String semycou(@RequestParam("cou") String[] ct,HttpServletRequest req){
    HttpSession session=req.getSession();
    Student student=(Student) session.getAttribute("user");
    List<Sc> sclist=new ArrayList<Sc>();
    for(int i=0;i<ct.length;i++){
      Sc sc=new Sc();
      String cteveryone=ct[i];
      String[] ctarray=cteveryone.split("_");
      sc.setCid(Integer.parseInt(ctarray[0]));
      sc.setTid(Integer.parseInt(ctarray[1]));
      sc.setSid(student.getId());
      sclist.add(sc);
    }
    String msg="";
    try{
      studentService.inserBatch(sclist);
      msg="选课成功!";
    }catch(Exception e){
      msg="选课可能有重复,请审核后重试!";
    }
    return msg;
  }
  @RequestMapping("/getStuCourse")
  public String getStuCourse(Model model,HttpServletRequest req){
    HttpSession session=req.getSession();
    Student student=(Student) session.getAttribute("user");
    List<CourseExt> ctlist=studentService.getMycourses(student.getClassid(), student.getId());
    model.addAttribute("ctlist", ctlist);
    return "student/cslist";
  }
}

TeacherController

package com.offcn.controller;
import java.io.File;
import java.util.List;
import java.util.UUID;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
import javax.validation.Valid;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.validation.BindingResult;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.servlet.mvc.support.RedirectAttributes;
import com.offcn.pojo.Grade;
import com.offcn.pojo.StudentView;
import com.offcn.pojo.Teacher;
import com.offcn.service.TeacherService;
/**
 * <p>Company: offcn</p>
 * @author zgf
 * @date 2017年5月22日
 * @version 1.0
 */
@Controller
@RequestMapping("/tea")
public class TeacherController {
  @Resource
    TeacherService teacherService;
   /*
     * 学生列表与分页Action
     */
    @RequestMapping("/list")
    public String list(Model model,@RequestParam(required=false,defaultValue="1") int pageNO){
        int size=3;
        model.addAttribute("size",size);
        model.addAttribute("pageNO",pageNO);
        model.addAttribute("count",teacherService.getTeacherCount());
        model.addAttribute("tealist", teacherService.getTeacherPager(pageNO, size));
        return "teacher/list";
     }
    /*
     * 删除单个学生对象Action
     */
    @RequestMapping("/delete/{id}")
    public String delete(Model model,@PathVariable int id,@RequestParam(required=false,defaultValue="1") int pageNO,RedirectAttributes redirectAttributes){
        if(teacherService.delete(id)>0)
        {
            redirectAttributes.addFlashAttribute("message", "删除成功!");
        }else{
            redirectAttributes.addFlashAttribute("message", "删除失败!");
        }
        return "redirect:/tea/list?pageNO="+pageNO;
    }
    /*
     * 删除多个学生对象Action
     */
    @RequestMapping("/deletes")
    public String deletes(Model model,@RequestParam int[] id,@RequestParam(required=false,defaultValue="1") int pageNO,RedirectAttributes redirectAttributes){
        //执行删除
      System.out.println("批量删除"+id.toString());
        int rows=teacherService.deletes(id);
        if(rows>0)
        {
            redirectAttributes.addFlashAttribute("message", "删除"+rows+"行记录成功!");
        }else{
            redirectAttributes.addFlashAttribute("message", "删除失败!");
        }
        return "redirect:/tea/list?pageNO="+pageNO;
    }
    /*
     * 添加
     */
    @RequestMapping("/add")
    public String add(Model model){
        model.addAttribute("entity", new Teacher());
        return "teacher/add";
    }
    /*
     * 添加保存
     */
    @RequestMapping("/addSave")
    public String addSave(Model model,@ModelAttribute("entity") @Valid Teacher entity,BindingResult bindingResult){
        //如果模型中存在错误
        if(bindingResult.hasErrors()){
           model.addAttribute("entity", entity);
             return "teacher/add";
        }else{
          entity.setPassword("aaaaaa");
          teacherService.insert(entity);
             return "redirect:/tea/list";    
        }
    }
    /*
     * 编辑
     */
    @RequestMapping("/edit/{id}")
    public String edit(Model model,@PathVariable int id){
        model.addAttribute("entity", teacherService.getTeacherId(id));
        return "teacher/edit";
    }
    /*
     * 保存
     */
    @RequestMapping("/editSave")
    public String editSave(Model model,@ModelAttribute("entity") @Valid Teacher entity,BindingResult bindingResult){
        //如果模型中存在错误
        if(bindingResult.hasErrors()){
           model.addAttribute("entity", entity);
             return "/teacher/edit";
        }else{
          //entity.setPassword("aaaaaa");
          teacherService.update(entity);
            return "redirect:list";    
        }
    }
   //
    @RequestMapping("getMyStu")
    public String getMyStu(Model model,HttpServletRequest req){
      HttpSession session=req.getSession();
      Teacher teacher=(Teacher) session.getAttribute("user");
        List<StudentView> slist=teacherService.getMystus(teacher.getId());
        model.addAttribute("stulist", slist);
      return "teacher/couOftea/stulist";
    }
    //
    @RequestMapping("setGrades/{sid}/{sname}/{cid}")
    public String setGrades(Model model,@PathVariable int sid,@PathVariable String sname,@PathVariable int cid){
      Grade grade=new Grade();
      grade.setSid(sid);
      grade.setCid(cid);
      model.addAttribute("entity", grade);
      model.addAttribute("sname", sname);
      return "teacher/couOftea/setgrade";
    }
    @RequestMapping("/saveGrade")
    public String setGrades(Model model,Grade entity,HttpServletRequest req,RedirectAttributes redirectAttributes){
      HttpSession session=req.getSession();
      Teacher teacher=(Teacher) session.getAttribute("user");
      entity.setZgrade(entity.getPgrade()+entity.getKgrade());
      entity.setTid(teacher.getId());
      int rows=teacherService.insertGrade(entity);
      if(rows>0){
        redirectAttributes.addFlashAttribute("msg", "录入成功!");
      }else{
        redirectAttributes.addFlashAttribute("msg", "录入失败!");
      }
      return "redirect:getMyStu";
    }
}

UserController

package com.offcn.controller;
import java.util.HashMap;
import java.util.Map;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
import com.offcn.pojo.Student;
import com.offcn.pojo.Teacher;
import com.offcn.pojo.User;
import com.offcn.service.StudentService;
import com.offcn.service.TeacherService;
import com.offcn.service.UserService;
@Controller
@RequestMapping("/admin")
public class UserController {
  @Resource
  UserService userService;
  @Resource
  StudentService studentService;
  @RequestMapping("/login")
  public String login(User user,Model model,HttpServletRequest req) {
    HttpSession session=req.getSession();
    int usertype=-1;
    if(user!=null){
      usertype=user.getUsertype();
      if(usertype==1){
        //管理员
       User loginuser= userService.userlogin(user);
       if(loginuser!=null){
         session.setAttribute("user", loginuser);
         return "homepage/index";
       }else{
         model.addAttribute("msg", "请输入正确的用户名和密码");
         return "/index";
       }
      }else if(usertype==2){
        //学生
        Student student=new Student();
        student.setLoginname(user.getName());
        student.setPassword(user.getPassword());
        Student loginstu=studentService.stulogin(student);
        if(loginstu!=null){
          session.setAttribute("user", loginstu);
          return "homepage/index";
        }else{
          model.addAttribute("msg", "请输入正确的用户名和密码");
          return "/index";
        }
      }
    }
    return "homepage/index";
  }
  //
//    @RequestMapping("isPassword") 
  @ResponseBody
    @RequestMapping("/isPassword")
  public Object isPassword(@RequestParam(value ="oldpwd") String oldpwd ,@RequestParam(value ="id")Integer id) {
     Map<String,Object> map=new HashMap<String, Object>();
          Student student =  studentService.selectByPrimaryKey(id);
          if(null != student && !student.getPassword().equals(oldpwd)){
              map.put("code", "error");
          }else{
              map.put("code", "success");
          }
    return map;
    }
}


四、其他


1.更多系统


1.更多JavaWeb系统请关注专栏。


https://blog.csdn.net/helongqiang/category_10020130.html

https://blog.csdn.net/helongqiang/category_10020130.html


2.更多JavaSwing系统请关注专栏。


https://blog.csdn.net/helongqiang/category_6229101.html

https://blog.csdn.net/helongqiang/category_6229101.html


2.源码下载

Java+SSM+Boostrap学生信息管理系统


3.运行项目

请点击以下链接,部署你的项目。


IDEA如何导入JavaWeb项目超详细视频教程


4.备注

如有侵权请联系我删除。


5.支持博主

如果您觉得此文对您有帮助,请点赞加关注加收藏。祝您生活愉快!


相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
1月前
|
关系型数据库 MySQL Java
【IDEA】java后台操作mysql数据库驱动常见错误解决方案
【IDEA】java后台操作mysql数据库驱动常见错误解决方案
68 0
|
11天前
|
Java
轻松上手Java字节码编辑:IDEA插件VisualClassBytes全方位解析
本插件VisualClassBytes可修改class字节码,包括class信息、字段信息、内部类,常量池和方法等。
61 6
|
1月前
|
存储 缓存 Java
java基础:IO流 理论与代码示例(详解、idea设置统一utf-8编码问题)
这篇文章详细介绍了Java中的IO流,包括字符与字节的概念、编码格式、File类的使用、IO流的分类和原理,以及通过代码示例展示了各种流的应用,如节点流、处理流、缓存流、转换流、对象流和随机访问文件流。同时,还探讨了IDEA中设置项目编码格式的方法,以及如何处理序列化和反序列化问题。
67 1
java基础:IO流 理论与代码示例(详解、idea设置统一utf-8编码问题)
|
26天前
|
搜索推荐 Java 数据库连接
Java|在 IDEA 里自动生成 MyBatis 模板代码
基于 MyBatis 开发的项目,新增数据库表以后,总是需要编写对应的 Entity、Mapper 和 Service 等等 Class 的代码,这些都是重复的工作,我们可以想一些办法来自动生成这些代码。
30 6
|
1月前
|
SQL 存储 关系型数据库
MySQL 与 IntelliJ IDEA 同时兼容的注释
MySQL 与 IntelliJ IDEA 同时兼容的注释
29 2
|
1月前
|
数据可视化 关系型数据库 MySQL
【IDEA】配置mysql环境并创建mysql数据库
【IDEA】配置mysql环境并创建mysql数据库
100 0
|
3月前
|
前端开发 Java Maven
【前端学java】全网最详细的maven安装与IDEA集成教程!
【8月更文挑战第12天】全网最详细的maven安装与IDEA集成教程!
99 2
【前端学java】全网最详细的maven安装与IDEA集成教程!
|
3月前
|
Java PHP 数据安全/隐私保护
Java——IDEA如何运行单个文件
Java——IDEA如何运行单个文件
59 1
Java——IDEA如何运行单个文件
|
4月前
|
Java
初识Java与IDEA的简易介绍
1.Java的简单介绍 2.IDEA的快速上手(模块导入、模块删除)
54 1
初识Java与IDEA的简易介绍
|
3月前
|
Java
Java系列之 IDEA 为类 和 方法设置注解模板
这篇文章介绍了如何在IntelliJ IDEA中为类和方法设置注解模板,包括类模板的创建和应用,以及两种不同的方法注解模板的创建过程和实际效果展示,旨在提高代码的可读性和维护性。
下一篇
无影云桌面