第6章 电子商务系统规划与设计

88
第6第 第第第第第 第第第第第 第6第 第第第第第 第第第第第 6.1 第第第第 第第 第第第 6.2 第第 第第第第第第第 6.3 第第第第第 第第第第第第

Upload: rae

Post on 16-Mar-2016

101 views

Category:

Documents


10 download

DESCRIPTION

第6章 电子商务系统规划与设计. 6.1 电子商务 系统规划 与设计 6.2 设计 工具的综合应用 6.3 电子商务系统设计应用实例. 6.1 电子商务系统规划与设计. 6.1.1 电子商务系统规划的概述 6.1.2 电子商务应用系统的开发步骤. 6.1.1 电子商务系统规划的概述. 1 . 一般电子商务应用系统构成. 2 .电子商务应用系统设计准则 It ’ s About Business, Not Just Technology. Start Simple, Grow Fast. Build on What You Have. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计第 6 章 电子商务系统规划与设计

6.1 电子商务系统规划与设计6.2 设计工具的综合应用6.3 电子商务系统设计应用实例

Page 2: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计6.1 电子商务系统规划与设计

6.1.1 电子商务系统规划的概述6.1.2 电子商务应用系统的开发步骤

Page 3: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计6.1.1 电子商务系统规划的概述

1.一般电子商务应用系统构成

Page 4: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计

2 . 电子商务应用系统设计准则It’s About Business, Not Just Technology.

Start Simple, Grow Fast.

Build on What You Have.

It Takes a Secure Foundation

Page 5: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计6.1.2 电子商务应用系统的开发步骤

1 .系统总体规划( 1 )系统功能规划( 2 )系统硬件规划( 3 )系统软件规划

Page 6: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计

2 .系统设计( 1 )网络硬件系统设计 : 网络硬件设备的确定 、网络拓扑结构的选择和布线系统的设计。( 2 )软件系统设计 : 网 络 操 作 系 统 的 选择、 Web 服务器系统软件的选择、数据库管理系统的选择、其他应用软件的选择。

Page 7: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计

( 3 )网页及应用程序的设计:1 )由系统功能规划的结果整理出网站的内容框架和逻辑结构图。2 )制定统一的设计规范。3 )具体设计时要以网页的访问者为中心。 4 )设计网络数据库和后台管理信息系统软件。

Page 8: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计

3 .系统实现( 1 )申请域名(定义企业域名、查重域名、注册国内域名、注册国际域名)( 2 )建立 Web 服务器( 3 )在 Web 服务器上发布已设计好的企业网页( 4 )系统测试(网络连接测试、网页测试、网站功能测试)

Page 9: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计

4 .系统的管理与维护( 1 )网站的宣传( 2 )网站的监测( 3 )网页的更新( 4 )应答与复函

Page 10: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计

实施电子商务的商业计

确定电子商务的目标 确定需要外包的项目决定网络主机服务方式用项目管理技术来规划和控制实施过程确定参与人员

Page 11: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计

计划电子商务项目

确定开始的目标 控制这些目标的实现过程监督其运作过程

Page 12: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计

设定目标

目标可以包括的内容效益目标成本目标比较效益和成本

Page 13: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计

目标的内容

建立品牌增加现有营销方案销售产品和服务销售广告版位改善售后服务和支持购买产品和服务管理供应链进行拍卖创建虚拟社区和网络门户

Page 14: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计

效益目标

目标不同,效益的衡量方法不同品牌知名度的提升:市场调查和民意测验在网上销售产品或服务:销售量或销售额用网站来改善顾客服务或售后支持:可以设定增加顾客满意度或降低顾客服务与支持成本的目标虚拟社区和网络门户 :访问者数量 、每个访问者在网站的滞留时间和访问频率

通常都想用金额来衡量所有的活动。虽然每种活动都为公司带来了一定的价值,但常常很难用金额来衡量这些价值

Page 15: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计

成本目标

信息技术项目的成本难以估计和控制雇用、训练人员和支付人员工资的成本 据 IDC和Gartner Group 在 99 年的调查,大公司建立和实施一个全面的电子商务网站大约花费 100 万美元 “ 广告时代( Advertising Age ”) 在 1999年对小企业的一项调查显示,这些小企业建设电子商务网站的平均费用是 7.8 万美元

Page 16: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计

比较效益和成本

对电子商务战略各因素的成本 - 效益评价

Page 17: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计

内部开发与外包

外包 内部团队早期外包晚期外包部分外包选择主机托管服务

Page 18: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计

外包

委托另一家公司为项目提供外部支持的做法称为外包电子商务成功的关键是在外包和内部支持之间取得平衡

Page 19: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计

内部团队

组建内部团队衡量内部团队的绩效内部团队的职能

Page 20: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计

组建内部团队

这个团队应该包括了解互联网及其技术的人,他们知道技术的能力和限制团队成员应该有创造性思维,他们希望公司能够超越目前的境况,他们在公司的业务非常出色团队成员应被同事们看作是成功者,否则这个项目就会缺乏公司内部的信任

Page 21: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计

衡量内部团队的绩效

不一定用金钱指标,可以用任何适合目标衡量的指标顾客满意度、增加的销售量和缩短订单处理时间都可作为评价团队绩效的衡量指标衡量应该体现出电子商务项目对公司向顾客让渡价值能力的影响Value 公司的 John Stoiber 建议,应该拨出专款(占项目预算的 5%到 10%)来量化项目的价值并衡量价值的实现程度

Page 22: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计

内部团队的职能

内部团队应该负责从设定目标到网站的最终实施和运营的整个过程内部团队还要决定将项目的哪些部分外包(以及外包给谁),公司需要为项目聘请什么样的咨询顾问或伙伴在项目早期,咨询顾问、外包商和合作伙伴非常重要,因为他们要比大多数信息系统专家更早地接触和应用新技术

Page 23: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计

早期外包

在多数电子商务项目中,为了快速开展项目,往往将最初的网站设计和开发外包出去,然后由外包商培训公司的信息系统人员,并把网站的运营交给他们。这种方式称为早期外包既然电子商务网站能够迅速为公司带来竞争优势,应该尽早让公司自己的信息系统人员参与项目并提出改进意见

Page 24: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计

晚期外包

更传统的信息系统外包方式是由公司自己的信息系统人员完成最初的设计和开发工作,并实施这个系统,直到它成为公司稳定的组成。等到公司得到了系统带来的所有竞争优势后,就可以把电子商务系统的维护工作外包,以便公司的信息系统专业人员能把注意力和精力转移到另外的能带来进一步竞争优势的新技术上。这种方式称为晚期外包

Page 25: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计

部分外包

部分外包也称为局部外包,即公司将部分项目交给另一家专业公司进行设计、开发、实施和运作 公司最常采用的电子商务部分外包的方式是主机托管

Page 26: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计

选择主机托管服务

选择主机服务时要考虑的重要因素包括:可靠性。主机托管服务应该保证最高的停机时间 带宽。主机连到互联网的带宽必须能够应付交易高峰的负荷 安全性。服务提供商应该详细说明所能提供的安全类型以及实施措施。不论服务提供商保证提供什么安全措施,公司都应该让自己的员工聘请安全顾问公司来监督电子商务运营的安全。安全顾问可以定期测试系统 成本

Page 27: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计

电子商务实施的管理

管理复杂的商务软件的实施的最好方法是采用正式的项目管理技术 项目管理 项目管理软件

Page 28: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计

项目管理

项目管理是一整套用于计划和控制为达到某个目标所采取行动的规范技术项目计划包括有关成本、时间安排和绩效的指标,能帮助项目经理根据这三个指标做出明智的决策

Page 29: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计

项目管理软件

Microsoft Project 和 Primavera Project Planner等项目管理软件提供了管理人员、资源和时间的整套工具,并用图表显示如下内容:哪部分项目属于关键任务,哪部分项目推后而不会影响项目完成日期,哪些资源对项目赶工最有效除了管理人员和内部团队的任务外,项目管理软件还能够帮助团队管理指派给咨询顾问、技术伙伴及外部服务提供商的任务。当任务完成后,项目经理检查成本和完成时间就能知道项目进展的情况,并不断地修订以后任务的预计成本和完成时间。

Page 30: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计

配备人员

开展电子商务所需的人员类型事后审计

Page 31: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计

所需人员

业务经理应用专家客户服务系统管理网络操作数据库管理

Page 32: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计

业务经理

业务经理负责实施业务计划并实现内部团队设定的目标。如果在项目进行中有必要进行修订,业务经理还要负责计划修改和追加资金提案,并呈交给内部团队和高级管理层批准 业务经理应该具备电子商务网站业务活动的经验和知识 在开展大型的电子商务时,除业务经理外,业务管理还需要其他人来承担业务经理没有时间亲自处理的事,如项目管理或账户管理等工作

Page 33: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计测试版、演示版和正式版网站

账户经理要记录项目所用的各种版本的网站许多大项目有位于不同服务器上测试版、演示版和正

式版网站测试版是 “正在建设中”的网站版本。大多数网站都要用新功能和新内容来定期更新,测试版是在网站正式展示给顾客前对新功能进行检验的网站版本演示版是新功能已通过测试要展示给内部观众(如市场部)以求批准的网站版本正式版是展示给顾客和其他访问者的正式运转的网站版本

Page 34: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计

应用专家

很多供应商都能提供电子商务软件包,所以公司需要能安装并维护这些软件的信息系统人员许多大公司由应用专家来维护财务软件、人力资源软件和后勤管理软件购买了专门软件来处理商品目录、结算业务和其他业务的电子商务网站也需要应用专家来维护这些软件虽然这些软件包的安装工作可以外包,但大多数公司希望培训自己的人员,当网站开始运转后由他们来承担这个任务

Page 35: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计

客户服务

网络为公司提供了主动接触顾客的机会。这样,无论是消费类网站还是企业间商务的网站都需要进行顾客关系管理顾客服务人员在电子商务运营中帮助设计和应用顾客关系管理,例如发布和管理密码、设计客户界面、处理客户电子邮件和电话请求及为网站进行电话销售

Page 36: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计

系统管理

系统管理员负责保障系统的可靠和安全的运转如果网站的运转是外包给 ISP或 CSP ,就由它们来负责如果是公司自己管理网站,就需要安排专人来负责这项工作

Page 37: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计

网络操作

网络操作人员维持网站的 24 小时的运转和网站安全网络操作人员的职能包括预测和监控负荷、解决网络出现的问题、设计和应用容错技术,以及管理外包给 ISP、 CSP或电话公司的网络运行业务

Page 38: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计

数据库管理

电子商务网站都会需要某种程度的数据库管理职能来支持交易处理、订单登录、查询管理或后勤运输等活动这就要求将现有的数据库与网站集成起来,或者为开展电子商务而单独建立一个数据库因此,需要一位能负责这项职能的数据库管理员

Page 39: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计

事后审计

事后审计是在项目运营后进行的正式复审经理通过事后审计来检查在项目计划阶段确立的

目标、性能指标、预计成本和预计的完成日期,并对比预定目标和实际情况事后审计允许内部团队、业务经理和项目经理质疑项目的目标,并了解目标和实际结果的差异

Page 40: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计

6.2 设计工具的综合应用方法6.2.1 构建开发环境6.2.2 综合应用实例

Page 41: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计6.2.1 构建开发环境

基于 Java 电子商务网络数据库应用,综合使用如下 Java 技术,即 JDBC + JavaBean + JSP 结合。1. JSP 开发环境( 1 )软件配置 ·操作系统:Windows NT 4.0,Windows 2000 Professional,Windows 2000 Server等。 · JDK:SUN最权威的 Java 开发工具,可从http://java.sun.com/products/jdk/l.2/下载。 · Tomcat:一个支持 JSP的WebServer插件,一般和 Apache配合使用,其自身也具备简单WebServer 功能。可从http://jakarta.apache.org/builds/tomcat/release/v3.1/ 下载。

Page 42: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计6.2.1 构建开发环境( 2 )软件安装

①JDK安装 ·双击 jdk1_2_2-001-win.exe文件进行安装,使用缺省配置进行安装, JDK缺省安装目录为 C:\jdk1.2.2, JRE缺省安装目录为 C:\Program File\JavaSoft\JRE\1.2 ·重启计算机。 ·更新下列环境变量 : 鼠标右键点击“我的电脑”,选择属性。在系统属性中打开高级选项,点击“环境变量”,在“用户变量”和“系统变量”中都加入两个变量 classpath和path ,它们的值是:classpath 的值 C:\jdk1.2.2\bin\tools.jar;C:\jdk1.2.2\lib\dt.jarpath 的值为 C:\jdk1.2.2\bin;C:\jdk1.2.2

Page 43: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计6.2.1 构建开发环境②Tomcat 的安装

·用WinZip等解压缩软件把 tomcat.zip解压缩到一个目录下,如把它解压缩到D:\ ,它自动创建 tomcat 子目录,这样在 D 盘就多了一个目录D:\tomcat 。· Tomcat 运行的端口号默认为 8080 ,可修改, Tomcat 有一个独立的HTTP 服务器,它必须使用一个还未被使用的端口号。修改方法为:打开$TOMCAT\conf\server.xml ,修改 Con textManager,如改为 9000 。·双击 $TOMCAT 目录下的 startup.bat 来启动 Tomcat。·在浏览器上输入 http://localhost: $ TOMCAT_PORT/ ,能看到如下图所示画面,就表示 Tomcat安装成功。 ·点击 Servlet Example 进入 Servlet界面,应该能执行 Servlet。 ·点击 JSP Example 进入 JSP界面,应该能执行 JSP ,若不能,修改 $ TOMCAT\conf\start.bat: 加上 SET JAVA_HOME=C:\jdk1.2.2即可。

Page 44: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计6.2.1 构建开发环境

2.Web 服务器 在Windows NT/2000 系统中使用 IIS或者 Apache配合 Tomcat 的组合,具有较好的性价比。本实例使用 Tomcat 作为 Web 服务器,而Web 服务器的更改对程序部分没有任何的影响,这体现基于 Java 电子商务解决方案的跨平台性。3.数据库系统可采用 Oracle,MS SQL Server和 Sybase等任何大型数据库,本实例使用 MS Access桌面数据库作为实例的数据库管理系统,通过 JDBC-ODBC桥与 JavaBean 通信,使程序的具体实现和数据库系统的变化无关。4.开发工具可使用 Jbuilder 和 Visual Age For Java等 Java集成开发环境生成JavaBean 。至于 JSP 可使用任何HTML 常用开发工具。

Page 45: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计6.2.1 构建开发环境

Page 46: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计6.2.2 综合应用实例1. 数据库表结构

字段名称 中文名称 类型 长度Goods_no 物品编号 Vchar 10

Goods_name

物品名称 Vchar 50Amount 采购数量 Int

Price 采购单价 FloatGold 币种 Vchar 15Unite 单位 Vchar 10Date 时间 Date

Remark 备注 Vchar 100表 1 计划采购表 jhcg_table

Page 47: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计6.2.2 综合应用实例

字段名称 中文名称 类型 长度Goods_no 物品编号 Vchar 10

Goods_name

物品名称 Vchar 50amount 库存数量 Int

Date 时间 Date

remark 备注 Vchar 100表 2 库存统计表 kctj.table

Page 48: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计6.2.2 综合应用实例

字段名称 中文名称 类型 长度Goods_no 物品编号 Vchar 10

Goods_name

物品名称 Vchar 50Amount 采购数量 Int

Price 采购单价 FloatGold 币种 Vchar 15Unite 单位 Vchar 10Date 时间 Date

Remark 备注 Vchar 100表 3 实际采购表 sjcg_table

Page 49: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计6.2.2 综合应用实例2.JavaBean 设计 业务逻辑功能:根据计划采购表和库存统计表生成实际采购表,同时完成各数据库的增、删、改、查等通用操作。 本实例对数据库连接和执行 SQL语句等通用数据库操作进行封装,通过实现DBConnBean 程序和数据库的连接和 DBQueryBean两个 JavaBean 来完成上述功能。其中 DBConnBean负责 Java 应用程序和数据库的连接;DBQueryBean提供一组执行标准 SQL 的功能。( l)DBConnBean.java package dbaccess; import java.sql.*; import java.util.*; import java.io.*; public class DBConnBean implements Serializable{

Page 50: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计private String DBDriver = “sun.jdbc.odbc.JdbcOdbcDriver”;private String DBHost “= 127.0.0.1”;private String DBName “= demo”;private String conp “= jdbc:odbc:db_demo”;private String username = “”;private String password “”= ; private boolean xdebug = true;

public Connection con = null;

public String sql = null;Statement stmt = null;public ResultSet result = null;private int affectedRows = 0;

public DBConnBean(){ xdebug = true; con = null; sql = null; }

Page 51: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计public Connection Connect() throws Exception{ String msg = null; try { Class.forName(DBDriver).newlnstance(); } catch(Exception e) { msg = “ 加载数据库驱动失败”; if(xdebug) msg + = “(驱动‘”+DBDriver+”’)”; throw new Exception(msg); } try { String conStr = conp;

Page 52: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计 con = DriverManager.getConnection(conStr,username,password); } catch(SQLException e) { msg = “!! 数据库连接失败” ; if(xdebug) { msg + = “(错误信息 = ”’ + e.getMessaqe() +”’ SQL状态值 = ’” +e.getSQLState() ”’ + 错误代码 = ’” + e.getErrorCode() + ”’) +”’); } throw new Exception(msg); } return con; } protected void finalize() throws Throwable

Page 53: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计{ super.finalize(); if (stmt ! = null) stmt.close(); if (result ! = null) result.close(); }//最近一次对数据库查询受影响的行数public int getAffectedRows(){ return affectedRows;} public.Connection getCon(){ return con;}Public String getConp(){ return conp; }

Page 54: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计public String getDBDriver(){ return DBDriver;}public String getDBName(){ return DBName; }public boolean getDebug(){ return xdebug; }public String getPassword(){ return password; }

Page 55: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计public ResultSet getResult(){ return result;}public String getSql(){ return sql;}public String getUsername(){ return username;}public void over() throws Throwable{ finalize();}

Page 56: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计public ResultSet query() throws Exception{ result = null; affectedRows = 0; if(con = = null) Connect(); if (stmt == null) stmt = con.createStatement(); if (sql.substring(0,6).equalsIgnoreCase(“select”)) { result = stmt.executeQuery(sql); } else { affectedRows = stmt.executeUpdate(sql); }

Page 57: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计 return result;}public ResultSet query(String s) throws Exception{ sql = s; return query();}public void setDBDriver(String s){ DBDrive = s;}Public void setDebug(boolean b){ xdebug = b;}

Page 58: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计public void setgetConp(String s){ conp = s;}Public void setgetDBName(String s){ DBName = s;}public void setgetUsername(String s){ username = s;}public void setPassword(String s){ password = s;}Public void setSql(String s)

Page 59: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计 { sql = s; }}(2) DBQueryBean.javapackage dbacces;import java.sql.*;import java.util.*;import java.io.*;import java.lang.reflect.*;public class DBQueryBean implements Serializable{

Page 60: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计 DBConnBean dbc; String sql = null; int rowcount = 0; int colcount = 0; int limitcount = 0; Vector result = null; public String_WATCH = “”; public DBQueryBean() { dbc = new DBConnBean(); try { dbc.Connect(); } catch(Exception e) { handleException(e); }

Page 61: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计protected void finalize() throws Throwable{ super.finalize(); if (dbc ! = null) dbc.over(); if (result ! = null) result.removeAllElements(); }public String get(int row, int col) { if (result == null || row > = result.size()) return null; String r[] = (String[])result.elementAt( row); if (col > = java.lang.reflect.Array.getLength(r)) return null; return r[col];}public int getAffRows() { return dbc.getAffectedRows(); }

Page 62: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计public int getColumncount() { return colcount;} public String[] getRow(int row) { if (result == null || row >= result.size()) return null; return (String [])result.elementAt(row); /* String ret[] = new String[colcount]; Vector r = (Vector)result. elementAt(row); for (int I = 0; i<colcount; i++ ) ret[i] = (String)r.elementAt(i); return ret; */ }public int getRowcount() { return rowcount;}

Page 63: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计 public void handleException(Exception e) { _WATCH = e.getMessage(); } public void init() { rowcount = 0; colcount = 0; limitcount = 0; result = null; } public void over() throws Throwable { finalize(); }

Page 64: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计 public int query(String sql) { result = new Vector(); int ret = 0; try { ResultSet rs = dbc.query(sql); if (rs == null) { ret = dbc.getAffectedRows(); } else { ResultSetMetaData rm = rs.getMetaData(); colcount = rm.getColumnCount(); while (rs.next())

Page 65: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计{

String row[] = new Striing[colcount]; for ( int i = 0; i < colcount; i++) row[i] = rs.getString(i+1); result. addElement(row); rowcount + +; } rs.close(); // to release the resource. ret = result.size(); }}catch(Exception e) { handleException(e); return –1; } return ret; }}

Page 66: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计3. JSP 设计( 1 )插入操作完成对数据库表的记录插入功能,其中计划采购表的插入主页面( insert_jhcg.him )如图。 insert_jhcg.htm将用户输入传送给demo_ insert_jhcg.jsp ,完成插入操作。

Page 67: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计改 jsp文件的功能代码为:< html><body>< jsp:useBean id = “DBConn” class = “dbaccess.DBConnBean” scope=“page”/>< jsp:useBean id = “DBBean” class = “dbaccess.DBQueryBean” scope = “page”/><hr> < ! --test JavaBean--><% if(DBConn ==null||DBBean ==null){ out.println(“JavaBean not found!”); return; } %> <! --try db_demo connection-->

Page 68: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计<% try { DBConn.Connect(); }catch(Exception e) { out.println(e.getMessage()); } %> <! --execute sql statement--> <% String insGoodno = request.getParameter(“ed_jhcg_no”); String insGoodname = request.getParameter(“ed_jhcg_name”); int insAmount = (Inteqer.valueOf(request.getParameter(“ed_jhcg_amount”))).intValue();float insPrice = (Float.valueOf(request.getParameter(“ed_jhcq-prce”))).floatValue();String insGold = request.getParameter(“ed_jhcg_gold”);String insUnit = request.getParameter(“ed_jhcg_unit”);String insRemark = request.getParameter(“ed_jhcg_remark”);

Page 69: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计String sqlStatement = “insert into jhcg_table(good_no, good_name,amount,price,gold,unit,remark) values(“+”’”+insGoodno ”’”+ +”,”+”’”+insGoodname +”’”+”,”+insAmount+”,”+insPrice+”,”+”’”+ insGold+”’”+”,”+”’”+ insUnit+”’”+”,”+”’”+ insRemark+”’”+”)”; try { DBBean.query(sqlStatement); }catch(Exception e) { out.println(e.getMessage()); } %> < a href ”= demo_main.htm”>Records inserted…Click here to return< /a>< /p > < /body> < /html>

Page 70: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计( 2 )查询操作该查询主页面主要提供对 3 个数据库表的条件查询功能,如下图。

Page 71: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计Query.htm将用户选择查询的数据库表和查询条件发送给demo_query.jsp,由 jsp文件完成数据库查询操作和查询结果集的返回及显示,其功能代码如下: < html> <body> <% String sqlStatement; String sqlField “”= ; String whichTable “”= ; String hereClause “”= ; String queryNo = “”; String queryName = “”;%>< jsp: useBean id “= DBConn” class “= dbaccess.DBConnBean” scope = “page”/>< jsp: useBean id “= DBBean” class “= dbaccess.DBQueryBean” scope = “page”/><hr><! --test JavaBean-->

Page 72: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计<% if(DBConn = null||DBBean = null) { out.println(“JavaBean not found!”); return; }%><! --try db_demo connection--><% try { DBConn.Connect();}catch(Exception e){ out.println(e.getMessage()); }%><! --prepare sql statement--><% String queryRequest = request.getParameterter(“rb_request); //out.println(“queryRequest:” + queryRequest);

Page 73: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计String whichCB = “”; if (queryRequest.equals(“1”)){ whichCB = “ ck_jhcg”; whichTable = “jhcg_table”; queryNo = request.getParameter(“ed_jhcg_no”); queryName = request.getParameter(“ed_jhcg_name”); if (!queryNo.equals(“”)) whereClause “= where good_no=“+”’”+queryNo+”’”; if(!queryName.equals(“”)){ if(!queryNo.equals(“”)) whereClause “+ = and good_name=“+”’”+ queryName +”’”; else whereClause “= where good_name ” ”’”= + +queryName ”’”+ ; } }if(queryRequest.equals(”2”)){ whichCB “= ck_kctj”; whichTable “= kctj_table”;

Page 74: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计queryNo = request.getParameaer(“ed_kctj_no”); queryName = reequest.getParamater(“ed-kctj_name”); if(!queryNo.equals ”’”( )) whereClause “= where good_no=“+”’” + queryNo ”’”+ ; if(!queryName.equals ””( )){ if( ! lqueryNo.equals ””( )) whereClause ”+= and good_name=“+”’”十 queryName ”’”+ ; else whereClause = “where good_name = “ ”’” + + queryName+”’”; } } if(queryRequest.equals ”( 3”)){ whichCB ”= ck_sjcg”; whichTable “= sjcg_table”; queryNo = request.getParameter ”( ed_sjcg_no”);

Page 75: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计queryName = request.getParameter(“ed_sjcg_name”);if (! queryNo.equals(“”)) whereClause = “where good_no = “+”’”+ queryNo+”’”;if(! queryName.equals ””( )) { if(! queryNo.equal(“”)) whereClause + = “and good_name = “+”’”+ queryName+”’”; else whereClause ” = where good_name =“ ”’”+ + queryName ”’”+ ; }}String[] printTitle = request.getParameterValues(whichCB);%>< ! --create query sql statement--><% sqlStatement “= select”;for( int i= 0; i< printTitle.length; i++) { sqlField += printTitle[i] ” ”+ , ; }

Page 76: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计sqlStatement +=sqlField.substring ( 0, sqlField.length()-1)+whichTable; if(!whereClause.equals(“”)) sqlStatement += whereClause; %> <! --show query response--> <% try { DBBean.query(sqlStatement); }catch(Exception e){ out.println ”( Database Error!” ); } int rows = DBBean.getRowcount(); int cols = DBBean.getColumncount(); %> < Table align ”= center” width ”= 80 ” % border =1> < tr align = center> <%

Page 77: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计for( int i=0; i<printTitle.length; i++){ out.println(”< td >< b ”> ); out.println(printTitle[i]); out.println ”( < /b></ td ”> ); } %> < /tr> <% for ( int i = 0; i < rows ; i++){ out.println ” ( < tr ”> ); for( int j = 0; j<cols; j++) out.println ”( < td ”> +DBBean.get(i,j ” )+ < / td ”> ); out.println ”( </ tr ”> ); } %> < /Table><br>

Page 78: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计<hr> <a href=“demo_main.htm”>Click here to return< /a>< /p> < /body> < /html >(3 )生成实际采购表 生成数据库表是一个隐式操作,程序根据计划采购表和库存统计表的相应字段生成实际采购表,不需要用户的任何输入,其功能代码如下(demo_create.jsP): <%@page import = “java.util. *”%> < html> <body> < jsp:useBean id ”= DBConn” class ”= dbaccess.DBConnBean” scope ”= page”/> < jsp:useBean id=“DBBea” class=“dbaccess.DBQueryBean” scope ”= page”/> < hr> <! --test JavaBean--> <% if(DBConn == null||DBBean == null){ out.println(“JavaBean not found!”); return; }

Page 79: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计%> <! --try db_demo connection--> <% try{ DBConn.Connect?(); } catch(Exception e){ out.println(e.getMessage()); }%><! --prepare Sql statement--><% int amount_jhcg,amount_kctj; Vector updateRs = new Vector(); DBBean.query(“delete * from sjcg_table”); //delete all old records in sjcg_table DBBean.query(“selete jhcg_table.good- no, jhcg_ table.good_ name, jhcg_ table. amount,kctj_ table.amount, jhcg_ table.unit from jhcg_ table left join kctj_ table on kctj_ table.good_ no=jhcg_ table.good_ no”); int rows = DBBean.getRowcount(); Int cols = DBBean.getColumncount();

Page 80: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计for ( int i = 0; i < rows; i++){ String record[] = new String[4]; record[0] = DBBean.get( i,0); record[1] = DBBean.get( i,1); amount_jhcg =( Integer.valueOf(DBBean.get(i,2))).intValue(); if(DBBean.get ( i , 3 )== null)amount_kctj = 0; else amount_kctj = ( Integer.valueOf(DBBean.get(i,3))).intValue(); record[2] = Integer.toString(amount_jhcg-amount_kctj ); record[3] = DBBean.get(i,4); updateRs.addElement( record); } for( int i = 0; i< rows ; i++){ String insRecord[] = (String[])updateRs.elementAt(i); String insGoodno, insGoodlname, insUnit, insAmount ; insGoodno = insRecord[0]; insGoodname = insRecord[1]; insAmount = insRecord[2」; insUnit = insRecord[3];

Page 81: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计String sqlStatment = “insert into sjcg_table( good_no, good_name, amount, unit) values ” ”’”( + + insGoodno ”’” ” ” ”’”+ + , + + insGoodname

”’” ” ”+ + , + in- sAmount ” ” ”’” + , + + insUnit ”’” ” ”+ + ) ; DBBean.query( sqlStatement); DBBean.query ”( delete * from sjcg_ table where amount <=0”); }%>< a href=“demo_main.htm”>Database created…Click here to return< /a>< /p >< /body>< /html>

Page 82: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计6.3 电子商务系统设计应用实例

6.3.1 电子商务应用系统总体结构6.3.2 电子商务系统设计应用实例

Page 83: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计6.3.1 电子商务应用系统总体结构

DB2 数据库服务器安全注册服务器

PC 机

防火墙 Web 服务器Net.Commerce

DB2客户端

防火墙

路由器

Internet

Page 84: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计6.3.2 电子商务系统设计应用实例1. 电子商务应用系统平台—Net.Commerce

(1)简介IBM Net.Commerce 是一个集成软件包,为商家建立有效的电子销售渠道提供灵活的解决方案。它支持商家对消费者( B2C )和商家对商家( B2B )的运作方式。提供一整套工具来设计和管理电子商城。 Sit Mannger 工具软件可对商城进行管理,为不同的商家在商城内建立一个或多个商店,并可对商城内的商店进行分类赋予不同的特性。 Store Manaer 工具可为虚拟商店建立交互的产品目录,针对不同的顾客群提供不同的目录和价格,还可以自动计算包括运营及税金等的全部价格。提供一个电子地址簿,记录着特定的送货信息,消费者可为其购买的每一种商品分别指定相同或不同的收货地址。 Template Designer基于 Java 的网页设计工具。保留通过 SET进行交易支付的接口,全面支持 SET ,可在实施的任何阶段加以应用。

Page 85: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计(2)运行环境

应用开发Net.Commerce:Web 服务器, DB2 数据库,开发工具,样例

操作系统: AIX,NT,OS/390,OS/400

机型: R6000,PC 服务器, AS400, S/390

Page 86: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计(3) 结构

Net.Commerce管理中心

商城管理员商店管理员

模板设计器

连接器 守护进程Net.Data

安全服务器 关系数据库

商家 消费者

Net.Commerce服务器

Page 87: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计6.3.2 电子商务系统设计应用实例

1.Easy Merchant 网际商场动态广告 ;产品促销 ; 群组通告 ;客户问卷调查 ;畅销排行榜 ;个人风格页面 ;订单管理 ;商品查询 ;购物快讯;商品优惠设定;访问人数的统计;商品点数管理。2. 网上电子订货系统 EOS 资料管理;产品查询;群组通告;自动报价功能;订单统计分析;产品促销。

Page 88: 第6章 电子商务系统规划与设计

第 6章 电子商务系统规划与设计

THANK YOU !

本章结束!