javaWebssh学生系统myeclipse开发mysql数据库MVC模式java编程计算机网页设计

一、源码特点
     java ssh学生管理系统是一套完善的web设计系统(系统采用ssh框架进行设计开发),对理解JSP java编程开发语言有帮助,系统具有完整的源代码和数据库,系统主要采用B/S模
式开发。开发环境为TOMCAT7.0,Myeclipse8.5开发,数据库为Mysql5.0,使用java语言开发。

ssh 学生管理系统


二、功能介绍

满足系统不同用户角色的应用需求:根据需要,系统应对两种用户按其使用功能和权限进行角色划分,形成三种角色,分别是:
1.管理员:具有管理员信息管理与查看,学生信息管理与查看,教师信息管理与查看,课程信息管理与查看,成绩信息管理与查看;
2.学生:课程浏览、成绩浏览、个人信息修改;
3.教师:课程浏览、成绩管理、个人信息修改;

具体功能如下:
(1)管理员管理:对管理员信息进行添加、删除、修改和查看
(2)学生管理:对学生信息进行添加、删除、修改和查看
(3)教师管理:对教师信息进行添加、删除、修改和查看
(4)课程管理:对课程信息进行添加、删除、修改和查看
(5)成绩管理:对成绩信息进行添加、删除、修改和查看

系统ER 图 

控制层代码

public String add(){//对表chengji进行添加操作	int num=0;String sql="";ResultSet rs=null;DBO db=new DBO();try{sql="select count(1) as num from chengji where kc='"+chengji.getKc()+"' and xs='"+chengji.getXs()+"'";rs=db.query(sql);if(rs.next()){num=rs.getInt("num");}if(num>0){ServletActionContext.getRequest().setAttribute("msg", "<script>alert('添加失败,数据重复');</script>");}else {ServletActionContext.getRequest().setAttribute("msg", "<script>alert('添加成功');</script>");dao.addchengji(chengji);}}catch(Exception e){System.out.println(e.toString());}finally{db.close();}return "chengjiadd";}public String list(){//对成绩进行管理 对表chengji进行页面查询int size=10;//分页个数try{String hql=" from chengji where 1=1";String xs="";String kc="";if(ServletActionContext.getRequest().getParameter("xs")!=null){xs=ServletActionContext.getRequest().getParameter("xs").toString();if(!xs.equals("")){hql+=" and xs='"+ServletActionContext.getRequest().getParameter("xs").toString()+"'";}}if(ServletActionContext.getRequest().getParameter("kc")!=null){kc=ServletActionContext.getRequest().getParameter("kc").toString();if(!kc.equals("")){hql+=" and kc='"+ServletActionContext.getRequest().getParameter("kc").toString()+"'";}}int count=dao.getchengjis(hql).size();pageCount=count%size==0?count/size:(count/size+1);if(pageNum<1){pageNum=1;}else if(pageNum>pageCount){pageNum=pageCount;}chengjis=dao.getchengjis(hql, pageNum, size);}catch(Exception e){System.out.println(e.toString());}return "chengjilist";}public String listp(){//对成绩进行管理 对表chengji进行查询try{String sql=" from chengji where 1=1";if(ServletActionContext.getRequest().getSession().getAttribute("yhm")!=null){sql+=" and xs='"+ServletActionContext.getRequest().getSession().getAttribute("yhm").toString()+"'";}chengjis=dao.getchengjis(sql);}catch(Exception e){System.out.println(e.toString());}return "chengjilistp";}public String del(){//对成绩进行删除 对表chengji进行删除String keyid=ServletActionContext.getRequest().getParameter("keyid").toString();chengji tempbean=dao.getchengji("from chengji where cjid="+keyid);try{dao.delchengji(tempbean);}catch(Exception e){System.out.println(e.toString());}ServletActionContext.getRequest().setAttribute("msg", "<script>alert('删除成功');</script>");return list();}

持久层代码 

public int addchengji(chengji u){return addObj(u);}/*对表chengji进行删除操作*/public void delchengji(chengji u){delObj(u);}/*对表chengji进行查询单条记录返回一个实体bean对象*/public chengji getchengji(String hql){return (chengji)getObjByHql(hql);}@SuppressWarnings("unchecked")/*对表chengji查询结果集体操作*/public List<chengji> getchengjis(DetachedCriteria dc,int pageNum,int size){return (List<chengji>)getObjs(dc, (pageNum-1)*size, size);}/*对表chengji查询结果集体操作*/public List<chengji> getchengjis(String hql){return (List<chengji>)getObjsByHql(hql);}@SuppressWarnings("unchecked")/*对表chengji查询结果集体操作*/public List<chengji> getchengjis(String hql,int pageNum,int size){return (List<chengji>)getObjsByHql(hql,(pageNum-1)*size,size);}

hibernate 配置文件

<property name="kc" type="java.lang.String"><column name="kc" length="40"><comment>课程</comment></column>   </property><property name="xs" type="java.lang.String"><column name="xs" length="40"><comment>学生</comment></column>   </property><property name="cj" type="java.lang.String"><column name="cj" length="40"><comment>成绩</comment></column>   </property><property name="djsj" type="java.lang.String"><column name="djsj" length="40"><comment>登记时间</comment></column>   </property></class>


三、注意事项
    1、管理员账号:admin 密码:admin 数据库配置文件applicationContext.xml
     2、开发环境为TOMCAT7.0,Myeclipse8.5开发,数据库为Mysql5.0,使用java语言开发。
    3、数据库文件名是jspsshstu.sql,系统名称sshstu
    4、系统首页地址:http://127.0.0.1:8080/sshstu/login.jsp

四 系统实现


 源码获取 下方联系卡片↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓
 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/209547.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

前端开发中,Web Storage的存储数据的方法localstorage和sessionStorage的使用及区别

在 Web浏览器中存储数据以改善用户体验和提升Web应用程序性能是非常常见的。在大多数情况下&#xff0c;可供我们使用就是LocalStorage和SessionStorage。 本文中&#xff0c;我们将会从安全性和用户体验两个方面对SessionStorage和LocalStorage进行评估。然后我们将讨论如何根…

Linux驱动安装遇到的问题(Kernel configuration is invalid)(Invalid module format)

Linux驱动编译安装遇到的问题&#xff08;Kernel configuration is invalid&#xff09;&#xff08;Invalid module format&#xff09; 前言1. Kernel configuration is invalid2. Invalid module format2.1 第一种情况&#xff1a;内核模块编译的环境与现在insmod想要运行的…

python:mplfinance 画K线图+布林线

pip install mplfinance ; python 安装使用 TA-lib 安装主要在 http://www.lfd.uci.edu/~gohlke/pythonlibs/ 这个网站找到 TA_Lib-0.4.24-cp310-cp310-win_amd64.whl pip install /pypi/TA_Lib-0.4.24-cp310-cp310-win_amd64.whl 编写 mpf_kline_boll.py 如下 # -*- cod…

英语口语练习(背诵老友记)

There is nothing to tell! 这没什么好说的&#xff01; Hes just some guy I work with. 他不过是我的同事。 Cmon, youre going out with the guy! 少来了&#xff0c;你们都在约会了&#xff01; Theres gotta be something wrong with him! 这个男人一定有什么问题&…

华为OD机试真题-快递员的烦恼-2023年OD统一考试(C卷)

题目描述: 快递公司每日早晨,给每位快递员推送需要送到客户手中的快递以及路线信息,快递员自己又查找了一些客户与客户之间的路线距离信息,请你依据这些信息,给快递员设计一条最短路径,告诉他最短路径的距离。 注意: 1. 不限制快递包裹送到客户手中的顺序,但必须保证都…

【VRTK】【VR开发】【Unity】12-占位身体

课程配套学习资源下载 https://download.csdn.net/download/weixin_41697242/88485426?spm=1001.2014.3001.5503 【概要】 目前你会发现,就算存在非Trigger Collider的墙壁屏障等,也能够正常穿过,这会导致不沉浸的体验。你需要一个占位身体来实现让墙壁等碰撞并挡住自己…

基于java的贪吃蛇小游戏

贪吃蛇游戏需要做两点&#xff1a;图形界面和游戏逻辑。在 Java 中&#xff0c;可以使用 Swing 或 JavaFX 来创建图形界面。下面代码创建了一个简单的 Swing 窗口&#xff0c;实现了一个基本的贪吃蛇游戏。在游戏中&#xff0c;使用方向键控制贪吃蛇的移动&#xff0c;吃到食物…

`Numpy`数组中 数据的修改(第10讲)

Numpy数组中 数据的修改(第10讲)         🍹博主 侯小啾 感谢您的支持与信赖。☀️ 🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ…

YOLOv5独家原创改进:SPPF自研创新 | 可变形大核注意力(D-LKA Attention),大卷积核提升不同特征感受野的注意力机制

💡💡💡本文自研创新改进: 可变形大核注意力(D-LKA Attention)高效结合SPPF进行二次创新,大卷积核提升不同特征感受野的注意力机制。 收录 YOLOv5原创自研 https://blog.csdn.net/m0_63774211/category_12511931.html 💡💡💡全网独家首发创新(原创),适合p…

Python学习路线 - Python语言基础入门 - 函数使用

Python学习路线 - Python语言基础入门 - 函数使用 函数介绍函数函数的快速体验 函数的定义函数的定义 函数的参数函数的传入参数函数的传入参数 - 传参定义函数的传入参数 - 语法解析练习案例&#xff1a;升级版自动查询核酸 函数的返回值函数返回值的定义返回值的语法None类型…

Python----异常

1、什么是异常 当检测到一个错误时&#xff0c;解释器就无法继续执行了&#xff0c;反而出现了一些错误的提示&#xff0c;这就是所谓的"异常"。 2、异常演示 # 运算符 # print(10/0) # 文件异常 f open(python.txt, r) content f.readlines() print(content) 3…

vue中el-upload结合vuedraggable实现图片的上传、排序、删除以及预览等功能

实现效果&#xff1a; 功能实现&#xff1a; 要实现图片的拖拽功能首先需要安装vuedraggable库 npm install vuedraggable --save在组件中引入并注册 vuedraggable <script>import draggable from "vuedraggable";export default {// 注册组件components: {…

SI24R03 高度集成低功耗SOC 2.4G 收发一体芯片

今天给大家介绍一款Soc 2.4G 收发一体模块-SI24R03 Si24R03是一款高度集成的低功耗无线SOC芯片&#xff0c;芯片为QFN32 5x5mm封装&#xff0c;集成了资源丰富的MCU内核与2.4G收发器模块&#xff0c;最低功耗可达1.6uA&#xff0c;极少外围器件&#xff0c;大幅降低系统应用成本…

详解Android单元测试最佳实践

目的 充分的单元测试就是提高代码质量最有效的手段之一&#xff0c;而单元测试严重依赖代码的可测试性&#xff0c;本文主要通过一个简单的DEMO演示如何对Android原生应用进行单元测试&#xff0c;同时示例代码采用MVP模式以提高代码的可读性和可测试性 简介 在Android原生应…

mmdetection测试保存到新的文件夹,无需标签

这个是用demo这个代码测试的&#xff0c;需要先训练一个pth文件夹&#xff0c;训练之后再调用pth文件夹进行测试。测试的代码文件名是&#xff1a;image_demo_new.py&#xff0c;代码如系所示&#xff1a; # Copyright (c) OpenMMLab. All rights reserved. import asyncio fr…

使用selenium的edge浏览器登录某为

互联网上基本都是某哥的用法&#xff0c;其实edge和某哥的用法是一样的就有一下参数不一样。 一、运行环境 Python&#xff1a;3.7 Selenium&#xff1a;4.11.2 Edge&#xff1a;版本 120.0.2210.61 (正式版本) (64 位) 二、执行代码 from time import sleepfrom selenium…

调新浪分享

前端写一个按钮,通过按钮来调出新浪界面, window.location.href http://service.weibo.com/share/share.php?url 这行代码调出新浪分享界面,要是想要添加一些图片和文字 使用: window.location.href http://service.weibo.com/share/share.php?url encodeURIComponent…

P2 Qt Creator创建第一个Qt程序

前言 &#x1f3ac; 个人主页&#xff1a;ChenPi &#x1f43b;推荐专栏1: 《C_ChenPi的博客-CSDN博客》✨✨✨ &#x1f525; 推荐专栏2: 《LLinux C应用编程&#xff08;概念类&#xff09;_ChenPi的博客-CSDN博客》✨✨✨ &#x1f33a;本篇简介 &#xff1a;这一章我们学…

Python基础——两个常用且容易忘记的知识点

1. replace函数的第三个参数 replace 方法提供了一个可选的参数 count&#xff0c;可以用于指定替换的次数。你可以将 count 设置为 1 来限制替换的次数&#xff0c;只替换第一个匹配项。 下面是使用 replace 方法限制替换次数的示例&#xff1a; date_str "2023/05/1…

二百一十一、Flume——Flume实时采集Linux中的Hive日志写入到HDFS中(亲测、附截图)

一、目的 为了实现用Flume实时采集Hive的操作日志到HDFS中&#xff0c;于是进行了一场实验 二、前期准备 &#xff08;一&#xff09;安装好Hadoop、Hive、Flume等工具 &#xff08;二&#xff09;查看Hive的日志在Linux系统中的文件路径 [roothurys23 conf]# find / -name…