- 代码需要进行购买,全程教你如何部署。(私信博主噢)
- 编写目的
软件产品需求分析报告是为企业订单管理编写的,
简要阐述企业订单管理的系统调查,系统分析,实现功能。
通过本次设计,使同学能够主动查阅与数据库相关资料,掌握一些课堂上老师未曾教授的知识,从而达到培养学生自学以及主动解决问题的能力的目的。
2. 需求分析
设计企业订单管理数据库系统的目的是为了管理的商品和顾客信息、维护企业商品订单流程的安全完整、缩短商品信息流转时间,使企业对订单管理层次分明、井然有序,为采购和销售提供依据,从而提高公司的经营效率。物资管理数据库主要通过存储供货商、购货商、产品等的信息,实现下列任务:保管好商品订单,做到数量充足和准确、质量完好、确保安全、收发迅速、服务周到、降低费用、加速资金周转。
2.1综合描述
顾客基本信息:id,姓名name,密码password,电话phone,收货地址address。商品的信息:订单编号id,名称tip,金额price,物流单号stream,数量number,生产厂家(business),型号,评价内容判断好中差content。
顾客进入订单系统,查看商品信息,选择商品,完成订单。
顾客可选择退款服务:退款的金额,退款的
评价商品:商品id,输入顾客评价的内容。
退出订单系统。
实现对顾客信息的添加,商品的添加和删除的管理模块。
实现按商品名称进行查询。
实现顾客对商品的评价管理模块。
实现商品库的数量增加。
数据库项名 | ordersystem |
说明 | 为Java程序提供数据库,建立顾客,管理员,商品信息表 |
类型 | |
长度 | |
别名 | 企业订单管理系统 |
取值范围 | 000000001-99999999 |
数据表名 | 商品信息(goods) |
说明 | 展示商品的属性。 |
组成 | 商品名称,金额,物流单号,数量,生产厂家,型号,评价内容判断好中差 |
数据表名 | 用户信息(customer) |
说明 | 用户的属性。 |
组成 | 姓名,密码,电话,收货地址,商品名称。 |
数据表名 | 管理员信息(admin) |
说明 | 管理员的属性。 |
组成 | 姓名,密码。 |
2.2 运行环境
● 操作系统和版本;32位或64位window操作系统
● 支撑环境(例如:数据库等)和版本;eclipse,Mysql
● 其它与该软件有关的软件组件;
● 与该软件共存的应用程序。
2.3 系统功能需求
2、主要的管理模块
企业订单管理大体可以分为以下2大模块,如下所示:首先是商品模块,该模块主要就是描述如何采购商品,提交对商品的评价,然后是退出订单系统的,该模块主要描述从指定的仓库中拿出商品;最后是管理员操作模块,这个模块主要是记录商品的管理,商品的入库,商品的下架,和顾客的信息。
2.3.1第一模块
注册用户
查看商品;
购买商品
进行评价;
退出订单管理系统。
2.3.2 第二模块
登录;
查看顾客信息;
删除顾客信息;
添加商品;
查看管理员信息;
添加管理员;
退出登录。
如果每一项功能需求都能用一项,也只需要用一项测试用例就能进行验证,那么就可以认为功能需求已经适当地进行描述了。如果某项功能需求找不到合适的测试用例,或者必须使用多项测试用例才能验证,那么该项功能需求的描述必然存在某些问题。
功能需求是根据系统功能,即软件产品所提供的主要服务来组织的。可以通过使用实例、运行模式、用户类、对象类或者功能等级来组织这部分内容,也可以便用这些元素的组合。总而言之,必须选择一种是读者容易理解预期产品的组织方案。
用简短的语句说明功能的名称,例如:“4.1系统参数管理”。按照服务组织的顺序,逐条阐述系统功能。无论说明的是何种功能,都应该针对该系统功能重复叙述4.1~ 4.3这三个部分。
可以通过各种方式来组织这一部分内容,例如采用:使用实例、运行模式、用户类、对象类、功能等级等,也可以采用它们的组合。其最终目的是,让读者容易理解 即将开发的软件产品。一般来说,每个使用实例都对应一个系统功能,因而按照使用实例来组织内容比较容易让用户理解。
2. 4词汇表
对数据词汇定义是一个定义了应用程序中使用的所有数据元素和结构的相对统一,便于开发。其中对每个词汇元素和结构都准确描述:含义、类型、数据大小、格式、计量单位、精度 以及取值范围。数据定义在软件产品开发和维护的任何阶段,均向风险承担者开放。
3. 数据逻辑结构
2.1 关系模式如下:
4. E-R图
5. 数据库实施
5.1 数据定义如下:
创建数据库(ordersystem):
创建数据表(customer)
创建数据表(admin)
创建数据表(goods)
1 | 张三 | 111 | 180180 | 江苏省南京 | 可口可乐 |
2 | 李四 | 222 | 150150 | 江苏省南京 | Null |
1 | Admin1 | aaa |
2 | Admin2 | bbb |
1 | 可口可乐 | 2.5 | 001 | 20 | 梦工厂 | Null |
2 | 农夫山泉 | 1.5 | 002 | 50 | 水工厂 | Null |
create database `ordersystem`;
CREATE TABLE `customer` (
`id` int(20) NOT NULL PRIMARY KEY AUTO_INCREMENT,
`name` varchar(255) NOT NULL default ‘’ comment ‘姓名’,
`password` varchar(255) NOT NULL default ‘’ comment ‘密码’,
`phone` varchar(255) NOT NULL default ‘’ comment ‘电话号码’,,
`address` varchar(255) NOT NULL default ‘’ comment ‘收货地址’
) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=utf8;
CREATE TABLE `admin` (
`id` int(11) NOT NULL PRIMARY KEY AUTO_INCREMENT,
`name` varchar(255) NOT NULL default ‘’ comment ‘姓名’,,
`password` varchar(255) NOT NULL default ‘’ comment ‘密码’
) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=utf8;
create table `goods`(
`id` int (20) unsigned not null primary key AUTO_INCREMENT,
`tip` varchar(255) not null default '' comment '商品名称',
`price` int(10) not null default '0' comment '价格',
`stream` varchar(255) not null default '' comment '物流单号',
`number` int(10) unsigned NOT NULL DEFAULT '0' comment '数量',
`business` varchar(255) not null default '' comment '生产厂家',
`content` text NOT NULL COMMENT '评价内容'
)ENGINE=InnoDB AUTO_INCREMENT=11 DEFAULT CHARSET=utf8;
6. JAVA程序
6.1 创建项目框架
需要dao,domain,utils,view。Mains,Text。Lib。
在项目src下建立项目包:(如下图所示)
6.2 搭建项目环境
6.2.1 建立jar包
mysql-connerctor-java-5.1.8.jar
druid.jar
junit.jar
commons-collection.jar
commons-logging.jar
spring-core.jar
spring-jdbc.jar
在项目中,创建新的文件夹(lib),如下图操作所示,本示例中创建了lib文件夹 ,并将项目开发需要的第三方的jar包拷贝到该文件夹中。
6.3 数据库JDBC搭建
- 连JDBC开发步骤
- 获取数据库的属性:
Properties properties = new Properties();
ClassLoader classLoader = JDBCUtils.class.getClassLoader();
URL res = classLoader.getResource("druid.properties");
- 编写连接数据库方法
public Connection getConnection() throws SQLException {
return ds.getConnection();
- 编写关闭连接的方法
public void close(ResultSet rs, Statement st, Connection conn){
if (rs != null) {
try {
rs.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
try {
((Connection) st).close();
} catch (SQLException e) {
e.printStackTrace();
}
if (conn != null) {
try {
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}
- 编写目的
软件产品需求分析报告是为企业订单管理编写的,
简要阐述企业订单管理的系统调查,系统分析,实现功能。
通过本次设计,使同学能够主动查阅与数据库相关资料,掌握一些课堂上老师未曾教授的知识,从而达到培养学生自学以及主动解决问题的能力的目的。
2. 需求分析
设计企业订单管理数据库系统的目的是为了管理的商品和顾客信息、维护企业商品订单流程的安全完整、缩短商品信息流转时间,使企业对订单管理层次分明、井然有序,为采购和销售提供依据,从而提高公司的经营效率。物资管理数据库主要通过存储供货商、购货商、产品等的信息,实现下列任务:保管好商品订单,做到数量充足和准确、质量完好、确保安全、收发迅速、服务周到、降低费用、加速资金周转。
2.1综合描述
顾客基本信息:id,姓名name,密码password,电话phone,收货地址address。商品的信息:订单编号id,名称tip,金额price,物流单号stream,数量number,生产厂家(business),型号,评价内容判断好中差content。
顾客进入订单系统,查看商品信息,选择商品,完成订单。
顾客可选择退款服务:退款的金额,退款的
评价商品:商品id,输入顾客评价的内容。
退出订单系统。
实现对顾客信息的添加,商品的添加和删除的管理模块。
实现按商品名称进行查询。
实现顾客对商品的评价管理模块。
实现商品库的数量增加。
数据库项名 | ordersystem |
说明 | 为Java程序提供数据库,建立顾客,管理员,商品信息表 |
类型 | |
长度 | |
别名 | 企业订单管理系统 |
取值范围 | 000000001-99999999 |
数据表名 | 商品信息(goods) |
说明 | 展示商品的属性。 |
组成 | 商品名称,金额,物流单号,数量,生产厂家,型号,评价内容判断好中差 |
数据表名 | 用户信息(customer) |
说明 | 用户的属性。 |
组成 | 姓名,密码,电话,收货地址,商品名称。 |
数据表名 | 管理员信息(admin) |
说明 | 管理员的属性。 |
组成 | 姓名,密码。 |
2.2 运行环境
● 操作系统和版本;32位或64位window操作系统
● 支撑环境(例如:数据库等)和版本;eclipse,Mysql
● 其它与该软件有关的软件组件;
● 与该软件共存的应用程序。
2.3 系统功能需求
2、主要的管理模块
企业订单管理大体可以分为以下2大模块,如下所示:首先是商品模块,该模块主要就是描述如何采购商品,提交对商品的评价,然后是退出订单系统的,该模块主要描述从指定的仓库中拿出商品;最后是管理员操作模块,这个模块主要是记录商品的管理,商品的入库,商品的下架,和顾客的信息。
2.3.1第一模块
注册用户
查看商品;
购买商品
进行评价;
退出订单管理系统。
2.3.2 第二模块
登录;
查看顾客信息;
删除顾客信息;
添加商品;
查看管理员信息;
添加管理员;
退出登录。
如果每一项功能需求都能用一项,也只需要用一项测试用例就能进行验证,那么就可以认为功能需求已经适当地进行描述了。如果某项功能需求找不到合适的测试用例,或者必须使用多项测试用例才能验证,那么该项功能需求的描述必然存在某些问题。
功能需求是根据系统功能,即软件产品所提供的主要服务来组织的。可以通过使用实例、运行模式、用户类、对象类或者功能等级来组织这部分内容,也可以便用这些元素的组合。总而言之,必须选择一种是读者容易理解预期产品的组织方案。
用简短的语句说明功能的名称,例如:“4.1系统参数管理”。按照服务组织的顺序,逐条阐述系统功能。无论说明的是何种功能,都应该针对该系统功能重复叙述4.1~ 4.3这三个部分。
可以通过各种方式来组织这一部分内容,例如采用:使用实例、运行模式、用户类、对象类、功能等级等,也可以采用它们的组合。其最终目的是,让读者容易理解 即将开发的软件产品。一般来说,每个使用实例都对应一个系统功能,因而按照使用实例来组织内容比较容易让用户理解。
2. 4词汇表
对数据词汇定义是一个定义了应用程序中使用的所有数据元素和结构的相对统一,便于开发。其中对每个词汇元素和结构都准确描述:含义、类型、数据大小、格式、计量单位、精度 以及取值范围。数据定义在软件产品开发和维护的任何阶段,均向风险承担者开放。
3. 数据逻辑结构
2.1 关系模式如下:
4. E-R图
5. 数据库实施
5.1 数据定义如下:
创建数据库(ordersystem):
创建数据表(customer)
创建数据表(admin)
创建数据表(goods)
1 | 张三 | 111 | 180180 | 江苏省南京 | 可口可乐 |
2 | 李四 | 222 | 150150 | 江苏省南京 | Null |
1 | Admin1 | aaa |
2 | Admin2 | bbb |
1 | 可口可乐 | 2.5 | 001 | 20 | 梦工厂 | Null |
2 | 农夫山泉 | 1.5 | 002 | 50 | 水工厂 | Null |
create database `ordersystem`;
CREATE TABLE `customer` (
`id` int(20) NOT NULL PRIMARY KEY AUTO_INCREMENT,
`name` varchar(255) NOT NULL default ‘’ comment ‘姓名’,
`password` varchar(255) NOT NULL default ‘’ comment ‘密码’,
`phone` varchar(255) NOT NULL default ‘’ comment ‘电话号码’,,
`address` varchar(255) NOT NULL default ‘’ comment ‘收货地址’
) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=utf8;
CREATE TABLE `admin` (
`id` int(11) NOT NULL PRIMARY KEY AUTO_INCREMENT,
`name` varchar(255) NOT NULL default ‘’ comment ‘姓名’,,
`password` varchar(255) NOT NULL default ‘’ comment ‘密码’
) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=utf8;
create table `goods`(
`id` int (20) unsigned not null primary key AUTO_INCREMENT,
`tip` varchar(255) not null default '' comment '商品名称',
`price` int(10) not null default '0' comment '价格',
`stream` varchar(255) not null default '' comment '物流单号',
`number` int(10) unsigned NOT NULL DEFAULT '0' comment '数量',
`business` varchar(255) not null default '' comment '生产厂家',
`content` text NOT NULL COMMENT '评价内容'
)ENGINE=InnoDB AUTO_INCREMENT=11 DEFAULT CHARSET=utf8;
6. JAVA程序
6.1 创建项目框架
需要dao,domain,utils,view。Mains,Text。Lib。
在项目src下建立项目包:(如下图所示)
6.2 搭建项目环境
6.2.1 建立jar包
mysql-connerctor-java-5.1.8.jar
druid.jar
junit.jar
commons-collection.jar
commons-logging.jar
spring-core.jar
spring-jdbc.jar
在项目中,创建新的文件夹(lib),如下图操作所示,本示例中创建了lib文件夹 ,并将项目开发需要的第三方的jar包拷贝到该文件夹中。
6.3 数据库JDBC搭建
- 连JDBC开发步骤
- 获取数据库的属性:
Properties properties = new Properties();
ClassLoader classLoader = JDBCUtils.class.getClassLoader();
URL res = classLoader.getResource("druid.properties");
- 编写连接数据库方法
public Connection getConnection() throws SQLException {
return ds.getConnection();
- 编写关闭连接的方法
public void close(ResultSet rs, Statement st, Connection conn){
if (rs != null) {
try {
rs.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
try {
((Connection) st).close();
} catch (SQLException e) {
e.printStackTrace();
}
if (conn != null) {
try {
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}