• 基于javaweb的顶岗实习管理系统(jsp+servlet)


    系统简介

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

    三个角色:管理员,教师,学生


    模块简介

    管理员:

    1、登录

    2、学生管理

    3、公告管理

    4、教师管理

    5、任务分类管理

    6、实习任务管理

    7、实习任务申请管理

    8、实习报告分数管理

    学生:

    1、登录

    2、个人信息管理

    3、查看公告

    4、查看实习任务

    5、申请实习任务

    6、查看实习报告分数

    教师:

    1、登录

    2、个人信息管理

    3、查看公告

    4、查看实习报告

    5、实习报告打分


    项目简介
    难度等级:✩✩✩
    用户类型:3角色(管理员,教师,学生)
    设计模式:MVC
    项目架构:B/S架构
    开发语言:Java语言
    前端技术:HTML、CSS、JS、JQuery等
    后端技术:JSP、servlet框架
    运行环境:Windows7或10、JDK1.8
    运行工具:本系统采用eclipse开发,支持idea运行。
    数  据  库:MySQL5.5/5.7/8.0版本
    运行服务器:Tomcat7.0/8.0/8.5/9.0等版本
    是否基于Maven环境:否
    是否采用框架:是
    数据库表数量:8张表
    JSP页面数量:30多张
    是否有分页:有分页

    视频展示

    javaweb顶岗实习管理系统_哔哩哔哩_bilibili本项目采用eclipse工具开发(idea也可运行),jsp+servlet+jquery技术编写,数据库采用的是mysql,navicat开发工具。系统一共分为3个角色分别是:学生,管理员,教师有需要加 微信 hhh1148720753 或者 QQ1148720753(非开源,非开源,非开源,重要事情说三遍), 视频播放量 77、弹幕量 0、点赞数 0、投硬币枚数 0、收藏人数 0、转发人数 0, 视频作者 码盗666, 作者简介 java码农一枚,相关视频:javawebCT图像管理系统,javaweb电力设备监测管理系统,javaweb家庭财务管理系统,健身房俱乐部管理系统,2023-mysql与navicat的安装,基于javaweb宿舍管理系统(eclipse_mysql_jsp_servlet),基于ssm的高校学生选课系统,【Java项目】java图书管理系统(附源码)_Java课程设计项目_java毕业设计,【Springboot项目实战】简约个人博客系统搭建,Spring boot + mybatis-plus + easyui | 全套完整 | 附源码笔!,创建第一个web项目~解决报错+设置中文+设置首页icon-default.png?t=N7T8https://www.bilibili.com/video/BV19z4y1j77A/?spm_id_from=333.999.0.0

    获取地址 

    xystgl · master · 码盗_java_bishe / java系统 · GitCodeGitCode——开源代码托管平台,独立第三方开源社区,Git/Github/Gitlabicon-default.png?t=N7T8https://gitcode.net/qq_43485489/javaweb/-/blob/master/xystgl

    图片展示

    部分代码展示 

    登录

    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 lang="en">
    11. <head>
    12. <meta charset="utf-8">
    13. <meta http-equiv="X-UA-Compatible" content="IE=edge">
    14. <meta name="viewport" content="width=device-width, initial-scale=1.0">
    15. <meta name="description" content="Neon Admin Panel">
    16. <meta name="author" content="">
    17. <title>登录title>
    18. <link rel="stylesheet" href="resource/main/static/css/jquery-ui-1.10.3.custom.min.css">
    19. <link rel="stylesheet" href="resource/main/static/css/entypo.css">
    20. <link rel="stylesheet" href="resource/main/static/css/css.css">
    21. <link rel="stylesheet" href="resource/main/static/css/bootstrap.css">
    22. <link rel="stylesheet" href="resource/main/static/css/neon-core.css">
    23. <link rel="stylesheet" href="resource/main/static/css/neon-theme.css">
    24. <link rel="stylesheet" href="resource/main/static/css/neon-forms.css">
    25. <link rel="stylesheet" href="resource/main/static/css/custom.css">
    26. <link href="resource/layui/css/layui.css" rel="stylesheet">
    27. <script src="resource/main/static/js/jquery-1.11.0.min.js">script>
    28. head>
    29. <body class="page-body login-page login-form-fall" data-url="http://neon.dev">
    30. <script type="text/javascript">
    31. var baseurl = '';
    32. script>
    33. <div class="login-container">
    34. <div class="login-header login-caret">
    35. <div class="login-content">
    36. <span style="font-size:30px;">顶岗实习管理系统登录span>
    37. <div class="login-progressbar-indicator">
    38. <h3>43%h3>
    39. <span>logging in...span>
    40. div>
    41. div>
    42. div>
    43. <div class="login-progressbar">
    44. <div>div>
    45. div>
    46. <div class="login-form">
    47. <div class="login-content">
    48. <form role="form" id="loginForm">
    49. <div class="form-group">
    50. <div class="input-group">
    51. <div class="input-group-addon">
    52. <i class="entypo-user">i>
    53. div>
    54. <input type="text" class="form-control" name="userName" id="userName" placeholder="请输入用户名" autocomplete="off">
    55. div>
    56. div>
    57. <div class="form-group">
    58. <div class="input-group">
    59. <div class="input-group-addon">
    60. <i class="entypo-key">i>
    61. div>
    62. <input type="password" class="form-control" name="password" id="password" placeholder="请输入密码" autocomplete="off">
    63. div>
    64. div>
    65. <div class="form-group">
    66. <select name="type" id="type" class="form-control">
    67. <option value="" selected>请选择角色option>
    68. <option value="1">管理员option>
    69. <option value="2">学生option>
    70. <option value="3">教师option>
    71. select>
    72. div>
    73. <div class="form-group">
    74. <button type="button" id="login" class="btn btn-primary btn-block btn-login">
    75. <i class="entypo-login">i>
    76. 登录
    77. button>
    78. div>
    79. form>
    80. div>
    81. div>
    82. div>
    83. <script src="resource/main/static/js/main-gsap.js">script>
    84. <script src="resource/main/static/js/jquery-ui-1.10.3.minimal.min.js">script>
    85. <script src="resource/main/static/js/bootstrap.js">script>
    86. <script src="resource/main/static/js/joinable.js">script>
    87. <script src="resource/main/static/js/resizeable.js">script>
    88. <script src="resource/main/static/js/neon-api.js">script>
    89. <script src="resource/main/static/js/jquery.validate.min.js">script>
    90. <script src="resource/main/static/js/neon-login.js">script>
    91. <script src="resource/main/static/js/neon-custom.js">script>
    92. <script src="resource/main/static/js/neon-demo.js">script>
    93. <script src="resource/layui/layui.js">script>
    94. <script>
    95. $("#login").on("click", function() {
    96. var userName = $("#userName").val().trim(); // trim()去除空格
    97. var password = $("#password").val().trim();
    98. var type = $("#type").val();
    99. if(userName == ""){
    100. alert('账号不能为空!');
    101. return false;
    102. }
    103. if(password == ""){
    104. alert('密码不能为空!');
    105. return false;
    106. }
    107. if(type == ""){
    108. alert('请选择角色!');
    109. return false;
    110. }
    111. $.ajax({
    112. cache : true,
    113. type : "post",
    114. url : "LoginServlet?action=login",
    115. data : $("#loginForm").serialize(),
    116. async : false,
    117. success : function(e) {
    118. if (e == 'yes') {
    119. alert("登录成功!");
    120. window.parent.location.href = "UtilServlet?action=toMain";
    121. }else {
    122. alert("登录失败,账号或者密码错误!");
    123. }
    124. }
    125. })
    126. });
    127. script>
    128. <script>
    129. layui.use([ 'form','jquery','layer','upload' ], function() {
    130. var form = layui.form,
    131. layer = layui.layer,
    132. $ = layui.jquery,
    133. upload = layui.upload;
    134. form.render();//这句一定要加,占坑
    135. window.reg = function(e){
    136. layer.open({
    137. //调整弹框的大小
    138. area:['500px','800px'],
    139. shadeClose:true,//点击旁边地方自动关闭
    140. //动画
    141. anim:2,
    142. //弹出层的基本类型
    143. type: 2,
    144. title: '会员注册',
    145. //刚才定义的弹窗页面
    146. content: 'LoginServlet?action=toRegister', //这里content是一个URL,如果你不想让iframe出现滚动条,你还可以content: ['http://sentsin.com', 'no']
    147. });
    148. }
    149. })
    150. script>
    151. body>
    152. html>
    1. protected void login(HttpServletRequest request, HttpServletResponse response) throws Exception {// 跳转到添加用户界�?
    2. String userName = request.getParameter("userName");
    3. String password = request.getParameter("password");
    4. String type = request.getParameter("type");
    5. String message = "no";
    6. if (type != null && type.equals("1")) {// admin
    7. Admin admin = service.selectAdmin(userName, password);
    8. if (admin != null) {
    9. message = "yes";
    10. request.getSession().setAttribute("flag", 1);
    11. request.getSession().setAttribute("admin", admin);
    12. }
    13. } else if (type != null && type.equals("2")) {
    14. Student Student = service.seletStudent(userName, password);
    15. if (Student != null) {
    16. message = "yes";
    17. request.getSession().setAttribute("flag", 2);
    18. request.getSession().setAttribute("student", Student);
    19. }
    20. } else if (type != null && type.equals("3")) {
    21. Teacher teacher = service.selectTeacher(userName, password);
    22. if (teacher != null) {
    23. message = "yes";
    24. request.getSession().setAttribute("flag", 3);
    25. request.getSession().setAttribute("teacher", teacher);
    26. }
    27. }
    28. response.getWriter().print(message);
    29. }

    系统总结

    系统使用eclipse开发的(也可idea运行)
    相关技术:jsp,servlet,JavaScript,ajax,jquery,mvc结构,jdbc连接池C3p0,mysql,bootstrap。

    我的开发工具:eclipse2020,mysql5.7,navicat数据库管理工具,Jdk1.8,tomcat8.5,google浏览器。

    非开源!!!!!!
    项目截图中的数据,很多是用来测试的,需求自行添加合适的数据图片
    喜欢的朋友的点赞加关注,感兴趣的同学可以研究!!!!!

  • 相关阅读:
    唤醒键盘后无法立即隐藏键盘问题与键盘隐藏的四种方式
    Java异常处理机制
    1.3、三种交换方式
    转载-什么是微码Microcode
    树莓派更换国内可用镜像源
    VSCode设置成中文语言环境
    vue3+ts项目打包后的本地访问
    Json的使用,以及@JsonProperty和@JSONFiled注解的混淆
    Stm32_标准库_10_TIM_显示时间&日期
    使用java实现直接插入排序算法
  • 原文地址:https://blog.csdn.net/qq_43485489/article/details/133133444