基于SSM框架下的JAVA学生宿舍管理系统
每天记录学习,每天会有好心情。*^_^*
今天和一个朋友共同完成了一个学生宿舍管理系统项目,我们在开发时选用的框架是SSM(MYECLIPSE)框架。我这个朋友知识有限,只会这个框架,哈哈,都是为了方便他。和往常一样选用简单又便捷的MYECLIPSE作为开发工具,这是一个 后台项目。这个系统的介绍是这样的:学生宿舍管理系统是为了更合理,方便地管理学生住宿问题的系统,能方便地解决学生在住宿过程中遇到的各种不同的问题,可以实现许多功能,学生入住登记;来访者查询登记;宿舍维修;电费查询等。通过调查统计现有宿舍管理系统的功能以及宿舍中可能涉及的问题,从后勤保障人员方便管理和学生能够方便的参与的角度出发,探寻可行的方案进行解决,在中期建立起一个雏形并让其实际的运作起来,针对这个雏形再次调研提出更加完善的可行性建议,最终做出可有学生访问登录的宿舍管理系统。,一个学生宿舍管理系统应包含用户角色有管理员、学生。为了能让用户顺利登陆系统完成相关操作,需要为每种登陆角色设置账户和密码字段。
系统中宿舍、学生之间具有较强的联系性。他们之间的关系为学生的宿舍与宿舍的bianhao字段对应、学生的宿舍id与宿舍的id字段对应
。在学生表中可以体现出这种关系。
总结得出该系统所有数据为:管理员(admin)、学生(xuesheng)、宿舍(sushe)
管理员表
字段名 | 类型 | 属性 | 描述 id | INT(11) | PRIMARY KEY | 管理员id username | VARCHAR(255) | | 账号 password | VARCHAR(255) | | 密码
学生表
字段名 | 类型 | 属性 | 描述 id | INT(11) | PRIMARY KEY | 学生id mingzi | VARCHAR(255) | | 名字 sushe | VARCHAR(255) | | 宿舍 susheid | VARCHAR(255) | | 宿舍id banji | VARCHAR(255) | | 班级 lianxifangshi | VARCHAR(255) | | 联系方式 username | VARCHAR(255) | | 账号 password | VARCHAR(255) | | 密码
宿舍表
字段名 | 类型 | 属性 | 描述 id | INT(11) | PRIMARY KEY | 宿舍id bianhao | VARCHAR(255) | | 编号 jieshao | VARCHAR(255) | | 介绍
SET FOREIGN_KEY_CHECKS=0; -- ---------------------------- -- ---------------------------- -- Table structure for ggxueshengsushe -- ---------------------------- DROP TABLE IF EXISTS `t_admin`; CREATE TABLE `t_admin` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '管理员id',`username` VARCHAR(255) DEFAULT NULL COMMENT '账号',`password` VARCHAR(255) DEFAULT NULL COMMENT '密码',PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='管理员'; -- ---------------------------- DROP TABLE IF EXISTS `t_xuesheng`; CREATE TABLE `t_xuesheng` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '学生id',`mingzi` VARCHAR(255) DEFAULT NULL COMMENT '名字',`sushe` VARCHAR(255) DEFAULT NULL COMMENT '宿舍',`susheid` INT(11) DEFAULT NULL COMMENT '宿舍id',`banji` VARCHAR(255) DEFAULT NULL COMMENT '班级',`lianxifangshi` VARCHAR(255) DEFAULT NULL COMMENT '联系方式',`username` VARCHAR(255) DEFAULT NULL COMMENT '账号',`password` VARCHAR(255) DEFAULT NULL COMMENT '密码',PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='学生'; -- ---------------------------- DROP TABLE IF EXISTS `t_sushe`; CREATE TABLE `t_sushe` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '宿舍id',`bianhao` VARCHAR(255) DEFAULT NULL COMMENT '编号',`jieshao` VARCHAR(5000) DEFAULT NULL COMMENT '介绍',PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='宿舍';
添加宿舍模块:
通过添加宿舍模块,可以完成宿舍的添加操作。在页面中跳转到添加宿舍页面,输入宿舍的所有信息,点击添加操作,可以将宿舍数据以post提交到susheController中。宿舍所包含的字段信息包括编号,介绍。在susheController中通过定义sushe接受所有的宿舍参数。使用sushedao的insert方法将sushe实体插入到数据库中。完成数据的添加操作,在susheMapper中匹配对应的sushexml完成插入sql语句的执行操作。该部分核心代码如下:
通过sushedao的insert方法将页面传输的宿舍添加到数据库中 sushedao.insert(sushe);
将添加宿舍成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "添加宿舍成功");
返回宿舍管理界面
return "forward:/tianjiasushe.action";
查询宿舍模块:
在后台中定义宿舍查询模块,在侧边栏中点击宿舍管理,可以跳转到宿舍管理界面。在该页面中通过susheController中定义susheguanli响应宿舍查询模块。在susheguanli中查询出所有信息,返回页面进行循环展示。查询方法为sushedao中的selectByexample方法。该部分核心代码如下:
生成宿舍样例类,通过example定义查询条件 SusheExample example = new SusheExample();
通过sushedao的selectByExample方法查询出所有的宿舍信息 List susheall = sushedao.selectByExample(example);
将宿舍信息,保存到request中,在页面通过foreach方法进行展示 request.setAttribute("susheall", susheall);
返回宿舍管理界面
return "forward:/susheguanli.action";
修改宿舍模块:
对已经上传的宿舍信息可以进行修改操作,该部分操作在宿舍管理界面中点击修改按钮可以跳转到宿舍修改页面。在修改页面中,将初始化所有的宿舍字段信息,字段信息包括编号,介绍。字段信息内容通过宿舍id获取。修改后的信息传入到susheController中接收为sushe。在susheController中包含有提前定义好的sushedao,该参数为susheMapper是实现。susheMapper中定义了修改方法,此处使用修改方法为updateByPrimaryKeySelective,该方法可以将修改后信息同步到数据库中,最终将修改成功信息返回页面中。该部分代码如下:
通过sushedao的修改方法根据id修改对应的宿舍 sushedao.updateByPrimaryKeySelective(sushe);
将修改宿舍成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "修改宿舍信息成功");
返回宿舍管理界面
return "forward:/susheguanli.action";
删除宿舍模块:
在管理页面中,点击删除。页面将通过a标签的href属性,使用get方法将该宿舍
的id上传到服务器中,在服务器中通过susheController类中的shanchusushe进行接收,之后调用susheMapper中的deleteByPrimaryKey方法根据ID进行删除。将删除信息保存到request的message中,在页面给出用户删除成功的提示信息,该部分核心代码如下:
通过sushedao的删除方法根据id删除对应的宿舍 sushedao.deleteByPrimaryKey(id);
将删除宿舍成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "删除宿舍成功");
返回宿舍管理界面
return "forward:/susheguanli.action";
原文地址:https://www.cnblogs.com/rt14/p/11598882.html
- InfoPath中repeating section中赋值操作
- 百布(baibu.la)完成1.65亿B+轮融资
- 八大排序算法总结与java实现
- Angular企业级开发(5)-项目框架搭建
- 如何让nginx显示文件夹目录
- Facebook Graph API(2)--读取数据之picture
- 使用Dockerfile构建镜像-Docker for Web Developers(5)
- 2018年程序员的出路有哪些
- CSS魔法堂:不得不说的Containing Block
- Facebook Graph API(1)—介绍
- MongoDB学习系列(1)--入门介绍
- 2018年人工智能行业市场预测:市场规模有望突破200亿元大关
- Javascript对象的方法赋值
- CentOS挂载硬盘
- java教程
- Java快速入门
- Java 开发环境配置
- Java基本语法
- Java 对象和类
- Java 基本数据类型
- Java 变量类型
- Java 修饰符
- Java 运算符
- Java 循环结构
- Java 分支结构
- Java Number类
- Java Character类
- Java String类
- Java StringBuffer和StringBuilder类
- Java 数组
- Java 日期时间
- Java 正则表达式
- Java 方法
- Java 流(Stream)、文件(File)和IO
- Java 异常处理
- Java 继承
- Java 重写(Override)与重载(Overload)
- Java 多态
- Java 抽象类
- Java 封装
- Java 接口
- Java 包(package)
- Java 数据结构
- Java 集合框架
- Java 泛型
- Java 序列化
- Java 网络编程
- Java 发送邮件
- Java 多线程编程
- Java Applet基础
- Java 文档注释
- Android实现移动小球和CircularReveal页面切换动画实例代码
- Android4.4+ 实现半透明状态栏(Translucent Bars)
- Android弹出dialog后无法捕捉back键的解决方法
- Android编程设置屏幕亮度的方法
- 利用SurfaceView实现下雨与下雪动画效果详解(Kotlin语法)
- Android WebView的使用方法及与JS 相互调用
- Android标题栏上添加多个Menu按钮的实例
- Android编程解析XML文件的方法详解【基于XmlPullParser】
- 教你3分钟了解Android 简易时间轴的实现方法
- Android网络技术HttpURLConnection详解
- Ubuntu16.04下CUDA8.0和CUDA9.0共存
- Ubuntu 20.04 开启隐藏录音降噪功能(推荐)
- 解密 Linux 版本信息的方法
- ubuntu20.04连接wifi的方法(2种)
- 服务器Centos部署MySql并连接Navicat过程详解