基于SSM框架下的JAVA电脑租赁系统
每天记录学习,每天会有好心情。*^_^*
今天和一个朋友共同完成了一个电脑租赁系统项目,我们在开发时选用的框架是SSM(MYECLIPSE)框架。我这个朋友知识有限,只会这个框架,哈哈,都是为了方便他。和往常一样选用简单又便捷的MYECLIPSE作为开发工具,这是一个 后台项目。这个系统的介绍是这样的:该文阐述了如何构造一个基于JAVA的电脑租赁管理系统,对系统的需求分析、功能模块划分、数据库模式分析,功能模块的实现过程进行了详细的介绍,在此基础上,对所应用的关键技术进行描述。,一个电脑租赁系统应包含用户角色有管理员、用户。为了能让用户顺利登陆系统完成相关操作,需要为每种登陆角色设置账户和密码字段。
为了完成系统的功能需要为电脑、用户设置订单表,记录订单信息。在订单表中定义了两者的关联关系,其中订单的电脑与电脑的mingcheng字段对应、订单的电脑id与电脑的id字段对应、订单的用户与用户的mingzi字段对应、订单的用户id与用户的id字段对应
。
总结得出该系统所有数据为:管理员(admin)、电脑(diannao)、用户(yonghu)、订单(dingdan)
管理员表
字段名 | 类型 | 属性 | 描述 id | INT(11) | PRIMARY KEY | 管理员id username | VARCHAR(255) | | 账号 password | VARCHAR(255) | | 密码
电脑表
字段名 | 类型 | 属性 | 描述 id | INT(11) | PRIMARY KEY | 电脑id mingcheng | VARCHAR(255) | | 名称 pinpai | VARCHAR(255) | | 品牌 chengse | VARCHAR(255) | | 成色 jeishao | VARCHAR(255) | | 介绍 yuanjia | VARCHAR(255) | | 原价 zulingjia | VARCHAR(255) | | 租赁价 tupian | VARCHAR(255) | | 图片
用户表
字段名 | 类型 | 属性 | 描述 id | INT(11) | PRIMARY KEY | 用户id mingzi | VARCHAR(255) | | 名字 username | VARCHAR(255) | | 账号 password | VARCHAR(255) | | 密码 jieshao | VARCHAR(255) | | 介绍
订单表
字段名 | 类型 | 属性 | 描述 id | INT(11) | PRIMARY KEY | 订单id diannao | VARCHAR(255) | | 电脑 diannaoid | VARCHAR(255) | | 电脑id yonghu | VARCHAR(255) | | 用户 yonghuid | VARCHAR(255) | | 用户id jiage | VARCHAR(255) | | 价格 shijian | VARCHAR(255) | | 时间
SET FOREIGN_KEY_CHECKS=0; -- ---------------------------- -- ---------------------------- -- Table structure for ggdiannaozulin -- ---------------------------- 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_diannao`; CREATE TABLE `t_diannao` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '电脑id',`mingcheng` VARCHAR(255) DEFAULT NULL COMMENT '名称',`pinpai` VARCHAR(255) DEFAULT NULL COMMENT '品牌',`chengse` VARCHAR(255) DEFAULT NULL COMMENT '成色',`jeishao` VARCHAR(5000) DEFAULT NULL COMMENT '介绍',`yuanjia` VARCHAR(255) DEFAULT NULL COMMENT '原价',`zulingjia` VARCHAR(255) DEFAULT NULL COMMENT '租赁价',`tupian` VARCHAR(255) DEFAULT NULL COMMENT '图片',PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='电脑'; -- ---------------------------- DROP TABLE IF EXISTS `t_yonghu`; CREATE TABLE `t_yonghu` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '用户id',`mingzi` VARCHAR(255) DEFAULT NULL COMMENT '名字',`username` VARCHAR(255) DEFAULT NULL COMMENT '账号',`password` VARCHAR(255) DEFAULT NULL COMMENT '密码',`jieshao` VARCHAR(5000) DEFAULT NULL COMMENT '介绍',PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='用户'; -- ---------------------------- DROP TABLE IF EXISTS `t_dingdan`; CREATE TABLE `t_dingdan` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '订单id',`diannao` VARCHAR(255) DEFAULT NULL COMMENT '电脑',`diannaoid` INT(11) DEFAULT NULL COMMENT '电脑id',`yonghu` VARCHAR(255) DEFAULT NULL COMMENT '用户',`yonghuid` INT(11) DEFAULT NULL COMMENT '用户id',`jiage` VARCHAR(255) DEFAULT NULL COMMENT '价格',`shijian` VARCHAR(255) DEFAULT NULL COMMENT '时间',PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='订单';
添加电脑模块:
从页面中通过post方法,将电脑信息传入到后台服务器中,在tianjiadiannaoact
中接收,字段包括名称,品牌,成色,介绍,原价,租赁价,图片使用insert方法添加数据,将数据同步到
数据库中,完成添加操作。定义添加成功提示信息,添加电脑成功,并保存到request中具体代码如下:
通过diannaodao的insert方法将页面传输的电脑添加到数据库中 diannaodao.insert(diannao);
将添加电脑成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "添加电脑成功");
返回电脑管理界面
return "forward:/tianjiadiannao.action";
查询电脑模块:
在后台中定义电脑查询模块,在侧边栏中点击电脑管理,可以跳转到电脑管理界面。在该页面中通过diannaoController中定义diannaoguanli响应电脑查询模块。在diannaoguanli中查询出所有信息,返回页面进行循环展示。查询方法为diannaodao中的selectByexample方法。该部分核心代码如下:
生成电脑样例类,通过example定义查询条件 DiannaoExample example = new DiannaoExample();
通过diannaodao的selectByExample方法查询出所有的电脑信息 List diannaoall = diannaodao.selectByExample(example);
将电脑信息,保存到request中,在页面通过foreach方法进行展示 request.setAttribute("diannaoall", diannaoall);
返回电脑管理界面
return "forward:/diannaoguanli.action";
修改电脑模块:
点击修改按钮,可以跳转到电脑修改页面。在电脑修改页面中,将初始化该电脑的所有信息,并将信息一一对应填充到对应编辑栏中。编辑完电脑信息后,页面通过post方法将数据封装为一个电脑实体,传入到diannaoController中。在xiugaidiannao中进行接收,接收完毕后,调用diannaoMapper中的updateByPrimaryKeySelective方法进行修改。该部分代码如下:
通过diannaodao的修改方法根据id修改对应的电脑 diannaodao.updateByPrimaryKeySelective(diannao);
将修改电脑成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "修改电脑信息成功");
返回电脑管理界面
return "forward:/diannaoguanli.action";
删除电脑模块:
在管理页面中,点击删除。页面将通过a标签的href属性,使用get方法将该电脑
的id上传到服务器中,在服务器中通过diannaoController类中的shanchudiannao进行接收,之后调用diannaoMapper中的deleteByPrimaryKey方法根据ID进行删除。将删除信息保存到request的message中,在页面给出用户删除成功的提示信息,该部分核心代码如下:
通过diannaodao的删除方法根据id删除对应的电脑 diannaodao.deleteByPrimaryKey(id);
将删除电脑成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "删除电脑成功");
返回电脑管理界面
return "forward:/diannaoguanli.action";
原文地址:https://www.cnblogs.com/lqs11/p/11598986.html
- 【插件开发】—— 11 窃听风云(Java事件监听原理-GEF实例讲解)
- 【面试虐菜】—— JAVA面试题(2)
- JavaMelody监控spring、struts
- 《JavaScript语言精粹》—— 读书总结
- 视差滚动技术的简介及运用
- 【面试虐菜】—— JAVA面试题(3)
- Carousel 旋转画廊特效的疑难杂症
- 区块链为IBM与Visa等老牌公司注入新的生机
- 【java.lang.UnsupportedClassVersionError】版本不一致出错
- Yeoman 官网教学案例:使用 Yeoman 构建 WebApp
- JSP与JavaBeans
- Log4j官方文档翻译(四、如何在java中输出日志消息)
- 展望未来:使用 PostCSS 和 cssnext 书写 CSS
- Java多线程之Runable与Thread
- 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 文档注释
- 修改xposed特征并刷机
- Python 爬虫进阶必备 | 关于某租房网站数据加密的分析
- CMAKE学习记录(二)
- maven 中的版本依赖冲突问题
- Manual for Ubuntu Installation
- 修改自定义站点监控页面的样式
- 快速建站“新玩具”—glitch.me
- 踩坑记 | Flutter升级影响了NestedScrollView?
- Android | xml和view的那些事
- Android | 资源冲突覆盖的一些思考
- 如何用脚本自动转化,一个protobuf文件到json格式
- 聊聊dubbo-go的forkingCluster
- 还在用 map[string]interface{} 处理 JSON?告诉你一个更高效的方法——jsonvalue
- 聊聊dubbo-go的failsafeCluster
- 【HDFS】distcp报错Check0sum mismatch