搜档网
当前位置:搜档网 › 网上书店设计与使用-实验报告

网上书店设计与使用-实验报告

网上书店设计与使用-实验报告
网上书店设计与使用-实验报告

实验报告

题目:网上书店

专业软件工程

学生姓名

班级学号

指导教师

指导单位

日期2010-6-8

网上书店

一、课题内容和要求

内容:创建一个网上书店平台。实现网上书店的基本功能,例如:用户用可查看可购买的书。用户可查看书的具体信息。在此基础上可以增加相应功能。

要求:利用J2EE编程开发。可以在实现基本功能的基础上增加其他功能。界面良好。用户可以通过互联网与浏览器访问网上书店平台。

二、需求分析

用户:

1、用户可以注册会员,利用已经注册的用户名来登录相关界面。

2、用户可以登记自己的相关性信息,并且可以查看、更改自己的相关信

息。

3、用户根据已经注册的用户名来登录系统。用户可以查看所有物品的信

息。

4、用户可以将想要购买的物品加入购物车,对已经加入购物车的物品,

用户可以查看其相关信息,并且可以删除已经加入的物品。

5、对于购物车功能,可以增加新书、修改数量、删除已选书籍等,确认

后,完成交易;

6、用户可以根据作者的姓名、书名、书号来检索书籍。

7、用户可以查看当前订单和以往订单的相关信息。

8、客户可以通过信息反馈系统跟书店员工进行交流。

管理员:

1、管理员可以删除、更改用户信息。

2、管理员可以删除、更改订单信息,可以输入订单的发货日期。

3、管理员可以删除、更改所有商品信息。

其他需求:

系统应该具有一定的安全性和可靠性。

数据库支持大量数据的使用。

三、概要设计

体系结构设计:

用户使用流程:

用户应用系统模块设计:

管理员应用模块:

四、源程序代码

Base:

/** 供JSON-RPC组件远程调用的AjaxBean */

public class AjaxBean extends BaseLog {

/**取得商品分类列表*/

public String[][] getCategory(){

String[][] options = null;

MerService service = new MerServiceImpl();

try{

List list = service.browseCategory();

Category cate = null;

int i = 0;

if (list!=null){

options = new String[list.size()][2];

Iterator it = list.iterator();

while(it.hasNext()){

cate = (Category)it.next();

options[i][0] =cate.getId().toString();

options[i][1] =cate.getCateName().trim();

i++;

}

}else{

options = new String[1][2];

options[0][0] ="0";

options[0][1] ="无商品分类";

}

}catch(Exception ex){

https://www.sodocs.net/doc/9d4283062.html,("在执行AjaxBean类中的getCategory方法时出错:\n");

ex.printStackTrace();

}

return options;

}

/**取得会员级别*/

public String[][] getMemberLevel(){

String[][] options = null;

MemService service = new MemServiceImpl();

try{

List list = service.browseMemberLevel();

Memberlevel ml = null;

int i = 0;

if (list!=null){

options = new String[list.size()][2];

Iterator it = list.iterator();

while(it.hasNext()){

ml = (Memberlevel)it.next();

options[i][0] =ml.getId().toString();

options[i][1] =ml.getLevelName().trim();

i++;

}

}else{

options = new String[1][2];

options[0][0] ="0";

options[0][1] ="无会员级别";

}

}catch(Exception ex){

https://www.sodocs.net/doc/9d4283062.html,("在执行AjaxBean类中的getMemberLevel方法时出错:\n");

ex.printStackTrace();

}

return options;

}

/**注册登录帐号有效性验证*/

public boolean chkLoginName(String loginName){

MemService service = new MemServiceImpl();

boolean result = false;

try{

result = service.chkLoginName(loginName);

}catch(Exception ex){

https://www.sodocs.net/doc/9d4283062.html,("在执行AjaxBean类中的chkLoginName方法时出错:\n");

ex.printStackTrace();

}

return result;

}

/**修改选购商品数量*/

public boolean modiCart(int id,int number){

CartService service = new CartServiceImpl();

boolean result = false;

try{

result = service.modiCart(Integer.valueOf(id), number);

}catch(Exception ex){

https://www.sodocs.net/doc/9d4283062.html,("在执行AjaxBean类中的modiCart方法时出错:\n");

ex.printStackTrace();

}

return result;

}

/**调整会员级别*/

public boolean updateLevel(Integer id,Integer levelId){

MemService service = new MemServiceImpl();

boolean result = false;

try{

Member member = service.loadMember(id);

Memberlevel level = service.loadMemberLevel(levelId);

member.setMemberlevel(level);

service.updateMember(member);

result = true;

}catch(Exception ex){

https://www.sodocs.net/doc/9d4283062.html,("在执行AjaxBean类中的updateLevel方法时出错:\n");

ex.printStackTrace();

}

return result;

} }

ORM:

Mysessionfactory:

public class MySessionFactory {

private static String CONFIG_FILE_LOCATION = "/hibernate.cfg.xml";

private static final ThreadLocal threadLocal = new ThreadLocal(); private static Configuration configuration = new Configuration(); private static org.hibernate.SessionFactory sessionFactory;

private static String configFile = CONFIG_FILE_LOCATION;

static {

try {

configuration.configure(configFile);

sessionFactory = configuration.buildSessionFactory();

} catch (Exception e) {

System.err.println("%%%% Error Creating SessionFactory %%%%");

e.printStackTrace();

}

}

private MySessionFactory() {

}

public static Session getSession() throws HibernateException {

Session session = (Session) threadLocal.get();

if (session == null || !session.isOpen()) {

if (sessionFactory == null) {

rebuildSessionFactory();

}

session = (sessionFactory != null) ? sessionFactory.openSession(): null;

threadLocal.set(session);

}

return session;

}

/**Rebuild hibernate session factory*/

public static void rebuildSessionFactory() {

try {

configuration.configure(configFile);

sessionFactory = configuration.buildSessionFactory();

} catch (Exception e) {

System.err.println("%%%% Error Creating SessionFactory %%%%");

e.printStackTrace();

}

}

/*Close the single hibernate session instance.*/

public static void closeSession() throws HibernateException {

Session session = (Session) threadLocal.get();

threadLocal.set(null);

if (session != null) {

session.close();

}

}

/*return session factory*/

public static org.hibernate.SessionFactory getSessionFactory() { return sessionFactory;

}

/*return session factory session factory will be rebuilded in the next call*/

public static void setConfigFile(String configFile) {

MySessionFactory.configFile = configFile;

sessionFactory = null;

}

/*return hibernate configuration*/

public static Configuration getConfiguration() {

return configuration;

}}

SERVICE:

AdminServiceImpl:

/** 系统用户管理接口实现 */

public class AdminServiceImpl extends BaseLog implements AdminService { /** 系统管理员登录 */

public Admin adminLogin(String loginName, String loginPwd) throws Exception {

Session session = MySessionFactory.getSession();

Transaction tx = null;

Admin admin = null;

try{

String hql = "select a from Admin as a where a.loginName=:loginName and a.loginPwd=:loginPwd";

Query query = session.createQuery(hql);

query.setString("loginName", loginName);

query.setString("loginPwd", loginPwd);

query.setMaxResults(1);

tx = session.beginTransaction();

admin = (Admin)query.uniqueResult();

https://www.sodocs.net/doc/9d4283062.html,mit();

}catch(Exception ex){

if(tx!=null)tx.rollback();

https://www.sodocs.net/doc/9d4283062.html,("在执行AdminServiceImpl类中的adminLogin方法时出错:\n");

ex.printStackTrace();

}finally{

MySessionFactory.closeSession();

}

return admin;

}

/** 新增管理员 */

public boolean addAdmin(Admin admin) throws Exception {

Session session = MySessionFactory.getSession();

Transaction tx = null;

boolean status = false;

try{

tx = session.beginTransaction();

session.save(admin);

https://www.sodocs.net/doc/9d4283062.html,mit();

status = true;

}catch(Exception ex){

if(tx!=null)tx.rollback();

https://www.sodocs.net/doc/9d4283062.html,("在执行AdminServiceImpl类中的addAdmin方法时出错:\n");

ex.printStackTrace();

}finally{

MySessionFactory.closeSession();

}

return status;}

/** 浏览管理员 */

public List browseAdmin() throws Exception {

Session session = MySessionFactory.getSession();

Transaction tx = null;

List list = null;

try{

Query query = session.createQuery("from Admin as a order by a.id");

tx = session.beginTransaction();

list = query.list();

https://www.sodocs.net/doc/9d4283062.html,mit();

if

(!Hibernate.isInitialized(list))Hibernate.initialize(list);

}catch(Exception ex){

if(tx!=null)tx.rollback();

https://www.sodocs.net/doc/9d4283062.html,("在执行AdminServiceImpl类中的browseAdmin方法时出错:\n");

ex.printStackTrace();

}finally{

MySessionFactory.closeSession();

}

return list;}

/** 删除指定的管理员 */

public boolean delAdmin(Integer id) throws Exception {

Session session = MySessionFactory.getSession();

Transaction tx = null;

boolean status = false;

try{

tx = session.beginTransaction();

Admin admin = (Admin)session.load(Admin.class, id);

session.delete(admin);

https://www.sodocs.net/doc/9d4283062.html,mit();

status = true;

}catch(Exception ex){

if(tx!=null)tx.rollback();

https://www.sodocs.net/doc/9d4283062.html,("在执行AdminServiceImpl类中的delAdmin方法时出错:\n");

ex.printStackTrace();

}finally{

MySessionFactory.closeSession();

}

return status;}

/** 装载指定的管理员 */

public Admin loadAdmin(Integer id) throws Exception {

Session session = MySessionFactory.getSession();

Transaction tx = null;

Admin admin = null;

try{

tx = session.beginTransaction();

admin = (Admin)session.get(Admin.class, id);

https://www.sodocs.net/doc/9d4283062.html,mit();

}catch(Exception ex){

if(tx!=null)tx.rollback();

https://www.sodocs.net/doc/9d4283062.html,("在执行AdminServiceImpl类中的loadAdmin方法时出错:\n");

ex.printStackTrace();

}finally{

MySessionFactory.closeSession();

}

return admin;}

CartServiceImpl:

public class CartServiceImpl extends BaseLog implements CartService {

/** 选购商品 */ public boolean addCart(Member member, Merchandise mer, int number)

throws Exception {Session session = MySessionFactory.getSession();

Transaction tx = null;

boolean status = false;

try{Cartselectedmer sel = null;

int favourable = member.getMemberlevel().getFavourable().intValue();

//判断该会员是否已经有使用中的购物车

String hql ="from Cart as a where a.member=:member and a.cartStatus=0";

Query query = session.createQuery(hql);

query.setEntity("member", member);

query.setMaxResults(1);

tx = session.beginTransaction();

Cart cart = (Cart)query.uniqueResult();

if (cart==null){cart = new Cart();

cart.setCartStatus(new Integer(0));

cart.setMember(member);

cart.setMoney(Double.valueOf(number*mer.getPrice().doubleValue()) ); cart.getMerchandises().add(mer);

session.save(cart);}else{

//如果选购的是已经选购过的商品则只增加商品数量即可

hql = "select a from Cartselectedmer as a where a.cart=:cartid and a.merchandise=:merid order by a.id desc";

query = session.createQuery(hql);

query.setInteger("cartid", cart.getId().intValue());

query.setInteger("merid", mer.getId().intValue());

query.setMaxResults(1);

sel = (Cartselectedmer)query.uniqueResult();

int total = number;

System.out.println((total*mer.getPrice().doubleValue()*favourable /100)); if(sel!=null){total = number+sel.getNumber().intValue();

sel.setNumber(Integer.valueOf(total));

if (mer.getSpecial().intValue()==1){//特价商品

sel.setPrice(mer.getSprice());

sel.setMoney(Double.valueOf(total*mer.getSprice().doubleValue());

}else{//普通商品

sel.setPrice(Double.valueOf(mer.getPrice().doubleValue()*favou rable/100));

sel.setMoney(Double.valueOf(total*mer.getPrice().doubleValue()*fa vourable/100)); }

session.update(sel);

}else{cart.getMerchandises().add(mer);}if(mer.getSpecial().intVal ue()==1){cart.setMoney(Double.valueOf(cart.getMoney().doubleValue()+n umber*mer.getSprice().doubleValue()));}else{//普通商品

cart.setMoney(Double.valueOf(cart.getMoney().doubleValue()+num ber*mer.getPrice().doubleValue()*favourable/100));}

session.update(cart);

}https://www.sodocs.net/doc/9d4283062.html,mit();

//如果是尚未选购过的则要修改选购记录的有关字段

if(sel==null){tx = session.beginTransaction();

hql = "select a from Cartselectedmer as a where a.cart=:cartid and a.merchandise=:merid order by a.id desc";

query = session.createQuery(hql);

query.setInteger("cartid", cart.getId().intValue());

query.setInteger("merid", mer.getId().intValue());

query.setMaxResults(1);

sel = (Cartselectedmer)query.uniqueResult();

if(sel!=null){

sel.setNumber(Integer.valueOf(number));

if (mer.getSpecial().intValue()==1){//特价商品

sel.setPrice(mer.getSprice());

sel.setMoney(Double.valueOf(number*mer.getSprice().doubleValue()) );}

else{//普通商品

sel.setPrice(Double.valueOf(mer.getPrice().doubleValue()*favou rable/100));

sel.setMoney(Double.valueOf(number*mer.getPrice().doubleValue()*f avourable/100));} session.update(sel);}

https://www.sodocs.net/doc/9d4283062.html,mit();}

status = true;}catch(Exception ex){

if(tx!=null)tx.rollback();

https://www.sodocs.net/doc/9d4283062.html,("在执行CartServiceImpl类中的addCart方法时出错:\n");

ex.printStackTrace();

}finally{

MySessionFactory.closeSession();

}

return status;} }

五、测试数据及其结果分析

注册界面:

错误提示:

登陆后界面:

物品展示:

修改用户信息界面:

(正文格式:宋体,小4号,不加粗,两端对齐,1.5倍行距)

六、调试过程中的问题

在系统设计阶段,要考虑很多的问题。刚开始的时候,很多问题都没有仔细考虑,导致后来实现的时候,出现了很多问题,虽然做了很多但是不得不重新来过。

首先遇到的问题是没有考虑到复杂的事务处理。刚开始的时候,默认为执行

是顺序执行的,但是后来才意识到因为是多个模块需要相互协同运作,用户的操作也是不可预计的。所以必须考虑到到底要用什么样的设计策略来架构这个应用系统,来满足用户的多样需求。

另外,由于J2EE技术的复杂性给J2EE项目带来了很大的风险,在设计阶段的约束和所会面临的风险分析里面,我们并没有考虑到很多现实问题。但是在现实问题中,我们必须尽量规避很多将要面临的风险。对于这一部分,我们并没有深入去涉及。所出现的问题也只是代码的执行效率等有关代码执行的风险,在尽量优化代码的情况下,我们还是选择了忽略很多风险。

七、课程设计总结

此次课程设计所涉及到的知识有很大一部分是没有学习过的,对于决定了要考研的我,需要分离出大量时间准备考研方面的学习,要在一个月内了解新的方法属性并且能够实现到设计中去,这对我来说不能不说是一个新的挑战。这次课程设计相比于之前的设计更加锻炼了我的学习能力。这种能力在以后的学习工作生活重是非常重要的。在大学里注重的不仅是学习到的知识,更重要的是自学的能力。

这次实验,我学习到了很多,每一次停滞不前后找到出路都是一次探索的过程。即将大四了,我们小组成员间们间是第一次合作,在磕磕绊绊中大家都锻炼了自己的合作能力,这种课程设计给以后工作打下基础。希望越做越好。

网上书店课程设计

Java EE 课程设计报告 题目在线图书销售网站BookStore 的设计与实现 院系计算机科学与技术学院

目录 1 课程设计目的、任务及要求 (1) 1.1 课程设计目的 (1) 1.2 课程设计任务及要求 (1) 1.2.1 课程设计任务 (1) 1.2.2 课程设计要求 (1) 1.2.3 课程设计环境 (1) 2 需求分析 (2) 2.1 系统的可行性分析 (2) 2.2 系统功能需求分析 (2) 2.2.1 用户管理 (2) 2.2.2 图书管理 (3) 2.2.3 购物车管理 (3) 3 系统设计 (3) 3.1 系统总体结构设计 (4) 3.2 系统功能模块设计 (5) 3.2.1 登录模块 (5) 3.2.2 注册模块 (6) 3.2.3 图书管理模块 (7) 3.2.4 购物车模块 (7) 3.3 数据库逻辑结构设计 (9) 4 系统实现 (10) 5 系统测试 (13) 5.1软件测试的定义 (13) 5.2软件测试用例 (13) 6 课程设计小结 (14) 附录 (15)

1 课程设计目的、任务及要求 1.1课程设计目的 图书产品从其外部特征来看,品种繁多,实体书店或其它图书发行者无法有足够大的店面来展示所有品种;单价不高,在网络信用还存在缺失的环境下能造成的损失较小,读者也乐于尝试在线购买。所以网上书店网站也在互联网上纷纷出现。这样更便于用户在购书时对图书快速查询,节省购书时间,同时也便于商家对图书的管理与销售。 在线图书销售网站主要运用了JSP Web开发技术Servlet、JavaBean技术进行开发。Java Web开发包括两个方面:JSP/Servlet组件的开发,JDBC、JSTL、EL等服务的使用,涉及的技术主要包括JSP和Servlet。在该系统的实现中能更好的学习和掌握在Java web 技术、servlet技术和JavaBean技术的开发和应用。 1.2 课程设计任务及要求 1.2.1 课程设计任务 使用JSP、Servlet、JavaBean等技术创建一个在线图书销售网站BookStore。该网站应实现以下功能: 1、实现用户的注册、登陆、修改、退出等用户管理功能。 2、实现图书的添加、删除、更新等图书管理功能。 3、实现购物车功能。 1.2.2 课程设计要求 该网站可以方便用户随意查询、浏览、定购图书,会员输入用户名和密码进入该网站,可以浏览网站中的书,也可以输入要购买的书的关键字查询到相关的图书,从而选择自己满意的书购买。而会员可以通过注册成为该网站的会员。注册成功后,用户的信息会自动更新在用户表中。要与数据库建立连接,前台要实现对图书查询、图书的添加、图书更新。后台要实现对图书购买的功能。包括购物车管理、订单结算等。 1.2.3 课程设计环境 系统开发平台和工具:MyEclipse Professional 2014 GA,WebLogic 12c,MySQL 5.6.16。

软件工程网上书店管理系统详细课程设计报告(很经典)

一.引言 (1) 二.系统开发的目标 (1) 三.可行性研究 (2) 四.系统需求分析 (2) 五.总体设计 (3) 六.概要设计 (4) 七.详细设计 (7) 八.软件测试 (8) 九.页面显示效果及代码分析 (13) 十.特别说明......................................................... ..20十一.参考资料.. (21)

一、引言 1.编写目的 本需求分析文档的目的是说明网上书店管理系统最终需要满足的条件和限制,为进一步设计和实现提供依据。本文档将用户的需求用文字的形式固定下来,是与用户沟通的成果,也是用户验收项目时的参考。 2. 项目背景 系统名称:《网上书店管理系统》 需求背景分析:随着互联网的迅速发展以及我国经济的稳定平衡发展,人们对于知识的追求也越来越高,因而市场场上出现了各类的图书,但由于各种各样的原因使得消费者在选购图书的时候不能找到自己合意的书籍,同时由于网络经济的迅速发展激生出了网上卖书的现象,由于网上书店里面的图书相当丰富,且价格较市场上的书店里的便宜,以致于越来越多的人上网购书,同时也使得越来越多的人在网上开设自己的书店,本系统即是在以上各种条件成熟的条件下,建立的一个可以让消费者登录本系统购买他们的图书的一个网上书店管理系统。 系统用途:本系统利用网络平台,使得消费者和销售者足不出户即可实现买书和卖书的行为,同时大大减少的人员的参与。 系统使用范围:网上想买书者。 二、系统开发的目标 管理员可以维护客户注册信息、维护图书信息、处订定单信息、维护系统公告、网上售书。查看图书调查报告、游客可以在线注册为会员、投票、购书。本系统的设计目标将最终定位于完成以上所述的系统主要业务的基本模型上。 三、可行性研究 可行性研究是系统分析阶段的第二项活动。此活动的主要目标是:

网上书店设计报告

系统管理与维护 实验报告 姓名: 学号: 班级 时间:

一、系统背景 1.项目背景 随着网络在中国的广泛普及,网络支付手段的逐步完善,越来越多的中国人逐渐习惯于网上购物,习惯于鼠标点击下订单,送货上门的快捷便利的购物方式。传统书店的购书观念正在被网上书店这一方便快捷的购书方式所冲击。网上书店在国际互联网上可以实现的商务功能已经越来越多样化,几乎传统书店所提供的功能都可以在互联网上进行电子化的高效运作,而借助网络的跨地域特点,更是将传统书店的地域限制加以突破,全国各地的读者都可以通过网络在同一个网上书店购书,从而大大增加了客户的数量。 为了使网上书店的投入回报和管理效益最大化,在对网上书店进行系统开发之前,必须对一系列问题进行科学的论证,如网上书店的需求分析、网上书店系统的功能等等。 综上所述,网上书店已经成为互联网时代购书者的最佳选择,必将获得巨大的成功。 2.目的与要求 目的:为读者打造一个方便、快捷、高效、经济的购书平台。 要求: 1.游客可以随意浏览图书及网站信息,但只有在注册为网站会员后才能在线购书。游客注册成功后即为普通会员,当其购书金额达到一定数量时可升级为不同等级的会员,以享受相应的优惠折扣。 2.会员登录系统后,可通过不同方式(如书名、分类等)搜索图书信息、修改注册资料、网上订书、订单查询与修改、发布留言等。 3.管理员分为四类:订单管理员,系统管理员,商品管理员,会员管理员。 二、可行性分析 1.经济可行性 ⑴图书发行量不断增大2009年底,新闻出版署公布了《2009年全国新闻出版业基本情况》,其中指出,2009年全国共出版图书301719种,其中新版图书168296 种,重版、重印图书133423种,与上年相比图书品种增长10.07%,新版图书品种增长12.97%,重版、重印图书品种增长6.61%,总印张增长0.78%,定价总金额增长5.68%。图书发行量不断增加实际上是读者对图书的需求不断扩大的反映。 ⑵书店增多,售书网点普及普通书店的发展是大家有目共睹的,尤其在城市,除了新华书店,各种国有、私营、个体的书店比比皆是,综合书店、专业书店、精品书店、工具书店、电子书店应有尽有。书店规模也越办越大,如北京图书大厦、北京海淀图书城、上海图书城等等。此外,还有国外图书业巨头的介入,如贝塔斯曼。这些国外公司的加入,不仅带来了更多的图书,还引入了诸如会员制这样的图书营销新理念图书市场一片繁荣。在这种情况下,网上书店的加入无疑将使得竞争更加激烈,但从另一个方面看,只有在这种激烈的竞争下, 网上书店的优势才能得以体现。 2.技术可行性

实验1 网上书店数据库创建及其查询完整程序设计

实验报告课程名称:管理数据分析软件应用实验 学生姓名:廖菲琼 学号:200844070108 班级:信管08-01班 专业:信息管理与信息系统 指导教师:张勇老师 2011年1月

实验一网上书店的数据库创建及其查询 实验1-1 “响当当”网上书店的数据库创建 实验目的: ?理解数据库的概念; ?理解关系(二维表)的概念以及关系数据库中数据的组织方式; ?了解数据库创建方法。 实验环境: microsoft office access 2003 实验要求:创建“响当当”网上书店数据库,其中共有七个表,分别用于存放会员、订单、订单明细、书、付款方式、作者和出版社等信息,各个表的结构如图1-1、图1-2和图1-3所示,其中带下划线的字段是各表的主键。 图1-1 会员和订单表的结构 图1-2 订单明细和书表的结构

图1-3 付款方式、作者和出版社表的结构 实验步骤: 1.创建空数据库“xddbookstore”:执行“文件/新建”命令,在屏幕右边单击其中的“空数据 库”,在接着出现的“文件新建数据库”对话框中规定好文件名和存放该文件的适当的文件夹,然后单击“创建”按钮,于是一个名为“xddbookstore”的“数据库”窗口就会出现在屏幕上 数据库窗口 2.数据库中表结构的定义:执行“对象/表”命令,双击“使用设计器创建表”,打开“设计”视图。在“设计”视图中进行相应数据的设置,最后得到如下图的结果,设置完后单击工具栏上的保存按钮()或文件菜单的保存命令,对设置进行了保存。再用同样的方法设置其他表的定义。 设计视图书表的定义结果图

另存为对话框定义所有表后的数据库窗口 3.“响当当”数据库中表之间联系的建立:单击“工具”菜单的“关系”命令,出现“显示表”对话框,分别选择其中的每个表并按“添加”按钮,直到将所有表添加到“显示表”对话框后面的“关系”窗口中。以会员表和订单表为例,单击“会员”表中用于联系的“会员号”字段,然后按住鼠标左键拖动鼠标,将随后出现的一个小矩形块拖动到“订单”表的“收货人”字段上,松开鼠标,出现“编辑关系”对话框,选中其中的“实施参照完整性”复选框,单击“创建”按钮即可在这两个表之间建立联系,“会员”表和“订单”表之间的连线代表了它们间的联系。使用同样的方法,建立“xddbookstore”数据库的七个表间的所有联系。 显示表对话框添加到关系窗口的结果 编辑关系窗口xddbookstore数据库七个表间的联系 4.数据的输入:以款方式表的输入为例,右击“付款方式”,打开付款方式的输入窗口,的“数据表”视图中逐行输入付款方式表的各个记录,数据输入完毕,关闭该“数据表”视图,access 便会将所输入的数据自动加以保存。其他表的数据可以用相同方法进行输入,也可用导入数据的方法进行数据的导入。单击文件菜单的“获取外部数据/导入”命令,出现“导入”对话框。单击要导入的文件“xddbookstore.xls”,然后单击“导入”按钮,出现导入数据表向导对话框,按照步骤进行相应的操作。

网上书店项目概述

网上书店项目概述 网上购书系统3部分组成:用户管理、购书网站和订单处理中心。其中~用户管理负责 用户注册及用户登陆,购书网站是一个Web应用程序~用户可以通过Web浏览器登录到此网 站~在此网站~用户可以搜索要找的书~察看书的详细信息并购书,订单处理中心用来管理 购物网站转过来的订单。 用户管理主要包括一下功能: , 注册用户信息 1) 对于新用户~单击“注册”按钮~进入用户注册页面, 2) 填写相关注册信息~填写完毕后单击“确定”按钮, 3) 弹出“注册成功”对话框~即成功注册。 , 用户登录验证 1) 对于已注册用户~进入用户登录页面, 2) 填写您的用户名和密码, 3) 单击“登录”按钮, 4) 用户名和密码正确~登录成功~进入购书网站,否则返回。 , 浏览图书 网站的书籍列表要列出当前网站所有的图书名称。当用户单击某一图书名称时~要列出该书的详细信息,包括书名、作者、单价,。 , 查找图书 用户可以在网站的查找框中输入一个书名~单击“查找”按钮可以网站是否有此书~系统将查找结果,如果有此书~返回书的详细信息,如果没有~返回当前没

有此书的信息,返回给用户。 , 购物车管理 用户可以随时查看自己的购物车~可以添加或删除购物车中的商品。 , 购书 在浏览图书时~用户可以在查看选中图书的详细信息时添加次书到购物车~添加完毕可以选择继续购物或是结算。如果选择结算~要填一个购书登记表~该表包 括以下内容:购书人姓名、地质、E-mail、所购图书的列表、总价。 订单处理中心的功能: 订单处理中心是一个Web应用程序~在此将列出所有等待处理的订单~每一笔订单包含购书人姓名、地质、E-mail、所购图书的列表、总价。其中~所购图书列表包括各个书籍信息的明细内容~总价是系统自动计算的。 以上是该项目的需求分析~请由此画出该系统的用例图、类图、状态图、活动图、顺序 图、协作图、构件图以及部署图。 实习一 ,2学时, 一、实验名称: UML用例图建模,2学时, 二、实验目的与要求: , 了解和掌握Rose建模工具的使用 , 掌握怎样进行案例需求分析, , 掌握UML用例图建模技术 三、实验内容: 通过《网上书店系统》的需求分析,完成用例图的设计和绘制。掌握需求分析和绘制用

电子商务系统分析与设计课程设计实验报告

江苏科技大学电子商务系统分析与设计课程设计网上书城系统的开发 学生姓名张颖 学号0840412117 班级08404121 指导老师 成绩 经济管理学院信息管理系 2012年1月8日

目录 一.系统规划 (2) 1.1明确用户需求 (3) 1.2初步调查 (3) 1.3确定电子商务模式和模型 (4) 1.4可行性分析和可行性分析报告 (4) 二.系统分析 (5) 2.1系统调查 (5) 2.2需求规格说明书 (5) 2.2.1 引言 (5) 2.2.2项目概述 (6) 2.2.3需求规定 (6) 2.2.4环境要求 (10) 2.3组织结构分析 (10) 2.4业务流程分析 (11) 2.5数据流程分析 (13) 三.系统设计 (14) 3.1系统总体结构 (14) 3.2网络基本结构 (15) 3.3系统平台选择 (16) 3.4应用系统方案 (16) 3.4.1各功能模块简要描述 (16) 3.4.4数据库设计 (18) 3.4.5用户界面设计 (23) 3.5实施方案 (24) 3.5.1客户端要求 (24) 3.5.2服务器端要求 (24) 3.5.3系统测试 (24) 四.支付系统设计 (28) 4.1支付协议选择 (28) 4.2支付系统数据流程分析 (29) 4.3支付系统安全需求分析 (29) 4.4支付系统总体设计 (30) 4.5支付系统功能 (32) 4.6交易流程设计 (33) 4.7支付系统安全设计 (34) 五.心得体会 (34) 一.系统规划

1.1明确用户需求 随着当今社会新系统大度的提高,网络的高速发展,计算机已被广泛应用于各个领域,因而网络成为人们生活中不可或缺的一部分。互联网用户应经接受了电子商务,网购成为一种时尚潮流。 书籍交易网站就是Internet和电子商务发展的产物,近几年在我国发展迅猛,如同一些书店纷纷在各地开设分店以拉近书店与顾客间距离一样。随着科学技术得分速发展,Internet这个昔日只被少数科学家接触和使用的科研工具已经成了普通百姓都可以触及的大众型媒体传播手段。随着现金全民素质和科学技术水平的不断提高,知识更新的越来越快。人们随时都会有被淘汰的危机,为了不让社会淘汰,做到与时俱进就必须多读书不断的学习,21世纪是网络的时代、信息的时代,时间是非常宝贵的,人们由于种种原因没有时间到书店去,也不知道哪家书店有自己需要的书籍,同时那些传统书店的经营者又没什么好的方法让人们知道我这就有顾客需要的书籍,这种买卖双方之间信息交流上的阻碍成为“网上书城”网站发展的原动力。 网上书城网站的建立可以跟好的解决这方面的问题,向广大用户推出的是一种全新的网上信息服务,旨在书店与消费者之间架起了一座高速、便捷的网上信息桥梁。 1.2初步调查 截止至2010年6月底,中国网民的数量达到4.21亿人,互联网电子商务化的程度也越来越高,网络购物、网上支付和网上银行的使用率分别达到33.8%、30.5%和29.1%。而在众多的电子商务行为中,因网上购书具有较高的可信性和打折优惠,网上购书的比例逐年提高。当当网、卓越亚马逊两间网上书城更是在同类B2C网站中占据头两位。很多人看到了书这种网上销售的诸多好处:方便购买、金额小、风险小、用户容易决定;信息的完整性以及很少出现质量问题和退货现象等,无论是当当、卓越还是99读书人,网上书店的强大搜索功能帮助顾客查找图书和选择图书,与传统书店中令人无所适从的货架分类不同,网上书店通过强大的搜索引擎为用户挑书提供了最大的便利。早在2005年底,著名调查公司AC尼尔森的

javaweb网上书店系统课程设计

信息科学与工程学院课程设计任务书题目:网上书店后台管理系统_______________ 姓名: _____________ XXXXXXXXXXXXXXXXXXX ______________ 姓名: ____________ XXXXXXXXXXXXXXXXXXX ____________ 姓名: ____________ XXXXXXXXXXXXXXXXXXX ______________ 专业班级:__________ 计算机科学与技术________ 课程: ________________ J ava Web程序设计_____________ 指导教师:______________ 职称: ________________ 完成时间:2016年5月----2016年6月

2016年6月27日 课程设计任务书及成绩评定 课程设计的任务和具体要求 课程设计要求设计一个用 Java Web开发基于B/S架构的管理系统,页面至少6个以上,应能反应出学生综合利用Java Web知识和数据库知识完成一定的设计任务的能力, 反映出学生理论联系实践的动手能力。 具体要求如下: (1)明确所要开发系统的设计任务; (2)做好需求分析,合理选择设计方案; (3)页面静态部分可用 Dreamweaver开发实现 (4)动态页面部分可用 JSP、Servlet、JavaBean等实现; (5)后台数据库可采用 MySQL、Oracle、SQL Server等实现; (6)在编写程序过程中应注意相关文档的编写; (7)认真撰写课程设计总结报告。 指导教师签字: _____________ 日期: _________________________ 指导教师评语

网上书店系统实验报告

实验报告

一、实验题目 编程实现“网上书店系统” 二、题目分析 1、需求分析 要开发一个系统,首先要了解该系统到底想做什么,需要实现怎样的功能,这就是需求分析。网上书店从大的需求方面看,就是要实现通过互联网能够进行书籍的购买及相关的管理等功能,大致需要提供下面的一系列功能: *浏览书籍(模糊查询) *选择需要购买的书籍 *可以继续选择别的书籍,并且可以购买该书籍 *选择了需要购买的书籍后,进行购买书籍操作 *保存选中的图书和数量 UML图: 2、数据分析 图书信息 数据库 购物车本次会话有效

1、页面转移关系 再次查询 2、对象模型 (1)界面对象(View) *查询页Search.jsp *图书目录页Directory.jsp *购物车页Cart.jsp *定单页Order.jsp (2)控制器(Control) *CtrlServlet 负责响应输入命令 *包括:模糊查询key、查看购物车cart、结算order 、继续选书continue、再次查询search (3)业务模型 *图书信息:BookBean 实体类的会话Bean *购物车信息:CartBean 会话Bean

(1)图书信息(数据库表、查询结果)*书号ISBN char[24] 主键 *书名Title char[64] *作者Author char[32] *出版社Press char[32] *价格Price double (2)购物车信息 *书号ISBN char[24] *数量Number integer (3)共享数据 *查询结果和选中的图书信息 *作为session参数 4、动态模型

java,mysql实验报告--网上书店

综合实践设计报告 2006 级信息工程学院计算机科学与技术专业题目:网上书店系统

大连水产学院实验报告纸 学院(系):信息工程学院专业班级: 计本06-1 一、选题意义:网上选购图书 二、主要功能:注册和登录网站,可以选购书籍,管理员可对书籍和用 户进行管理,包括添加图书,修改用户信息等; 三、开发环境:myeclipse+tomcat+mysql; 四、设计内容及步骤: 登录界面图形及代码:网上书店 登录书籍浏览书籍查询用户登录用户注册用户退出购书 购物车管理订单管理 后台管理 用户管理书籍管理

书籍查询的功能实现: 网上书店

用户登录
用户名:
密码: