基于JSP的网上书店销售系统的设计与实现

来源 :中国管理信息化 | 被引量 : 0次 | 上传用户:kaigg
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  [摘 要]本文以MYSQL为数据库开发平台,以Tomcat网络信息服务作为应用服务器,采用JSP(Java Server Pages)技术开发了一个网上书店销售系统,该系统是一个动态的、交互式的、具有商品提供功能和系统管理功能的电子商务系统。
  [关键词]JSP;Tomcat;网上书店销售系统
  [中图分类号]F724.6;TP393
  [文献标识码]A
  [文章编号]1673-0194(2009)05-0106-04
  
  伴随着电子商务技术的不断成熟,电子商务的功能也越来越强大,注册用户可以在网上搜索购买到自己想要的各种商品,初步让人们体会到了足不出户,便可随意购物的快感。网上购物系统是一种具有交互功能的商业信息系统,它向用户提供静态和动态两类信息资源,当今比较流行的网上购物系统,国外有“淘宝网”,国内有“当当网”。本文以MYSQL为数据库开发平台,以Tomcat网络信息服务作为应用服务器,采用基于服务器端的JSP、Java的组件JavaBean,以及网页编程语言HTML,构建了一个小型动态商务网站——网上书店系统。该系统能实现用户的注册、登录功能;能够实现图书的查询,订购等功能,基本上具备一个网上商品销售系统应具备的功能,可以说,目前的大型商务网站也就是这个小型网站在内容上的扩充和重复。
  
  1 JSP语言及其特点
  
  在传统的网页HTML文件(*.htm,*.html)中加入Java程序片段(Scriptlet)和JSP标记(tag),就构成了JSP网页(*.jsp)。Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序片段,然后将执行结果以HTML格式返回给用户。程序片段可以操作数据库、重新定向网页以及发送E-mail等[1]。JSP基于强大的Java语言[2-4],具有良好的伸缩性,在网络数据库应用开发领域具有得天独厚的优势,而且它在多方面加速了动态Web页面的开发,譬如,将内容的生成和显示进行分离;强调可重用的、跨平台的组件来执行应用程序所要求的更为复杂的处理;采用标识简化页面开发;拥有Java语言“一次编写,各处运行”的特点等。
  
  2 系统需求分析及总体设计
  
  2.1 需求分析
  本系统是一个中小型的电子商务系统——网上书店,可以为各类用户提供方便的在线买书环境。用户可以在系统中实现注册、浏览书籍、搜索查询书籍、处理订单等功能;管理员可以通过用户管理、订单管理、图书管理等管理功能来对系统进行维护更新。
  2.2 系统功能模块设计
  网上购物系统可以分为前台和后台两个部分(如图1所示),前台部分由用户使用(如图2所示),主要包括用户注册、生成订单、购物车管理、查看购物车订购产品、订单查询、搜索引擎等模块;后台部分由管理员使用,主要包括管理员身份验证、图书管理、处理订单、用户信息管理等模块。
  图上书店系统前台功能用户管理购物车管理订单管理个人资料管理搜索引擎后台功能管理员身份验证商品管理处理订单用户信息管理……
  
  ′BookName′ varchar(40) NOT NULL default ″,
  ′BookClass′ int(11) NOT NULL default ′0′,
  ′Author′ varchar(25) default NULL,
  ′Publish′ varchar(150) default NULL,
  ′BookNo′ varchar(30) default NULL,
  ′Content′ text,
  ′Prince′ float default NULL,
  ′Amount′ int(11) default NULL,
  ′Leav_number′ int(11) default NULL,
  ′RegTime′ datetime NOT NULL default ′0000-00-00 00:00:00′,
  ′picture′ varchar(200) default NULL,
  PRIMARY KEY (′Id′)
  ) ENGINE=MyISAM DEFAULT CHARSET=latin1;
  /*
  Table structure for bookadmin
  */
  drop table if exists ′bookadmin′;
  CREATE TABLE ′bookadmin′ (
  ′AdminUser′ varchar(20) default NULL,
  ′AdminPass′ varchar(50) default NULL
  ) ENGINE=MyISAM DEFAULT CHARSET=latin1;
  /*
  Table structure for bookclass
  */
  drop table if exists ′bookclass′;
  CREATE TABLE ′bookclass′ (
  ′Id′ int(11) NOT NULL auto_increment,
  ′ClassName′ varchar(30) NOT NULL default ″,
  PRIMARY KEY (′Id′)
  ) ENGINE=MyISAM DEFAULT CHARSET=latin1;
  /*
  Table structure for orders
  */
  drop table if exists ′orders′;
  CREATE TABLE ′orders′ (
  ′Id′ int(11) NOT NULL auto_increment,
  ′orderId′ varchar(20) NOT NULL default ″,
  ′UserId′ int(11) NOT NULL default ’0’,
  ′SubmitTime′ datetime NOT NULL default ′0000-00-00 00:00:00′,
  ′ConsignmentTime′ datetime default NULL,
  ′TotalPrice′ float default NULL,
  ′content′ text,
  ′IPAddress′ varchar(20) default NULL,
  ′IsPayoff′ int(11) default NULL,
  ′IsSales′ int(11) default NULL,
  PRIMARY KEY (′Id′)
  ) ENGINE=MyISAM DEFAULT CHARSET=latin1;
  /*
  Table structure for sequence
  */
  drop table if exists ′sequence′;
  CREATE TABLE ′sequence′ (
  ′id′ int(11) NOT NULL default ′0′
  ) ENGINE=MyISAM DEFAULT CHARSET=latin1;
  /*
  Table structure for shop_user
  */
  drop table if exists ′shop_user′;
  CREATE TABLE ′shop_user′ (
  ′Id′ int(11) NOT NULL auto_increment,
  ′UserName′ varchar(20) NOT NULL default ″,
  ′PassWord′ varchar(50) NOT NULL default ″,
  ′Names′ varchar(20) default NULL,
  ′Sex′ char(2) default NULL,
  ′Address′ varchar(150) default NULL,
  ′Phone′ varchar(25) default NULL,
  ′Post′ varchar(8) default NULL,
  ′Email′ varchar(50) default NULL,
  ′RegTime′ datetime default NULL,
  ′RegIpAddress′ varchar(20) default NULL,
  PRIMARY KEY (′Id′)
  ) ENGINE=MyISAM DEFAULT CHARSET=latin1;
  3.2 用JSP连接数据库
  在本系统中,需要多次连接数据库,而且这种连接是一项很消耗资源的操作,因此,在本系统中将数据库连接的部分写成了一个JavaBean。文件名为DataBase.java,关键代码如下:
  public class DataBase {
  public Connection conn;
  public Statement stmt;
  public ResultSet rs=null;
  public String sqlStr="";
  public DataBase() {
  this.connect();
  }
  public boolean connect(){
  try{
  Class.forName("com.mysql.jdbc.Driver").newInstance();
  String url ="jdbc:mysql://localhost/bookstore?useUnicode=true
其他文献
本报讯 杭州互联网公证处基于司法联盟链打造的知识产权服务平台7月15日正式上线,平台基于区块链技术,提供电子数据在线存证、出证服务,将缩短取证和出證时间,充分发挥公证职能。同时平台与杭州互联网法院、司法鉴定中心、互联网公证处等司法节点对接,提高了存证数据的可信度。
[摘要] 本文结合微利的校园经济的特点,以个性化纪念册为例,从分析中国大学生市场需求出发,对个性化纪念册在高校校园推广的营销策略进行研究,并结合实例进行验证,具有实际价值和推广价值。  [关键词] 校园经济; 个性化; 大学生市场; 营销策略; 市场推广  doi : 10 . 3969 / j . issn . 1673 - 0194 . 2012 . 14. 041  [中图分类号] F27
本报讯 近日,农业农村部农村合作经济指导司与阿里巴巴集团达成战略合作,共同推进乡村治理、农民合作社和农业社会化服务组织的数字化。双方将共建数字化乡村治理平台。阿里巴巴将基于钉钉平台的基础功能,针对乡村组织特点和治理需求,以社会管理、公共服务、应急处置、乡风文明等内容为重点,为乡镇、村两级免费搭建数字化治理平臺。同时,逐步推进乡村治理过程中的组织在线、沟通在线、协同在线、业务在线、生态在线,用数字化
[摘 要]目前,产学研模式成为企业技术研发和转移的重要途径。本文首先阐述了产学研模式以及技术研发和转移的定义,接着分析现阶段产学研的类型及其存在的问题,并以清华大学重型装备成形制造工程研究所为例进行深入分析,试图为我国产学研模式的发展提供一种思路。  [关键词]产学研;技术研发和转移;清华大学;中冶京唐  doi:10.3969/j.issn.1673-0194.2009.14.038  [中图分
近日,据国外媒体报道称,大众将推出自己的充电服务“We Charge”,并在欧洲地区建立15万个充电桩。大众汽车数字充电服务主管Richard van Tatenhove表示,通过“We Charge”,大众为欧洲客户提供快捷、便利的电动化出行解决方案。  “We Charge”将采取三种资费模式。其中,“We Charge Free”的月费为零,但单次充电价格较高,适用于很少使用公共充电桩的车主
工信部支持创建北京等国家人工智能创新应用先导区  工业和信息化部近日印发通知,支持创建北京、天津(滨海新区)、杭州、广州、成都国家人工智能创新应用先导区。这是继上海(浦东新区)、深圳、济南-青岛3个先导区后,工业和信息化部发布的第二批先导区名单。至此,全国人工智能创新应用先导区已增至8个。“十四五”时期,工业和信息化部将进一步与有关省市加强协同,将先导区建设作为推动人工智能和实体经济深度融合的重要
LG Display近日表示,将牵头开发“可拉伸屏幕”这一国家级项目。据悉,该项目共有21家公司和机构參与,由韩国贸易、工业和能源部(MOTIE)支持,目标是在2024年之前生产出一种可拉伸的显示屏,该显示屏可以延长20%。  LG称,可拉伸屏幕具有一定弹性,可以像橡皮筋一样伸长,并且能够支持各种形状而不会发生变形和扭曲。与目前的可弯曲、可折叠之类的柔性显示屏相比,该款产品将拥有更加广泛的应用范围
摘要:当前经济高速发展,企业的风险控制力已经受到了越来越多企业的关注,对企业风险的认识、控制及防范已经成为当今企业长效发展的重要课题。下面,本文对企业风险的含义及特征进行简单概述,并对企业风险控制力的有效措施进行分析。  关键词:企业;风险;控制力;措施;分析    自上世纪90年代至今,世界经济一直处于危机四伏、动荡不安的局面,大范围的金融危机时有发生。在亚洲金融危机后,许多东南亚的企业破产了,
[摘 要] 本文介绍了多主体仿真的基本理论,对新一代仿真平台Repast进行了阐述。通过对演化囚徒困境的进一步理论分析和仿真研究,揭示出多主体博弈的演化机制和规律。同时对影响博弈演化的因素进行了分析,比如博弈重复的次数、博弈者的适应系数、博弈邻居的选择等。并结合客观现实,对仿真结果进行了解析。仿真结果进一步揭示了Repast仿真工具在多主体演化博弈分析中的高效性和可靠性。  [关键词] 博弈论;多
[摘 要] 信息技術的课堂语言表达是一门艺术。我们应注重培养学生信息技术语言准确规范、简明扼要。这需要我们信息技术教师在努力提高自己的专业水平的同时,还要在生活中做一个有心人,随时积累有用的素材,在工作中做一个细心人,将积累的知识和经验恰如其分地运用到课堂教学中。笔者结合自身从教十余年的工作实践,主要从3个方面培养中学生的信息技术语言表达能力。  [关键词] 信息技术; 课堂教学; 课堂语言