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


    一、系统简介


    本项目采用eclipse工具开发,layui+jsp+servlet+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多张
    是否有分页:有分页

    相关截图

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     相关代码

    1. <%@ page language="java" contentType="text/html; charset=utf-8"
    2. pageEncoding="utf-8"%>
    3. <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
    4. <%
    5. String path = request.getContextPath();
    6. String basePath = request.getScheme() + "://" + request.getServerName() + ":" + request.getServerPort()
    7. + path + "/";
    8. %>
    9. html>
    10. <html>
    11. <head>
    12. <meta charset="utf-8">
    13. <title>教育科研信息管理系统title>
    14. <meta name="renderer" content="webkit">
    15. <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
    16. <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0">
    17. <link rel="stylesheet" type="text/css" href="<%=path %>/layui/css/layui.css">
    18. <link rel="stylesheet" type="text/css" href="<%=path %>/layui/css/admin.css">
    19. <link rel="stylesheet" type="text/css" href="<%=path %>/layui/css/login.css">
    20. head>
    21. <body ><%-- style="
    22. background-image:url(<%=path %>/img/b2.jpg);
    23. background-repeat:no-repeat;background-size:cover;" --%>
    24. <form method="post" id="loginForm" name="loginForm">
    25. <div class="layadmin-user-login layadmin-user-display-show" id="LAY-user-login" style="display: none;">
    26. <div class="layadmin-user-login-main">
    27. <div class="layadmin-user-login-box layadmin-user-login-header">
    28. <h2 style="font-size:50px;">教育科研信息管理系统登录h2>
    29. div>
    30. <div class="layadmin-user-login-box layadmin-user-login-body layui-form">
    31. <div class="layui-form-item">
    32. <label class="layadmin-user-login-icon layui-icon layui-icon-username" for="LAY-user-login-cellphone">label>
    33. <input type="text" name="userName" lay-verify="userName" id="userName" placeholder="用户名" class="layui-input">
    34. div>
    35. <div class="layui-form-item">
    36. <label class="layadmin-user-login-icon layui-icon layui-icon-password" for="LAY-user-login-password">label>
    37. <input type="password" name="password" lay-verify="password" id="password" placeholder="密码" class="layui-input">
    38. div>
    39. <div class="layui-form-item" >
    40. <div class="layui-input-inline" style="width:100%">
    41. <select name="type" id="type">
    42. <option value="1" selected>管理员option>
    43. <option value="2">教师option>
    44. <option value="3">评审员option>
    45. select>
    46. div>
    47. div>
    48. <div class="layui-form-item">
    49. <a type="button" id="denglu" class="layui-btn layui-btn-fluid">登陆a>
    50. div>
    51. <div class="layui-form-item">
    52. <a href="toIndex" class="layui-btn layui-btn-fluid" >返回首页a>
    53. div>
    54. <span id="error2" style="color:red;">${msg1}span>
    55. div>
    56. div>
    57. div>
    58. form>
    59. <script src="<%=path %>/layui/layui.js">script>
    60. <script src="<%=path %>/layui/jquery-1.9.1.min.js">script>
    61. <script>
    62. layui.use([ 'form','jquery','layer' ], function() {
    63. var form = layui.form,
    64. layer = layui.layer,
    65. $= layui.jquery;
    66. form.render();//这句一定要加,占坑
    67. $('#denglu').click(function(){
    68. var userName = $.trim($('#userName').val());
    69. var password = $.trim($("#password").val());
    70. var type = $.trim($("#type").val());
    71. if(userName == ''){
    72. layer.msg('用戶名不能为空',function() {time:2000});
    73. return false;
    74. }
    75. if(password == ''){
    76. layer.msg('密码不能为空',function() {time:2000});
    77. return false;
    78. }
    79. $.ajax({
    80. type: "post", // post或get
    81. url: "login", // 提交路径
    82. data: {
    83. userName: userName,
    84. password: password,
    85. type:type,
    86. },
    87. // dataType: "json", // 指定后台传来的数据是json格式
    88. success: function(data) {
    89. if (data == "main") {
    90. layer.msg('登陆成功!', {icon: 6});
    91. // 延迟跳转
    92. window.setTimeout("window.location='toMain'",900);
    93. } else if(data == 'index'){
    94. layer.msg('登陆成功!', {icon: 6});
    95. window.setTimeout("window.location='toIndex'",900);
    96. }else {
    97. layer.msg('账号或密码错误!', {icon: 5});
    98. }
    99. },
    100. error: function(err) {}
    101. })
    102. })
    103. });
    104. script>
    105. body>
    106. html>
    1. /**
    2. * 登录
    3. * @param userName
    4. * @param request
    5. * @param password
    6. * @param session
    7. * @param response
    8. * @param mv
    9. * @return
    10. * @throws ServletException
    11. * @throws IOException
    12. */
    13. @RequestMapping("/login")
    14. @ResponseBody
    15. public String login(@RequestParam("userName")String userName,
    16. HttpServletRequest request,@RequestParam("password")String password,
    17. HttpSession session,HttpServletResponse response) throws ServletException, IOException {
    18. session.removeAttribute("admin");
    19. session.removeAttribute("user");
    20. session.removeAttribute("student");
    21. String message = "error";
    22. String type=request.getParameter("type").toString();
    23. if(type != null && type.equals("1")) {
    24. Admin admin1 = userService.selectAdmin(userName,password);
    25. if(admin1 != null){
    26. request.getSession().setAttribute("admin", admin1);
    27. message = "main";
    28. }
    29. }else if(type != null && type.equals("2")){
    30. User te = userService.selectUser(userName,password,"1");
    31. if(te != null){
    32. request.getSession().setAttribute("user", te);
    33. message = "main";
    34. }
    35. }else if(type != null && type.equals("3")){
    36. User te = userService.selectUser(userName,password,"2");
    37. if(te != null){
    38. request.getSession().setAttribute("user", te);
    39. message = "main";
    40. }
    41. }
    42. else if(type != null && type.equals("4")){
    43. Student student = studentService.selectStudent(userName,password);
    44. if(student != null){
    45. request.getSession().setAttribute("student", student);
    46. message = "index";
    47. }
    48. }
    49. return message;
    50. }

    其他相关代码都是类似的,主要是前端jsp和后端控制器交互比较重要!!!非开源!!!!!!
    其他模块代码都是类似的,此项目适合初学者学习借鉴,项目整体比较简单,可用作于期末考核,课设,毕设等方面的作业!!!!!
    喜欢的朋友的点赞加关注,感兴趣的同学可以研究!!!!!
    感谢  = v =

     

  • 相关阅读:
    python:ADB通过包名打开应用
    LeetCode 热题 HOT 100(更新中)
    GD32F4xx GCC编译
    CFAR检测MATLAB仿真
    vue3导出表格excel(支持多sheet页),并自定义导出样式
    Linux shell脚本之回顾及实用笔记
    1055 The World‘s Richest
    Qt加载本地图片转为YUV420P格式数据
    Mybatis——SqlSession的工作流程
    Swagger的简单介绍,集成,以及如何在生产环境中关闭swagger,在测试和开发环境中自动打开
  • 原文地址:https://blog.csdn.net/qq_43485489/article/details/125995829