每天记录学习,每天会有好心情。*^_^*
今天将为大家分析一个基于web的java药店管理平台,采用当前非常流行的B/S体系结构,以JAVA作为开发技术,主要依赖SSM技术框架,mysql数据库建立本系统。
基于web的java药店管理平台项目使用框架为SSM(MYECLIPSE),选用开发工具为MYECLIPSE。基于web的java药店管理平台为一个 后台项目。
为了完成基于web的java药店管理平台,我们首先需要对该系统进行需求分析。一个基于web的java药店管理平台应包含用户角色有管理员。为了能让用户顺利登陆系统完成相关操作,需要为每种登陆角色设置账户和密码字段。
总结得出基于web的java药店管理平台项目所有数据为:管理员(admin)、药品(yaopin)、销售记录(xiaoshoujilu)
基于web的java药店管理平台之管理员表
字段名 | 类型 | 属性 | 描述 id | INT(11) | PRIMARY KEY | 管理员id username | VARCHAR(255) | | 账号 password | VARCHAR(255) | | 密码
基于web的java药店管理平台之药品表
字段名 | 类型 | 属性 | 描述 id | INT(11) | PRIMARY KEY | 药品id mingzi | VARCHAR(255) | | 名字 jianjie | VARCHAR(255) | | 简介 shangchuanshijian | VARCHAR(255) | | 上传时间 shuliang | VARCHAR(255) | | 数量 jiage | VARCHAR(255) | | 价格
基于web的java药店管理平台之销售记录表
字段名 | 类型 | 属性 | 描述 id | INT(11) | PRIMARY KEY | 销售记录id yaopin | VARCHAR(255) | | 药品 yaopinid | VARCHAR(255) | | 药品id shuliang | VARCHAR(255) | | 数量 jiage | VARCHAR(255) | | 价格
SET FOREIGN_KEY_CHECKS=0; -- ---------------------------- -- ---------------------------- -- Table structure for ggjywebdjavaydglpt -- ---------------------------- 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_yaopin`; CREATE TABLE `t_yaopin` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '药品id',`mingzi` VARCHAR(255) DEFAULT NULL COMMENT '名字',`jianjie` VARCHAR(5000) DEFAULT NULL COMMENT '简介',`shangchuanshijian` VARCHAR(255) DEFAULT NULL COMMENT '上传时间',`shuliang` VARCHAR(255) DEFAULT NULL COMMENT '数量',`jiage` VARCHAR(255) DEFAULT NULL COMMENT '价格',PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='药品'; -- ---------------------------- DROP TABLE IF EXISTS `t_xiaoshoujilu`; CREATE TABLE `t_xiaoshoujilu` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '销售记录id',`yaopin` VARCHAR(255) DEFAULT NULL COMMENT '药品',`yaopinid` INT(11) DEFAULT NULL COMMENT '药品id',`shuliang` VARCHAR(255) DEFAULT NULL COMMENT '数量',`jiage` VARCHAR(255) DEFAULT NULL COMMENT '价格',PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='销售记录';
添加药品模块:
通过添加药品模块,可以完成药品的添加操作。在页面中跳转到添加药品页面,输入药品的所有信息,点击添加操作,可以将药品数据以post提交到yaopinController中。药品所包含的字段信息包括名字,简介,上传时间,数量,价格。在yaopinController中通过定义yaopin接受所有的药品参数。使用yaopindao的insert方法将yaopin实体插入到数据库中。完成数据的添加操作,在yaopinMapper中匹配对应的yaopinxml完成插入sql语句的执行操作。该部分核心代码如下:
通过yaopindao的insert方法将页面传输的药品添加到数据库中 yaopindao.insert(yaopin);
将添加药品成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "添加药品成功");
返回药品管理界面
return "forward:/tianjiayaopin.action";
查询药品模块:
在浏览器中进入药品查询页面时,此时浏览器的地址栏为yaopinguanli.action,该地址将响应yaopinController类中的yaopinguanli,在该方法中,通过selectByexample方法获取所有的药品信息,并将该信息保存到request中,在页面进行循环展示。该部分核心代码如下:
生成药品样例类,通过example定义查询条件 YaopinExample example = new YaopinExample();
通过yaopindao的selectByExample方法查询出所有的药品信息 List yaopinall = yaopindao.selectByExample(example);
将药品信息,保存到request中,在页面通过foreach方法进行展示 request.setAttribute("yaopinall", yaopinall);
返回药品管理界面
return "forward:/yaopinguanli.action";
修改药品模块:
点击修改按钮,可以跳转到药品修改页面。在药品修改页面中,将初始化该药品的所有信息,并将信息一一对应填充到对应编辑栏中。编辑完药品信息后,页面通过post方法将数据封装为一个药品实体,传入到yaopinController中。在xiugaiyaopin中进行接收,接收完毕后,调用yaopinMapper中的updateByPrimaryKeySelective方法进行修改。该部分代码如下:
通过yaopindao的修改方法根据id修改对应的药品 yaopindao.updateByPrimaryKeySelective(yaopin);
将修改药品成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "修改药品信息成功");
返回药品管理界面
return "forward:/yaopinguanli.action";
删除药品模块:
删除药品功能的实现方式为,通过点击删除药品按钮,向服务器发起get请求。请求中包含药品的id信息,在yaopinController中使用int接受该id,并将该id传入yaopindao的deleteByPrimaryKey方法中。该方法的作用为根据id删除对应药品。最后将删除药品成功的信息返回页面,该部分核心代码如下:
通过yaopindao的删除方法根据id删除对应的药品 yaopindao.deleteByPrimaryKey(id);
将删除药品成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "删除药品成功");
返回药品管理界面
return "forward:/yaopinguanli.action";