1961 Springboot自习室预约系统idea开发mysql数据库web结构java编程计算机网页源码maven项目

news2024/11/25 20:19:59

一、源码特点
  springboot 自习室预约管理系统是一套完善的信息系统,结合springboot框架和bootstrap完成本系统,对理解JSP java编程开发语言有帮助系统采用springboot框架(MVC模式开发),系统具有完整的源代码和数据库,系统主要采用B/S模式开发。

springboot 校园自习室预约系统


前段主要技术 bootstrap.css jquery
后端主要技术 springboot
数据库 mysql
开发工具 IDEA  JDK1.8 TOMCAT 8.5

二、功能介绍
自习室预约管理系统要满足以下几个方面的功能需求:
(1)用户管理:对用户信息进行添加、删除、修改和查看
(2)公告管理:对公告信息进行添加、删除、修改和查看
(3)教室管理:对教室信息进行添加、删除、修改和查看
(4)座位管理:对座位信息进行添加、删除、修改和查看、批量添加
(5)教室使用管理:对教室使用信息进行添加、删除、修改和查看,按照日期批量添加
(6)预约教室座位管理:对预约教室座位信息进行添加、删除、修改和查看
(7)时间段管理:对时间段信息进行添加、删除、修改和查看 
(8)预约管理:对预约信息进行添加、删除、修改和查看 图形化统计等
(9)预约规则管理:对预约规则信息进行添加、删除、修改和查看
(10)个人信息修改

数据库设计 

CREATE TABLE `yonghu` (
`yhid` int(11) NOT NULL auto_increment,
`yhm` VARCHAR(40) default NULL COMMENT '用户名',
`mm` VARCHAR(40) default NULL COMMENT '密码',
`xm` VARCHAR(40) default NULL COMMENT '姓名',
`qx` VARCHAR(40) default NULL COMMENT '权限',
`sfz` VARCHAR(40) default NULL COMMENT '身份证',
`sjh` VARCHAR(40) default NULL COMMENT '手机号',
`zcsj` VARCHAR(40) default NULL COMMENT '注册时间',  PRIMARY KEY  (`yhid`)
) ENGINE=InnoDB DEFAULT CHARSET=gb2312;
CREATE TABLE `gonggao` (
`ggid` int(11) NOT NULL auto_increment,
`bt` VARCHAR(40) default NULL COMMENT '标题',
`nr` VARCHAR(40) default NULL COMMENT '内容',
`fbsj` VARCHAR(40) default NULL COMMENT '发布时间',  PRIMARY KEY  (`ggid`)
) ENGINE=InnoDB DEFAULT CHARSET=gb2312;
CREATE TABLE `jiaoshi` (
`jsid` int(11) NOT NULL auto_increment,
`jsmc` VARCHAR(40) default NULL COMMENT '教室名称',
`wz` VARCHAR(40) default NULL COMMENT '位置',
`rl` VARCHAR(40) default NULL COMMENT '容量',
`ss` VARCHAR(40) default NULL COMMENT '设施',
`bz` VARCHAR(40) default NULL COMMENT '备注',  PRIMARY KEY  (`jsid`)
) ENGINE=InnoDB DEFAULT CHARSET=gb2312;
CREATE TABLE `zuowei` (
`zwid` int(11) NOT NULL auto_increment,
`zwh` VARCHAR(40) default NULL COMMENT '座位号',
`js` VARCHAR(40) default NULL COMMENT '教室',  PRIMARY KEY  (`zwid`)
) ENGINE=InnoDB DEFAULT CHARSET=gb2312;
CREATE TABLE `jssy` (
`jssyid` int(11) NOT NULL auto_increment,
`yyjs` VARCHAR(40) default NULL COMMENT '预约教室',
`jsmc` VARCHAR(40) default NULL COMMENT '教室名称',
`rq` VARCHAR(40) default NULL COMMENT '日期',
`xyry` VARCHAR(40) default NULL COMMENT '现有容易',
`yyrl` VARCHAR(40) default NULL COMMENT '已用容量',
`zt` VARCHAR(40) default NULL COMMENT '状态',
`scsj` VARCHAR(40) default NULL COMMENT '生成时间',  PRIMARY KEY  (`jssyid`)
) ENGINE=InnoDB DEFAULT CHARSET=gb2312;
CREATE TABLE `yyjszw` (
`yyjszwid` int(11) NOT NULL auto_increment,
`yyjs` VARCHAR(40) default NULL COMMENT '预约教室',
`zw` VARCHAR(40) default NULL COMMENT '座位',
`zt` VARCHAR(40) default NULL COMMENT '状态',
`yh` VARCHAR(40) default NULL COMMENT '用户',  PRIMARY KEY  (`yyjszwid`)
) ENGINE=InnoDB DEFAULT CHARSET=gb2312;
CREATE TABLE `sjd` (
`sjdid` int(11) NOT NULL auto_increment,
`sjd` VARCHAR(40) default NULL COMMENT '时间段',
`sm` VARCHAR(40) default NULL COMMENT '说明',  PRIMARY KEY  (`sjdid`)
) ENGINE=InnoDB DEFAULT CHARSET=gb2312;

代码设计

 /**教室使用列表 查询jssy
	 * 
	 */
    @RequestMapping(value = "listpage")
    public ModelAndView  listpage(HttpServletRequest request, HttpServletResponse response)  {
        try {
            request.setCharacterEncoding("gb2312");//强制字符集
        }catch(Exception e){
            e.printStackTrace();
        }
      Map<String,Object> map= new HashMap<String,Object>();

        ModelAndView mav = new ModelAndView();//初始化
        mav.setViewName("jssy/jssylist");//跳转jsp 页面
	String sql="";
        String jssyid=(String)request.getParameter("jssyid");
        if(jssyid!=null&&!jssyid.equals("")){
           // System.out.println(jssyid);
          	sql+=" and jssyid like '%"+jssyid+"%'";//符合条件 拼接sql 教室使用编号

        }
        String yyjs=(String)request.getParameter("yyjs");
        if(yyjs!=null&&!yyjs.equals("")){
           // System.out.println(yyjs);
          	sql+=" and yyjs like '%"+yyjs+"%'";//符合条件 拼接sql 预约教室

        }
        String jsmc=(String)request.getParameter("jsmc");
        if(jsmc!=null&&!jsmc.equals("")){
           // System.out.println(jsmc);
          	sql+=" and jsmc like '%"+jsmc+"%'";//符合条件 拼接sql 教室名称

        }
        String rq=(String)request.getParameter("rq");
        if(rq!=null&&!rq.equals("")){
           // System.out.println(rq);
          	sql+=" and rq like '%"+rq+"%'";//符合条件 拼接sql 日期

        }
        String xyry=(String)request.getParameter("xyry");
        if(xyry!=null&&!xyry.equals("")){
           // System.out.println(xyry);
          	sql+=" and xyry like '%"+xyry+"%'";//符合条件 拼接sql 现有容易

        }
        String yyrl=(String)request.getParameter("yyrl");
        if(yyrl!=null&&!yyrl.equals("")){
           // System.out.println(yyrl);
          	sql+=" and yyrl like '%"+yyrl+"%'";//符合条件 拼接sql 已用容量

        }
        String zt=(String)request.getParameter("zt");
        if(zt!=null&&!zt.equals("")){
           // System.out.println(zt);
          	sql+=" and zt like '%"+zt+"%'";//符合条件 拼接sql 状态

        }
        String scsj=(String)request.getParameter("scsj");
        if(scsj!=null&&!scsj.equals("")){
           // System.out.println(scsj);
          	sql+=" and scsj like '%"+scsj+"%'";//符合条件 拼接sql 生成时间

        }


        List list=null;
	try{
	list=jssydao.querylist(sql);//查询jssy 表数据返回 list对象
	}catch(Exception e){
            e.printStackTrace();;
        }

        mav.addObject("list",list);//赋值变量
       

        return mav;
    }

	 /**教室使用添加方法 对表 jssy 进行添加
	 * 
	 */
    @RequestMapping(value = "add")
    public ModelAndView  add(HttpServletRequest request, HttpServletResponse response){

        try {
            request.setCharacterEncoding("gb2312");//强制字符集
        }catch(Exception e){
            e.printStackTrace();
        }
        ModelAndView mav = new ModelAndView();//初始化
        mav.setViewName("jssy/jssyadd");
        jssy bean=new jssy();
	
        String jssyid=(String)request.getParameter("jssyid");//教室使用编号 变量
        bean.setJssyid(jssyid);//赋值封装

        String yyjs=(String)request.getParameter("yyjs");//预约教室 变量
        bean.setYyjs(yyjs);//赋值封装

        String jsmc=(String)request.getParameter("jsmc");//教室名称 变量
        bean.setJsmc(jsmc);//赋值封装

        String ksrq=(String)request.getParameter("ksrq");//日期 变量

        String jsrq=(String)request.getParameter("jsrq");//日期 变量


        String xyry=(String)request.getParameter("xyry");//现有容易 变量
        bean.setXyry(xyry);//赋值封装

        String yyrl=(String)request.getParameter("yyrl");//已用容量 变量
        bean.setYyrl(yyrl);//赋值封装

        String zt=(String)request.getParameter("zt");//状态 变量
        bean.setZt(zt);//赋值封装

        String scsj=(String)request.getParameter("scsj");//生成时间 变量
        bean.setScsj(scsj);//赋值封装



 DBO db=new DBO();
 String sql="";
 ResultSet rs=null;
 String rl="";
String rq="";
	try{
        sql="select * from jiaoshi where jsmc='"+jsmc+"'";
        rs=db.query(sql);
        if(rs.next()){
            rl=rs.getString("rl");
        }

        List li= StaticMethod.getDayList(ksrq,jsrq);
        for (int i=0;i<li.size();i++){
            rq=li.get(i).toString();
            db.open();
            sql="delete from jssy where jsmc='"+jsmc+"' and rq='"+rq+"' ";
            db.update(sql);

                bean.setRq(rq);
                bean.setYyrl(rl);
                bean.setXyry(rl);
                bean.setYyjs(rq+"_"+jsmc);
            jssydao.add(bean);//执行 添加 jssy 添加操作



                sql="delete from yyjszw where yyjs='"+rq+"_"+jsmc+"'";
                db.update(sql);
                db.open();
                sql="select * from zuowei where js='"+jsmc+"' ";
                rs=db.query(sql);
                while(rs.next()){

                    sql="insert into yyjszw(yyjs,zw,zt,yh) values('"+rq+"_"+jsmc+"','"+rs.getString("zwh")+"','正常','')";
                    db.open();
                    db.update(sql);

                }


        }



	 }catch(Exception e){
            e.printStackTrace();;
        }
	

       

        request.setAttribute("msg", "<script>alert('添加成功');</script>");//操作提示

        return addpage(request,response);

    }

三、注意事项
1、管理员账号:admin密码:admin 数据库配置文件DBO.java
2、开发环境为IDEA开发,数据库为mysql,使用java语言开发。
3、数据库文件名是javayuyue.sql 系统名称yuyue
4、地址:http://127.0.0.1:8080/login.jsp

四 系统实现

需要源码 其他的定制服务  下方联系卡片↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓ 或者私信作者

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

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

相关文章

潮玩手办盲盒前端项目模版的技术探索与应用案例

一、引言 在数字化时代&#xff0c;随着消费者对个性化和艺术化产品的需求日益增长&#xff0c;潮玩手办和盲盒市场逐渐崭露头角。为了满足这一市场需求&#xff0c;前端技术团队需要构建一个功能丰富、用户友好的在线平台。本文旨在探讨潮玩手办盲盒前端项目模版的技术实现&a…

光学相机市场格局:中国光学相机市场评估及未来发展趋势研究报告

欢迎关注GZH《光场视觉》 光学相机行业定义 光学相机是一种利用光学镜头和感光材料&#xff08;如胶片&#xff09;或数字传感器来捕捉图像的装置。光学相机&#xff0c;也常被称作传统相机或胶片相机&#xff0c;其工作原理基于光的折射和聚焦。当光线通过相机的镜头进入时&…

企业如何顺利申请防水防腐保温二级资质

为确保企业能够顺利申请防水防腐保温二级资质&#xff0c;以下是详细的申请步骤和要点&#xff0c;参考了相关文件中的数字和信息&#xff1a; 一、了解申请条件 企业资产&#xff1a;企业净资产需达到400万元以上。企业主要人员&#xff1a; 二级注册建造师&#xff1a;不少于…

vue3日历选择器

倒叙日历&#xff1a; <template><div class"date-picker"><div class"column" wheel"onYearScroll"><div v-for"(year, index) in displayedYears" :key"index" :class"{current: year current…

ARM相关理论知识

一、计算机的组成 1.输入设备&#xff1a;将数据与程序转换成计算机能够识别&#xff0c;存储&#xff0c;运算的形式&#xff0c;输送到计算机中。 2.输出设备&#xff1a;将计算机对程序和数据的运算结果输送到计算机外部设备 3.控制器&#xff1a;由程序技术器&#xff0…

2024全国青少年信息素养大赛图形化编程复赛评分标准及比赛大纲

一、 参赛技术要求 &#xff08;1&#xff09;竞赛平台 参赛选手使用官方竞赛平台进行比赛。 &#xff08;2&#xff09;网络环境 在能满足竞赛需求的联网环境下进行。 &#xff08;3&#xff09;浏览器 建议使用谷歌 Chrome 浏览器&#xff0c;版本号 100 及以上。 可以…

迎接第500家伙伴

今天&#xff0c;我们迎来了一个振奋人心的时刻&#xff1a;明道云签约伙伴正式突破500家&#xff01;这一重要里程碑不仅见证了我们的成长&#xff0c;更是对我们一直以来努力和坚持的最好证明。 迎接第500家伙伴 第500家加入明道云伙伴的是江苏中麒鑫控股&#xff08;集团&…

HarmonyOS(41) Badge 消息实现99+功能

Badge标记 Badge作用实现效果源码参考资料 Badge作用 APP里常见的功能是在一个tab的右上角展示未读消息99&#xff0c;HarmonyOS就提供了实现该功能的组件器组件。该组件支持展示数字、数字超过100自动展示99、文字。同时支持修改文字和数字的颜色&#xff0c;以及小圆点的背景…

【源码+文档+调试讲解】学术团队管理系统设计与实现

摘 要 现代经济快节奏发展以及不断完善升级的信息化技术&#xff0c;让传统数据信息的管理升级为软件存储&#xff0c;归纳&#xff0c;集中处理数据信息的管理方式。本学术团队管理系统就是在这样的大环境下诞生&#xff0c;其可以帮助使用者在短时间内处理完毕庞大的数据信息…

数据稀疏如何学好embedding?

在推荐系统中&#xff0c;冷启动或长尾是一个常见的问题&#xff0c;模型在数据量较少的user或item上的预测效果很差。造成冷启动样本预测效果不好的重要原因之一是&#xff0c;冷启动样本积累的数据比较少&#xff0c;不足以通过训练得到一个好的embedding&#xff08;通过use…

开源/标准版 首页 logo大小修改

这个是diy的&#xff1a; 文件地址&#xff1a;template/uni-app/pages/index/diy/components/headerSerch.vue 这个是页面设计的&#xff1a; 文件地址&#xff1a;template/uni-app/pages/index/visualization/components/headerSerch.vue 先删除这三个 然后改下图的地方

How to persist LangChain conversation memory (save and load)

题意&#xff1a;如何持久化 LangChain 对话记忆&#xff08;保存和加载&#xff09; 问题背景&#xff1a; Im creating a conversation like so: 我正在创建一个对话&#xff0c;如下所示&#xff1a; llm ChatOpenAI(temperature0, openai_api_keyOPENAI_API_KEY,…

python CSSE7030

1 Introduction In this assignment, you will implement a (heavily) simplified version of the video game ”Into The Breach”. In this game players defend a set of civilian buildings from giant monsters. In order to achieve this goal, the player commands a s…

FuTalk设计周刊-Vol.026

&#x1f525;&#x1f525;AI漫谈 热点捕手&#x1f525;&#x1f525; 1、Hotshot-XL AI文本转GIF Hotshot-XL 是一种 AI 文本转 GIF 模型&#xff0c;经过训练可与Stable Diffusion XL一起使用。能够使用任何现有或新微调的 SDXL 模型制作 GIF。 网页体验 网页http://htt…

【吊打面试官系列-MyBatis面试题】MyBatis 框架的缺点?

大家好&#xff0c;我是锋哥。今天分享关于 【MyBatis 框架的缺点&#xff1f;】面试题&#xff0c;希望对大家有帮助&#xff1b; MyBatis 框架的缺点&#xff1f; 1、SQL 语句的编写工作量较大&#xff0c;尤其当字段多、关联表多时&#xff0c;对开发人员编写 SQL 语句的功底…

昇思25天学习打卡营第5天|数据变换Transforms

数据变换Transforms 介绍Transforms分类Common TransformsVision TransformsText TransformsPythonTokenizer LookupLambda Transforms 参考 介绍 MindSpore提供不同种类的数据变换&#xff08;Transforms&#xff09;&#xff0c;配合数据处理Pipeline来实现数据预处理。 所有…

Nest使用multer实现文件上传,并实现大文件分片上传(下)

上节我们学了在 Express 里用 multer 包处理 multipart/form-data 类型的请求中的 file。 单个、多个字段的单个、多个 file 都能轻松取出来。 接下来我们就来学习一下在Nest 里使用multer。 一,Nest如何使用multer实现文件上传 首先我们先创建一个Nest项目&#xff1a; nest…

BFS 解决拓扑排序

例题一 解法&#xff1a; 算法思路&#xff1a; 原问题可以转换成⼀个拓扑排序问题。⽤ BFS 解决拓扑排序即可。 拓扑排序流程&#xff1a; a. 将所有⼊度为 0 的点加⼊到队列中&#xff1b; b. 当队列不空的时候&#xff0c;⼀直循环&#xff1a; i. 取出队头元素&am…

Transformers 安装与基本使用

文章目录 Github文档推荐文章简介安装官方示例中文情感分析模型分词器 Tokenizer填充 Padding截断 Truncation google-t5/t5-small使用脚本进行训练Pytorch 机器翻译数据集下载数据集格式转换 Github https://github.com/huggingface/transformers 文档 https://huggingface…

上海亚商投顾:沪指震荡下跌 多只银行股创年内新高

上海亚商投顾前言&#xff1a;无惧大盘涨跌&#xff0c;解密龙虎榜资金&#xff0c;跟踪一线游资和机构资金动向&#xff0c;识别短期热点和强势个股。 一.市场情绪 三大指数昨日震荡调整&#xff0c;沪指尾盘跌近1%&#xff0c;深成指、创业板指均跌超1.5%。 板块概念方面&a…