基于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";