基于SSM框架下的JAVA产品报价系统

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

今天和一个朋友共同完成了一个产品报价系统项目,我们在开发时选用的框架是SSM(MYECLIPSE)框架。我这个朋友知识有限,只会这个框架,哈哈,都是为了方便他。和往常一样选用简单又便捷的MYECLIPSE作为开发工具,这是一个 后台项目。这个系统的介绍是这样的:针对企业对报价系统的需求 ,提出了一种基于JAVA的新产品报价系统。讨论了成本计算模型和报价模型 ,并在JAVA上实现了这一系统。该系统具有可以保证顾客对所采用的产品配置方案满意度最大 ,又便于产品成本和生产周期的计算。,一个产品报价系统应包含用户角色有管理员、用户注册。为了能让用户顺利登陆系统完成相关操作,需要为每种登陆角色设置账户和密码字段。

总结得出该系统所有数据为:管理员(admin)、用户注册(yonghuzhuce)、成本计算模型(chengbenjisuanmoxing)、报价模型(baojiamoxing)

管理员表

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

用户注册表

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

成本计算模型表

字段名 | 类型 | 属性 | 描述
id | INT(11) | PRIMARY KEY | 成本计算模型id
huodongchengbenfa | VARCHAR(255) | | 活动成本法
gongzuofenbuguliangda | VARCHAR(255) | | 工作分布估算法
fenjieduangusuan | VARCHAR(255) | | 分阶段估算
biaozhunyanzhibeijing | VARCHAR(255) | | 标准研制背景

报价模型表

字段名 | 类型 | 属性 | 描述
id | INT(11) | PRIMARY KEY | 报价模型id
shoufeimingxi | VARCHAR(255) | | 收费明细
gongzuoliangxihua | VARCHAR(255) | | 工作量细化
shoufeicanzhao | VARCHAR(255) | | 收费参照
baojiafangan | VARCHAR(255) | | 报价方案
SET FOREIGN_KEY_CHECKS=0;

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

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

-- Table structure for ggchanpinbaojiaxt

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

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_yonghuzhuce`;

CREATE TABLE `t_yonghuzhuce` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '用户注册id',`xingming` VARCHAR(255) DEFAULT NULL COMMENT '姓名',`zhiwu` VARCHAR(255) DEFAULT NULL COMMENT '职务',`nianling` VARCHAR(255) DEFAULT NULL COMMENT '年龄',`quanxian` 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_chengbenjisuanmoxing`;

CREATE TABLE `t_chengbenjisuanmoxing` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '成本计算模型id',`huodongchengbenfa` VARCHAR(255) DEFAULT NULL COMMENT '活动成本法',`gongzuofenbuguliangda` VARCHAR(255) DEFAULT NULL COMMENT '工作分布估算法',`fenjieduangusuan` VARCHAR(255) DEFAULT NULL COMMENT '分阶段估算',`biaozhunyanzhibeijing` VARCHAR(255) DEFAULT NULL COMMENT '标准研制背景',PRIMARY KEY (`id`)

) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='成本计算模型';

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

DROP TABLE IF EXISTS `t_baojiamoxing`;

CREATE TABLE `t_baojiamoxing` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '报价模型id',`shoufeimingxi` VARCHAR(255) DEFAULT NULL COMMENT '收费明细',`gongzuoliangxihua` VARCHAR(255) DEFAULT NULL COMMENT '工作量细化',`shoufeicanzhao` VARCHAR(255) DEFAULT NULL COMMENT '收费参照',`baojiafangan` VARCHAR(255) DEFAULT NULL COMMENT '报价方案',PRIMARY KEY (`id`)

) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='报价模型';

添加成本计算模型模块:

通过添加成本计算模型模块,可以完成成本计算模型的添加操作。在页面中跳转到添加成本计算模型页面,输入成本计算模型的所有信息,点击添加操作,可以将成本计算模型数据以post提交到chengbenjisuanmoxingController中。成本计算模型所包含的字段信息包括活动成本法,工作分布估算法,分阶段估算,标准研制背景。在chengbenjisuanmoxingController中通过定义chengbenjisuanmoxing接受所有的成本计算模型参数。使用chengbenjisuanmoxingdao的insert方法将chengbenjisuanmoxing实体插入到数据库中。完成数据的添加操作,在chengbenjisuanmoxingMapper中匹配对应的chengbenjisuanmoxingxml完成插入sql语句的执行操作。该部分核心代码如下:

通过chengbenjisuanmoxingdao的insert方法将页面传输的成本计算模型添加到数据库中 chengbenjisuanmoxingdao.insert(chengbenjisuanmoxing);

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

返回成本计算模型管理界面

return "forward:/tianjiachengbenjisuanmoxing.action";

查询成本计算模型模块:

成本计算模型的查询模块实现方式为,在页面中发起chengbenjisuanmoxingguanli.action请求。通过该请求,响应服务器chengbenjisuanmoxingController类中的chengbenjisuanmoxingguanli,在该方法中通过selectByexample进行数据的查询操作。将所有的成本计算模型信息查询后,保存到request中的chengbenjisuanmoxingall中,在页面中进行展示,返回chengbenjisuanmoxingguanli.jsp,该部分核心代码如下所示:

生成成本计算模型样例类,通过example定义查询条件 ChengbenjisuanmoxingExample example = new ChengbenjisuanmoxingExample();

通过chengbenjisuanmoxingdao的selectByExample方法查询出所有的成本计算模型信息 List chengbenjisuanmoxingall = chengbenjisuanmoxingdao.selectByExample(example);

将成本计算模型信息,保存到request中,在页面通过foreach方法进行展示 request.setAttribute("chengbenjisuanmoxingall", chengbenjisuanmoxingall);

返回成本计算模型管理界面

return "forward:/chengbenjisuanmoxingguanli.action";

修改成本计算模型模块:

在页面填写完修改信息后,点击修改按钮,将数据提交到xiugaichengbenjisuanmoxing中,封装为一个成本计算模型

,使用update方法修改该成本计算模型信息,将数据同步到数据库,完成修改操作。

定义修改成功提示信息,修改成本计算模型成功,并保存到request中具体代码如下:

通过chengbenjisuanmoxingdao的修改方法根据id修改对应的成本计算模型 chengbenjisuanmoxingdao.updateByPrimaryKeySelective(chengbenjisuanmoxing);

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

返回成本计算模型管理界面

return "forward:/chengbenjisuanmoxingguanli.action";

删除成本计算模型模块:

删除成本计算模型功能的实现方式为,通过点击删除成本计算模型按钮,向服务器发起get请求。请求中包含成本计算模型的id信息,在chengbenjisuanmoxingController中使用int接受该id,并将该id传入chengbenjisuanmoxingdao的deleteByPrimaryKey方法中。该方法的作用为根据id删除对应成本计算模型。最后将删除成本计算模型成功的信息返回页面,该部分核心代码如下:

通过chengbenjisuanmoxingdao的删除方法根据id删除对应的成本计算模型 chengbenjisuanmoxingdao.deleteByPrimaryKey(id);

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

返回成本计算模型管理界面

return "forward:/chengbenjisuanmoxingguanli.action";

猜你喜欢

转载自www.cnblogs.com/mlxbc/p/11604602.html