校园小商品交易系统20131314046

更新时间:2023-11-17 02:52:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

《数据库系统》 课程设计

题 目: 校园小商品交易系统 _ 学生姓名: 何茂林 专 业: 计算机科学与技术 班 级: 计科(1)班 学 号: 20131314046

二〇一五年六月

一、 需求分析

随着计算机及网络技术的迅速的发展,网络电子商务变得越来越普及,各种

电子商务网站在极短的时间内吸引了海量的网络用户,比如国内比较知名的电商:淘宝、京东等都是信息化时代下的产物,并且他们从中获得了巨大的利润这也吸引了越来越多的人投入到电子网络商务的行业中来。

从整体上看,主导电商发展趋势的人群主要是青年群体,而在他们中间,在校大学生是不可忽视的重要组成部分,他们是随着现代互联网一起成长起来的群体。然而,现在的市场上的电商网站几乎都是面向社会的所有群体,并没有一款真正的网络产品是面向在校的学生,校园内部的小商品交易如果要通过大的电商网站进行,无疑是浪费了财力物力。所以,面向在校学生开发一款小商品交易系统是十分具有潜力的。本次课题的研究方向就是面向校园的小商品交易系统。

二、 总体功能概述

校园小商品交易系统的开发基于SqlServer数据库,采用的编程语言为Java。

该系统基本功能实现有:用户的注册、登录、修改个人信息;顾客用户订单的添加、删除;商家用户对销售商品的添加、删除、管理员的登录、对用户及商品信息的查找、添加、删除、修改等操作,并可以修改管理员自身的密码;访客用户可以浏览商品信息并可以获知商家的联系方式,但是不能够使用其他功能。

系统基本上实现了商品交易的所有环节,所有的操作围绕数据库进行。该系统简洁有效,功能实用,覆盖面广,可以为在校学生所产生的商品交易行为做交易管理、统计及分析。

三、 数据库结构设计

校园小商品交易系统的数据库设计要求包括系统管理员、用户、商品等实体

组成部分,在用户实体方面,又分为注册顾客、注册商家和未注册用户(访客)。由于访客用户仅仅是要求系统提供商品信息以及商家信息的浏览功能,限于访客的操作该系统的权限不足原因,其操作不会对数据库的整体结构和内容有影响,故在设计数据库的时候忽略访客这一实体。

设计管理员-用户-商品的E-R模型如图1所示:

图1

设计商家-顾客-商品的E-R模型如图2所示:

图2

以上两幅E-R模型图较为完整地阐述了校园小商品交易系统的数据库的设计结构,通过对两幅E-R图进行分析,初步设计数据库需要向其中添加五张二维表,用来描述实体与其属性的信息和实体实体之间的联系。

设定所创建的数据库的名称为Info,分别添加二维表mgr_info、user_info、good_info、order_info、sell_info。其中,mgr_info仅仅用来存储管理员的登录名和密码;user_info用来存储注册用户的个人信息;good_info用来存储商家所出售的商品的信息;order_info用来存储顾客的订单信息;sell_info用来存储商家出售商品的信息。 表名 mgr_info user_info good_info sell_info order_info 字段 mgrname id num id id 字段 password username goodname num num 字段 字段 字段 字段 phone type place 字段 adress password sex price producer count count 表1 各个实体及其属性关系

表中sell_info是在user_info和good_info的联系下产生的附表,而order_info是在user_info和good_info的联系下产生的附表。

上表较为完整地描述了实体及属性的信息,所以根据该表构造数据库Info可以认为是有效的。

四、 程序结构概述

校园小商品交易系统程序的编写采用Java语言,Java语言是面向对象的编程

语言,它所具有的优点是书写简单方便,集成各种工具包,使用起来十分便捷。在图形操作界面的编程实现中,Java提供了swing这种工具,swing是强大的Java界面编程方法,简单有效,,在实际的Java开发中经常用到。Swing提供JFrame、JPanel、JButton和JLabel等常用图形界面编程的控件,可以直接使用,也可以对 这些控件进行自定义,所以可以很灵活地和使用。在数据库连接编程实现过程中,Java也提供了强大的JDBC(Java DataBase Connectivity)连接方式,JDBC是sun公司开发的Java数据库访问接口规范,现已成为SQL 2003标准的一部分。图3表示了JDBC的体系结构

图3

JDBC也提供了一系列数据库连接、执行、查询等操作的类和接口,表2中所列出的是本系统中所使用的一些类。 名称 DriverManager Connection Statement PrepareStatement ResultSet 包 java.sql java.sql java.sql java.sql java.sql 说明 处理加载驱动程序,并为创建数据库连接提供支持 数据库连接管理 用于对数据库执行sql语句 用于执行预编译的sql语句 用于保存查询所得的结果集 表2

本程序中总共包含8个java文件:Access.java、Main.java、Getconn.java、Login.java、Noloign.java、Reg.java、User.java、Manager.java。Aeecss.java为主函数实现类,是系统的进入通道;Main.java是框架类,继承自JFrame,所有的内容都放在这个框架中显示;Getconn.java是通用类,它是用来连接数据库的重要类;Login.java是用户或者管理员登录的类;Nologin.java是访客进入所调用的类;Reg.java是用户注册的类;User.java和Manager.java分别是用户登录和管理员登录后所调用的类。

系统的每一个显示界面(MainFrame除外)都是通过JPanel完成的,JPanel用作容器放下所需要的用户控件和连接数据库后的查询结果,并按照既定的显示方式显示出来,每一个JPanel最后都要放到MainFrame中,通过调用MAinFrame调用setvisiable()方法设置为真值显示出来。例如:Login中包含四个JLabel,两

个JTextField和两个JButton,通过坐标将他们固定在JPanel的某个位置上。Mainframe添加Login的一个实例化对象,显示出来。

系统程序结构中最重要的是Getconn类,该类用于连接sqlserver数据库,使用了JDBC所提供的接口。Getconn是一个提供服务的类,它是所有其他类的基础。通过实例化一个Getconn类的一个对象,通过返回一个Connection对象获得已经连接好的数据库并对其进行一系列操作,在实例化Getconn对象时,若连接数据库存在问题导致连接不成功,则实例化终止抛出异常并捕获异常,此时不能成功连接sqlserver数据库。在程序的编写中,Getconn中所实现的方法原本是直接写在各个类里面,但是这样的写法造成代码的可重复利用率低,代码冗余度高,将这个方法封装成一个类可以避免出现这种情况,代码结构也更加灵活。

五、 功能模块详述

? 登录功能

该功能提供管理员或注册用户的登录接口,管理员或注册用户在登陆界面输

入用户名和密码后,系统连接到数据库进行查找匹配,若匹配到的信息与管理员或者注册用户所输入的信息一致,则返回true,并显示相应的界面,否则返回false,提示用户名或者密码错误,此时需要重新输入并再次验证。 登录界面如图4所示

图4

使用者在输入用户名和密码后,如果要以管理员的身份进入系统,则点击管理员登录按钮,如果要以普通注册用户(包括商家和顾客)的身份进入系统,则点击普通用户登录按钮,两者不能混淆,否则会提示密码错误,需要重新输入。

图5是登录成功显示状态,图6是登录失败显示状态

图5

图6

? 注册功能

用户注册功能提供用户注册接口,注册对象是没有该系统账户的访客,注册内容是商家或者顾客,管理员不允许注册。用户注册页面由用户登录页面引出,在用户登录页面的下方有”用户注册”字样,点击后就可以进入到注册页面进行注册。图7为该功能示范图

图7

? 管理员管理功能

管理员具有如下管理功能:自身密码修改,查看用户和商品详情,对用户和商品信息进行修改,增加和删除用户或商品。

校园小商品交易系统中,管理员所具有的权限是最高的,图8,9,10,11分别是管理员修改自身密码功能、添加新用户功能、删除用户功能、修改用户信息功能:

图8

图9

图10

图11

? 商家管理功能

商家是校园小商品交易的易出方,是发布商品的主要使用者,商家用户登录系统后,可以对自己自身的信息进行修改,包括个人密码、用户名、联系方式和地址。除此之外,商家还可以及时通过系统发布自己出售的商品信息,也可以删除自己正在出售的商品,比如商品保质期已过或者货源不足的情况下,需要使用此项功能。

图12、13分别是修改个人信息的功能显示

图12

图13

? 顾客管理功能

顾客是校园小商品交易的易入方,是订购商品的主要使用者,顾客用户登录系统后,可以对自己自身的信息进行修改,包括个人密码、用户名、联系方式和地址。除此之外,顾客还可以通过系统添加自己的订单,也可以删除自己已经订购的商品。在主界面,顾客可以查看自己已经订购的商品详细信息,也可以切换选项浏览商家正在出售的商品,并可以从中添加商品到自己的订单中。

图14、15分别是顾客修改自身信息和添加商品到订单的内容

图14

图15

? 访客浏览功能

访客浏览功能是最简单的功能,因为校园小商品交易系统没有赋予访客任何权限,访客对系统数据库没有操作功能。对于访客来说,只有浏览商品信息及获取商家信息的功能。

访客进入接口是在用户登录界面的下方,有一个“访客模式”,点击后就会进入访客界面。图16表示访客界面显示:

图16

六、 源代码及说明

由于源代码较多,此处只写出Getconn类的代码,Getconn是系统编程中最

主要的类,它是用来连接数据库并返回连接状态。 Getconn代码如下: package com.shop;

import java.sql.Connection; import java.sql.DriverManager; public class Getconn { Connection conn=null; Getconn(){ Connection conn = null; String driver = \ String url = \ String user_name = \ String pass_word = \ try { Class.forName(driver); conn = DriverManager.getConnection(url, user_name, pass_word); } catch (Exception e) { e.printStackTrace(); } this.conn=conn; } Connection getconn(){ return this.conn; } }

七、 课程设计总结

通过这次课程设计的完成,使我对自己所学知识进一步的了解,同时通过实

践发现自己的不足,对知识的掌握及运用存在诸多的不完善。本系统也存在着很多不足,如系统比较简单,实现功能也不够完善,安全性问题也没有很好的解决。所以在今后的学习中我会继续努力,完善自我。由于个人水平有限,本系统还有很多不完善之处,也难免存在错漏,恳请老师谅解。

通过本次课程设计,我觉得不管做什么,始终都要相信自己。不要畏惧,不要怕遇到困难,什么都要去尝试,有些你开始认为很难的事在你尝试之后你可能会发现原来它并没有你想象的那么难。如果没有自信,没有目标,没有信心就很难把事情做好,当其他人都在迷茫的时候,自己一定要坚信目标。从学习这个专业,到以后从事这方面的工作都需要不断地去学习去实践,这次实践可以给我们敲一个警钟,当我们面临毕业,面临择业,需要这些实践经验,在困难面前要勇于尝试,这是这次课程设计给我的最大感想!

参考文献

[1] 顾韵华、李含光 数据库基础教程 第2版.北京:电子工业出版社,2014 [2] 皮常德 Java简明教程 第3版.北京:清华大学出版社,2011

本文来源:https://www.bwwdw.com/article/2ifv.html

Top