基于ssm教育科研信息管理系统

一、系统简介

本项目采用eclipse工具开发,jsp+spring+spring-mvc+mybatis+jquery技术编写,数据库采用的是mysql,navicat开发工具。

系统一共分为4个角色分别是:管理员,学生,教师,评审员

二、模块简介

管理员

1、登录

2、用户(评审员/教师)管理

3、新闻管理

4、学生管理

5、分类管理

6、科研项目管理

7、项目报名管理

8、评论管理

教师

1、个人信息管理

2、新闻管理

3、科研项目管理

4、报名管理

评审员

1、个人信息管理

2、新闻管理

3、科研项目审批

学生

1、登录注册

2、浏览科研项目

3、报名参加科研项目

4、下载附件

5、评论

6、查看新闻

7、个人信息管理


项目简介:
难度等级:✩✩✩
用户类型:4角色(管理员,学生,教师,评审员)
设计模式:MVC
项目架构:B/S架构
开发语言:Java语言
前端技术:layui、HTML、CSS、JS、JQuery等
后端技术:JSP、ssm框架
运行环境:Windows7或10、JDK1.8
运行工具:本系统采用Eclipse开发,仅支持Eclipse运行,不支持MyEclipse和IDEA运行,因为三者的骨架不一样,强行导入打开运行可能会导致出现未知的错误。(如若想用idea运行,需要转换!!!!)
数  据  库:MySQL5.5/5.7/8.0版本
运行服务器:Tomcat7.0/8.0/8.5/9.0等版本
是否基于Maven环境:否
是否采用框架:是
数据库表数量:8张表
JSP页面数量:30多张
是否有分页:有分页

相关截图

 

 相关代码

<%@ page language="java" contentType="text/html; charset=utf-8"
    pageEncoding="utf-8"%>
 <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%
	String path = request.getContextPath();
	String basePath = request.getScheme() + "://" + request.getServerName() + ":" + request.getServerPort()
			+ path + "/";
%>

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>教育科研信息管理系统</title>
<meta name="renderer" content="webkit">
  <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
  <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0">
<link rel="stylesheet" type="text/css" href="<%=path %>/layui/css/layui.css"> 
<link rel="stylesheet" type="text/css" href="<%=path %>/layui/css/admin.css"> 
<link rel="stylesheet" type="text/css" href="<%=path %>/layui/css/login.css"> 
</head>
<body ><%-- style="
background-image:url(<%=path %>/img/b2.jpg);
background-repeat:no-repeat;background-size:cover;" --%>

 
    <form  method="post" id="loginForm" name="loginForm">
    <div class="layadmin-user-login layadmin-user-display-show" id="LAY-user-login" style="display: none;">
    <div class="layadmin-user-login-main">
      <div class="layadmin-user-login-box layadmin-user-login-header">
        <h2 style="font-size:50px;">教育科研信息管理系统登录</h2>
       
      </div>
      <div class="layadmin-user-login-box layadmin-user-login-body layui-form">
        <div class="layui-form-item">
          <label class="layadmin-user-login-icon layui-icon layui-icon-username" for="LAY-user-login-cellphone"></label>
          <input type="text" name="userName" lay-verify="userName" id="userName"  placeholder="用户名" class="layui-input">
        </div>
       
        <div class="layui-form-item">
          <label class="layadmin-user-login-icon layui-icon layui-icon-password" for="LAY-user-login-password"></label>
          <input type="password" name="password" lay-verify="password" id="password" placeholder="密码" class="layui-input">
        </div>
         <div class="layui-form-item"  >
                  <div class="layui-input-inline" style="width:100%">
                  <select name="type" id="type">
	                       <option value="1" selected>管理员</option>
	                         <option value="2">教师</option>
	                         <option value="3">评审员</option>
	                </select>
                  <!-- <input type="radio" name="type" value="1" title="管理员" checked>
                   <input type="radio" name="type" value="2" title="教师"> 
                   <input type="radio" name="type" value="3" title="评审员">  -->
                 </div>
              </div>     
        <div class="layui-form-item">
            <a type="button" id="denglu" class="layui-btn layui-btn-fluid">登陆</a>
        </div>
        <div class="layui-form-item">
 	       <a href="toIndex" class="layui-btn layui-btn-fluid" >返回首页</a>
        </div>  
       <span id="error2" style="color:red;">${msg1}</span>
      </div>
    </div>
    
   

  </div>
		
		</form>
	


<script src="<%=path %>/layui/layui.js"></script>
<script src="<%=path %>/layui/jquery-1.9.1.min.js"></script>
<script>

layui.use([ 'form','jquery','layer' ], function() {
	var form = layui.form,
	 layer = layui.layer,
	 $= layui.jquery;
	 form.render();//这句一定要加,占坑
	 
	 $('#denglu').click(function(){  
		  var userName = $.trim($('#userName').val());
		  var password = $.trim($("#password").val());
		  var type = $.trim($("#type").val());
		     if(userName == ''){  
		         layer.msg('用戶名不能为空',function() {time:2000}); 
		         return false;  
		     }
		     if(password == ''){  
		         layer.msg('密码不能为空',function() {time:2000}); 
		         return false;  
		     }
             $.ajax({
                 type: "post", // post或get
                 url: "login", // 提交路径
                 data: {
                	 userName: userName,
                     password: password,
                     type:type,
                 },
                 // dataType: "json", // 指定后台传来的数据是json格式
                 success: function(data) {

                     if (data == "main") {
                         layer.msg('登陆成功!', {icon: 6});
                         // 延迟跳转
                         window.setTimeout("window.location='toMain'",900);
                     } else if(data == 'index'){
                         layer.msg('登陆成功!', {icon: 6});
                         window.setTimeout("window.location='toIndex'",900);

                     }else {
                         layer.msg('账号或密码错误!', {icon: 5});
                     }

                 },

                 error: function(err) {}

             })
	})
	 
   

});
</script>
</body>
</html>
/**
	 * 登录
	 * @param userName
	 * @param request
	 * @param password
	 * @param session
	 * @param response
	 * @param mv
	 * @return
	 * @throws ServletException
	 * @throws IOException
	 */
	@RequestMapping("/login")
	@ResponseBody
    public  String login(@RequestParam("userName")String userName,
   		 HttpServletRequest request,@RequestParam("password")String password,
   		 HttpSession session,HttpServletResponse response) throws ServletException, IOException {	
		session.removeAttribute("admin");
		session.removeAttribute("user");
		session.removeAttribute("student");
		String message = "error";
	    String type=request.getParameter("type").toString();
	     if(type != null && type.equals("1")) {
	    	Admin admin1 = userService.selectAdmin(userName,password);
		    if(admin1 != null){
		    	request.getSession().setAttribute("admin", admin1);
		    	message = "main";
		    }
	      }else if(type != null && type.equals("2")){
	    	User te = userService.selectUser(userName,password,"1");
	    	if(te != null){
	    		request.getSession().setAttribute("user", te);
	    		message = "main";
		    }
	      }else if(type != null && type.equals("3")){
		    	User te = userService.selectUser(userName,password,"2");
		    	if(te != null){
		    		request.getSession().setAttribute("user", te);
		    		message = "main";
			    }
		      }
	      else if(type != null && type.equals("4")){
		    	Student student = studentService.selectStudent(userName,password);
		    	if(student != null){
		    		request.getSession().setAttribute("student", student);
		    		message = "index";
			    }
		      }
	    
		return message;
			
	}
	
	

其他相关代码都是类似的,主要是前端jsp和后端控制器交互比较重要!!!非开源!!!!!!
其他模块代码都是类似的,此项目适合初学者学习借鉴
喜欢的朋友的点赞加关注,感兴趣的同学可以研究!!!!!
感谢  = v =

项目截图中的数据,很多是用来测试的,需要自行添加合适的数据图片!!

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
基于SSM(Spring+SpringMVC+MyBatis)的生信息管理系统是一种常见的Java Web应用程序,用于管理学生的基本信息、课程信息、成绩信息等。下面是该系统的一般介绍: 1. 前端页面:学生信息管理系统通常包含登录页面、主页、学生信息管理页面、课程信息管理页面、成绩信息管理页面等。前端页面使用HTML、CSS和JavaScript等技术进行开发,通过与后端进行数据交互实现功能。 2. 后端架构:该系统使用SSM框架进行开发,其中Spring负责管理对象的依赖注入和事务管理,SpringMVC负责处理用户请求和返回响应,MyBatis负责与数据库进行交互。 3. 数据库:学生信息管理系统通常使用关系型数据库(如MySQL)存储学生的基本信息、课程信息、成绩信息等。通过MyBatis提供的ORM(对象关系映射)功能,将Java对象与数据库表进行映射,实现数据的增删改查操作。 4. 功能模块:学生信息管理系统一般包含以下功能模块: - 学生信息管理:包括学生的基本信息(如姓名、学号、性别、年龄等),可以进行增删改查操作。 - 课程信息管理:包括课程的基本信息(如课程名称、授课教师、学分等),可以进行增删改查操作。 - 成绩信息管理:包括学生的成绩信息(如学生学号、课程名称、成绩等),可以进行增删改查操作。 - 用户权限管理:包括用户登录、权限验证等功能,确保只有授权用户可以进行相关操作。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

码盗_java_bishe

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

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

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

打赏作者

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

抵扣说明:

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

余额充值