大学期末考试SSH试题四
库房出库管理系统
一、语言和环境
a) 实现语言
java
b) 环境要求
JDK6、myeclipse 、tomcat6、oracle
二、功能要求
1、使用SSH(struts2+spring+hibernate)实现库房出库管理,oracle做为后台数据库具体要求如下
进入应用首页,如图-l所示:
页面中“出库商品” 列表的数据来自数据库的商品表product,填充下拉列表时使用商品主键ID的值作为option的value,使用商品名称的值做显示文本,
点击“提交”按钮保存数据时,使用javascript对表单数据进行验证,要求所有表单均必填或必选,且数量必须大于0的整数,否则应给出相应提示参考
如图-2所示:
通过javascript的验证后,提交数据到服务器,服务器端按如下要求进行处理:
首先,检查所选商品的库存数量是否满足出库要求,如果库存量小于出库量不得进行出库操作,须返回首页提示用户库存不足,以及实际的库存数量。用户所填数据应回显在表单中,不能丢失、。如图-3所示:
如果库存大于或等于出库数量,在出库表takeout中添加一条出库记录,出库时间取系统当前时间,并对商品表product中该商品的库存数量进行修改以减少相应的库存。全部执行成功,提交事务,否则回滚。最后返回首页提示操作结果,如图-4所示
三、数据库设计
数据库表名及要求
表名 |
product |
中文表名 |
商品表 |
|||||
主键 |
proid |
|||||||
序号 |
字段名称 |
字段说明 |
类型 |
长度 |
属性 |
备注 |
||
1 |
proid |
商品id |
number |
10 |
主键 |
|
||
2 |
productname |
商品名称 |
Varchar2 |
50 |
|
|
||
3 |
quantity |
库存 |
number |
10 |
非空 |
|
表名 |
takeout |
中文表名 |
新闻分类表 |
|||||
主键 |
id |
|||||||
序号 |
字段名称 |
字段说明 |
类型 |
长度 |
属性 |
备注 |
||
1 |
takeid |
记录ID |
number |
10 |
主键 |
|
||
2 |
quantity |
数量 |
number |
10 |
非空 |
|
||
3 |
outDate |
记录日期 |
date |
|
非空 |
系统时间 |
||
4 |
Handler |
经受人 |
Varcahr |
50 |
|
|
||
5 |
Proid |
商品ID |
Number |
|
外键 |
|
四、具体要求及推荐实现步骤
1、建立数据库表,并且添加测试数据(至少3条)
2、创建web工程,命名为warehouse
3、为工程添加struts2、spring3、hibernate3的支持
4、正确配置struts2、spring、hibernate,并正确配置SSH的集成
5、创建hibernate的实体类和对应的映射文件
A、编写product和takeout表对应的持久化类和映射文件
B、为商品类和出库类配置单项多对一关系
6、创建dao接口及实现类,在dao类中使用HQL语句或者spring底层数据库对象实现相应操作,实现
A、查询所有商品
B、查询指定商品库存
C、添加出库记录
D、修改指定商品库存
7、创建service接口及其实现类,实现相应业务,并在类中加入dao的引用
8、创建action,在action中加入service的引用,并配置struts文件
9、创建并配置spring文件,对业务类对象需添加声明式事务支持。
10、新闻列表显示页面
A、按照图-1进行页面设计
B、使用javascript验证表单数据
C、按照要求提示信息和实现数据回显
11、调试运行成功后导出sql语句,其中包括表结构、序列、初始化数据、生成sql脚本文件与代码文件一同提交。若无数据库脚本,此项不得分。
五、注意事项
1、请注意页面美观,控件摆放整齐
2、请注意代码编写、命名符合规范、在代码中添加必要的注释
3、请注意操作数据库时进行必要的异常处理
文章来源: aaaedu.blog.csdn.net,作者:tea_year,版权归原作者所有,如需转载,请联系作者。
原文链接:aaaedu.blog.csdn.net/article/details/78147436
- 点赞
- 收藏
- 关注作者
评论(0)