每天记录学习,每天会有好心情。*^_^*

最近了解了制造业产品管理系统项目,在这个平台记录一下这个制造业产品管理系统项目,方便以后再次使用或学习的时候能够及时的翻阅。在完成这个项目的时候,考虑了很多框架。最终决定选用SSM(MYECLIPSE),该框架具有极强的移植性,多平台性,便于操作性等优点。此框架能在MYECLIPSE开发工具中完美的编写和运行,制造业产品管理系统为一个 后台项目。这个项目的描述是这样的:随着信息技术的发展,制造业都在积极推进信息化,由于市场环境的变化和现代生产管理理念的不断更新,一个制造型企业能否良性运营,关键是使“计划”与“生产”密切配合,企业和车间管理人员可以在最短的时间内掌握生产现场的变化,作出准确的判断和快速的应对措施,保证生产计划得到合理而快速修正。
在对制造业产品管理系统项目进行需求分析的时候,得出系统的登录角色包括了管理员、用户。对应用户可以通过登录自己的账号,进行入系统。系统对不同角色拥有不同权限。
为了完成系统的功能需要为产品设置订单表,记录订单信息。在订单表中定义了两者的关联关系,其中订单的名称与产品的mingcheng字段对应

总结得出该系统所有数据为:管理员(admin)、用户(yonghu)、产品(chanpin)、订单(dingdan)

管理员表

字段名 | 类型 | 属性 | 描述
id | INT(11) | PRIMARY KEY | 管理员id
username | VARCHAR(255) | | 账号
password | VARCHAR(255) | | 密码
quanxian | VARCHAR(255) | | 权限

用户表

字段名 | 类型 | 属性 | 描述
id | INT(11) | PRIMARY KEY | 用户id
xingming | VARCHAR(255) | | 姓名
nianling | VARCHAR(255) | | 年龄
xingbie | VARCHAR(255) | | 性别
zhiwu | VARCHAR(255) | | 职务
username | VARCHAR(255) | | 账号
password | VARCHAR(255) | | 密码

产品表

字段名 | 类型 | 属性 | 描述
id | INT(11) | PRIMARY KEY | 产品id
zhonglei | VARCHAR(255) | | 种类
leixing | VARCHAR(255) | | 类型
jiage | VARCHAR(255) | | 价格
mingcheng | VARCHAR(255) | | 名称

订单表

字段名 | 类型 | 属性 | 描述
id | INT(11) | PRIMARY KEY | 订单id
shouhuoren | VARCHAR(255) | | 收货人
lianxifangshi | VARCHAR(255) | | 联系方式
dizhi | VARCHAR(255) | | 地址
zhonglei | VARCHAR(255) | | 种类
mingcheng | VARCHAR(255) | | 名称
shuliang | VARCHAR(255) | | 数量
jiage | VARCHAR(255) | | 价格
SET FOREIGN_KEY_CHECKS=0;

-- ----------------------------

-- ----------------------------

-- Table structure for ggzhizaoyechanpinguanlixt

-- ----------------------------

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 '密码',`quanxian` 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',`xingming` VARCHAR(255) DEFAULT NULL COMMENT '姓名',`nianling` VARCHAR(255) DEFAULT NULL COMMENT '年龄',`xingbie` VARCHAR(255) DEFAULT NULL COMMENT '性别',`zhiwu` 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_chanpin`;

CREATE TABLE `t_chanpin` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '产品id',`zhonglei` VARCHAR(255) DEFAULT NULL COMMENT '种类',`leixing` VARCHAR(255) DEFAULT NULL COMMENT '类型',`jiage` VARCHAR(255) DEFAULT NULL COMMENT '价格',`mingcheng` VARCHAR(255) 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',`shouhuoren` VARCHAR(255) DEFAULT NULL COMMENT '收货人',`lianxifangshi` VARCHAR(255) DEFAULT NULL COMMENT '联系方式',`dizhi` VARCHAR(255) DEFAULT NULL COMMENT '地址',`zhonglei` VARCHAR(255) DEFAULT NULL COMMENT '种类',`mingcheng` 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='订单';

添加产品模块:

从页面中通过post方法,将产品信息传入到后台服务器中,在tianjiachanpinact

中接收,字段包括种类,类型,价格,名称使用insert方法添加数据,将数据同步到

数据库中,完成添加操作。定义添加成功提示信息,添加产品成功,并保存到request中具体代码如下:

通过chanpindao的insert方法将页面传输的产品添加到数据库中 chanpindao.insert(chanpin);

将添加产品成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "添加产品成功");

返回产品管理界面

return "forward:/tianjiachanpin.action";

查询产品模块:

在后台中定义产品查询模块,在侧边栏中点击产品管理,可以跳转到产品管理界面。在该页面中通过chanpinController中定义chanpinguanli响应产品查询模块。在chanpinguanli中查询出所有信息,返回页面进行循环展示。查询方法为chanpindao中的selectByexample方法。该部分核心代码如下:

生成产品样例类,通过example定义查询条件 ChanpinExample example = new ChanpinExample();

通过chanpindao的selectByExample方法查询出所有的产品信息 List chanpinall = chanpindao.selectByExample(example);

将产品信息,保存到request中,在页面通过foreach方法进行展示 request.setAttribute("chanpinall", chanpinall);

返回产品管理界面

return "forward:/chanpinguanli.action";

修改产品模块:

点击修改按钮,可以跳转到产品修改页面。在产品修改页面中,将初始化该产品的所有信息,并将信息一一对应填充到对应编辑栏中。编辑完产品信息后,页面通过post方法将数据封装为一个产品实体,传入到chanpinController中。在xiugaichanpin中进行接收,接收完毕后,调用chanpinMapper中的updateByPrimaryKeySelective方法进行修改。该部分代码如下:

通过chanpindao的修改方法根据id修改对应的产品 chanpindao.updateByPrimaryKeySelective(chanpin);

将修改产品成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "修改产品信息成功");

返回产品管理界面

return "forward:/chanpinguanli.action";

删除产品模块:

删除产品功能实现在chanpinController中,实现方法为shanchuchanpin。在页面中通过get方法shanchuchanpin.action?Id的形式将需要删除的产品id上传到服务器中,响应对应的方法,调用chanpindao中的deleteByPrimaryKey方法,完成删除操作。将删除成功的提示信息返回到页面中,完成删除数据的操作。该部分核心代码:

通过chanpindao的删除方法根据id删除对应的产品 chanpindao.deleteByPrimaryKey(id);

将删除产品成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "删除产品成功");

返回产品管理界面

return "forward:/chanpinguanli.action";

02-01 18:29