毕业设计_虚拟股票交易系统

更新时间:2023-05-14 19:58:01 阅读量: 实用文档 文档下载

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

第1页

嵩山少林武术职业学院毕业设计报告

题目:VSTS虚拟股票交易系统

指导教师:

系别:

专业:

班级:

姓名:

学号:

2011年11月30日

第2页

摘要

所谓股票交易,就是指股票投资者之间按照市场价格对已发行上市的股票所进行的买卖。近年来,国内股票市场发展十分迅速,催生出了诸如上海证券交易所和深圳证券交易所等国内知名的股票交易中心,同时也吸引了越来越多的股票热爱者。当然,问题也接踵而来,由于国内股票市场刚刚起步,缺少统一而且全面的交易平台,导致许多人对于股票的认识还很匮乏。本着为大众服务的宗旨,基于JAVA的虚拟股票交易系统就是为了解决上述问题而进行开发的。该系统严格按照软件工程中面向对象的开发方法和开发流程,采用Struts+Hibernate+JSP技术和MySQL数据库进行设计、开发并实现。用户通过注册、登录到该系统后,可以浏览、学习自己感兴趣的股票信息和股票知识,查看个人股票持仓,进行股票交易,修改个人资料等等。该系统内容丰富、安全可靠、操作简单,能够充分满足绝大多数股票爱好者的需求。

目录

第3页

第一章系统概述 (4)

1.1背景 (4)

1.2系统开发环境 (5)

1.3系统机构 (5)

第二章系统组成及系统模块介绍 (8)

2.1系统功能图介绍 (8)

2.2系统功能描述 (9)

2.3系统数据库和类结构 (10)

第三章用户管理 (13)

3.1用户注册 (13)

3.2用户登录 (15)

3.3用户设置 (17)

3.4用户修改密码 (19)

3.5用户退出 (20)

第四章用户股票管理 (21)

4.1股票交易 (21)

4.2买入股票 (23)

4.3卖出股票 (25)

4.4用户查看股票 (27)

第五章总结 (28)

第4页

第一章系统概述

1.2背景

股票至今已有将近400年的历史,它是伴随着股份公司的出现而出现。它是一种有价证劵,是股份公司在筹集资本时向出资人公开或私下发行的,用以证明出资人的股本身份和权利,并根据持有人所持有的股份数享有权益和承担义务的凭证。

购买股票是现代人理财的一种风靡的方式。任何一种理财工具都有其风险与报酬,报酬越高,风险也就越高,买股票与银行储蓄存款及购买债券相比较,虽说它是最高风险的,但只要掌握得好,它能给人们带来非常高的收益。或许这就是很多人选择炒股的原因吧!然而目前的上市公司已有上千家,每日产生的信息更是以海量来计,没有先进的电脑软件来辅助,就很难了解市场的运作情况并作出判断,可以说做股票不使用分析软件无异于“盲人骑瞎马”,想稳住收益又不被套是很难的。故而,“工欲善其事,必先利其器”,做股票也是如此。二十一世纪是知识化、信息化的网络时代。计算机信息技术的使用对股票市场的发展空间带来了质的变革,极大地拓展了股票市场的时空界限,提高了人们对股票软件产品的学习兴趣和利用效率。以网络手段来获得股票数据资源的方式和利用网络作为基本的操作股票的形式,实现以资源共享为核心的全新的股票模拟交易方式,必将成为众多股民涉足股市前的必修课,并将成为新世纪的主流。

我们学习java语言编程,是学习其方法和思想,来为我们今天的生活服务和创造。在这样一种炒股环境下,我们学习用自己学到的

第5页

方法来编写一个股票交易模拟系统,不仅有助于我们熟练掌握和应用编程知识,而且能帮助我们了解股市交易,学习如何通过股市理财,跟上是时代的步调。

我们做这个股票交易系统主要是为散户量身定制,为股民提供最理性的指引和方便,主要有以下功能:

1、为用户提供交易的平台。

2、让用户更清楚地看清自己所持有股票的各种属性,以及要交易股票的属性。

1.2系统开发环境

开发工具:该项目是基于JAVA的数据库应用技术,采用MYSQL作为后台数据库。为使系统达到预期性能,必须根据业务规模对硬件配置进行论证。

客户端:浏览器

操作系统:WindowXP

数据库访问:MYSQL数据库访问技术

MyEclipse企业级工作平台(MyEclipse Enterprise Workbench,简称MyEclipse)是对Eclipse IDE的扩展,利用它我们可以在数据库和JavaEE的开发、发布,以及应用程序服务器的整合方面极大地提高工作效率。它是功能丰富的JavaEE 集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML、Struts、JSP、CSS、Javascript、SQL、

第6页

Hibernate。

Tomcat是Apache软件基金会(Apache Software Foundation)的Jakarta项目中的一个核心项目,由Apache、Sun和其他一些公司及个人共同开发而成。Tomcat是一个轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP程序的首选。实际上Tomcat部分是Apache 服务器的扩展,但它是独立运行的,所以当你运行tomcat时,它实际上作为一个与Apache独立的进程单独运行的。

MySQL是一个小型关系型数据库管理系统,开发者为瑞典MySQL AB公司。在2008年1月16号被Sun公司收购,而2009年,SUN又被Oracle收购。目前MySQL被广泛地应用在Internet上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。

1.3系统机构

系统结构是系统的最高层概念。在开发虚拟股票交易系统的实例之前,应该先选择或定义好一个合适的系统结构。该系统主要采用MVC三层模式,分别是模型(Model)层、视图(View)层和控制(Controller)层。

结构模型如图所示:

第7页

模型(Model)层实现系统中的业务逻辑。在MVC的三个部件中,模型(Model)层拥有最多的处理任务。封装的是数据源和所有基于对这些数据的操作。JavaBean分为业务类和数据实体,业务类处理业务数据、数据实体承载数据,基本上大多数的项目都是使用这种MVC的实现模式。在一个组件中,Model往往表示组件的状态和操作状态的方法,如处理请求执行业务逻辑、访问数据库、封装数据等等。封装的数据和行为必须是独立于任何的表现,提高可重复性,可以独立的测试,不要包含任何的Servlet和JSP的API。

视图(View)层用于与用户的交互,封装的是对数据源Model的一种显示。一个模型可以由多个视图,而一个视图理论上也可以和不同的模型关联起来,通常用JSP来实现。JSP(Java Server Pages)是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。

第8页

技术有点类似ASP技术,JSP它是在传统的网页HTML文件(*.htm,*.html)中插入Java程序段(Scriptlet)和JSP 标记(tag),从而形成JSP文件(*.jsp)。用JSP开发的Web应用是跨平台的,既能在Linux下运行,也能在其他操作系统上运行。

控制(Controller)层封装的是外界作用于模型的操作。通常,这些操作会转发到模型上,并调用模型中相应的一个或者多个方法。一般Controller在Model和View之间起到了沟通的作用,处理用户在View上的输入,并转发给Model。这样Model和View两者之间可以做到松散耦合,甚至可以彼此不知道对方,而由Controller连接起这两个部分。

第二章系统组成及系统模块介绍

2.1系统功能图介绍

该虚拟股票交易系统主要有我的首页、我的持仓、交易明细、账户信息、用户注册、用户登录、安全退出七大功能模块。用户在注册该系统之后,只需输入自己的用户名和密码,即可登录到该系统进行股票信息查询、股票买入、股票卖出、交易明细查询、个人信息修改等操作。除此之外,该系统还提供了丰富详细的股票、财经链接,以方便用户进行浏览和学习。

系统结构图如下:

第9页

2.2系统功能描述

VSTS虚拟股票交易系统是让股民实时了解股市行情的虚拟系统,为股民提供了一个交流的平台,以便能够个更好的对股票进行交易,为股民提供一个交流的平台,以便能够更好的对股票进行交易,其主要功能如下:

(一)用户管理:在该系统中的用户管理包括用户注册、用户登录、修改用户信息等功能。

(二)用户股票管理:在该系统中的用户股票管理包括用户浏览股票实时信息,然后对股票进行买卖等功能

注册用户操作:

1、用户注册

2、用户登录

第10页

3、用户设置

4、用户股票操作

5、用户退出

(三)注册用户是系统的主要使用者,主要实现用户登录,浏览信息,然后对股票进行买卖,修改用户信息,用户退出等功能。

注册用户的操作示意图如下:

2.3系统数据库和类结构

用例模型是整个系统开发过程中的起点,并驱动建模的全过程。用例模型包括系统的用例图及用例描述。在设计系统用例模型之前,首先要识别活动者和用例。

帐户(帐户编号、客户编号、余额、交易历史)

用户(编号、全称、Email地址、)

用户详细信息(真实姓名、性别、出生日期、出生城市、居住城市、情感状态、交友目的、血型)

持股(编号、所属帐户、股票代码、数量)

交易历史(编号、交易类型、所属帐户、股票代码、交易价

第11页

格、成交量、成功否)

股票(股票代码、股票概述)

数据表由类映射得出。

整个系统建立了一个数据库vsts,五个数据表:股票表Stock、用户表User、用户详细信息表Userinfo、股票持仓表Holding、交易记录表Trade。各数据表的具体情况如下所示。

第12页

第13页

第三章用户管理

3.1用户注册

该步骤是针对未注册的用户,来完成注册的功能,未注册的用户不能对该系统进行操作,只有在注册才能实现对自己信息以及对股票的各种操作。

需要在注册页面提交系统要求的简单的基本信息,包括用户名

第14页

(无重复),密码,电子邮箱。为了防止个别用户恶意刷系统注册用户,用户还需要输入系统随机生成的验证字符。页面上应当有友好的提示:用户输入内容的基本格式,例如用户名的限制,不能超过某一长度,允许使用那些字符等等。如果用户输入的信息有误,需要在注册页面上给出详细的错误信息,以醒目的颜色在错误字段旁边显示即可,尽量不使用弹出对话框这种不友好的方式,除非如验证码这种只能在服务器端进行校验的字段。

(一)用户注册时,用例既已启动。

(二)注册页面显示:

1、检查用户名是否重复,若重复重新输入,若不重复继续进行

2、用户名、密码(6-16位包含数字和字母,区分大小写)

第15页

3、确认密码、Email,用户依次填写完毕后点击确认,并且进行简单的页面查错功能。

(三)用例结束,注册成功,返回登录界面就能登录。

用户注册示意图:

用户注册的核心代码-如图所示:

3.2用户登录

第16页

该步骤完成的是用户的登录功能,本用例允许用户登录。用户登录后,则可以拥有用户的浏览股票信息,股票买卖等。

注册用户需要在登录时提交自己的用户名和密码,服务器端进行验证后如果有错误发生,应当给出详细的提示,例如用户名为空、密码错误等等。在登录页面上,需要提供用户进入注册流程的快速通道,以方便非注册用户的使用。和注册功能相似,用户完成登录后,系统需要自动跳转到用户登录前所停留的页面,有未完成的动作的话自动完成。不同之处在于,登录结束时不需要出现自动跳转的页面,避免浪费用户时间。

(一)用例开始,用户执行登录时,该用例开始。

(二)显示用户登录界面,页面上有用户名、密码

(三)登录用户分别填入用户名、密码,单击确定。

(四)用户登录成功后进入系统,即用例结束。

(五)用户名不存在(备选)用户密码。、用户名输入错误,系

第17页

统给出密码错误提示,用户重新输入。如果系统发现所输入的用户名不存在,则给出该用户名不存在,请重新输入的提示。

用户登录示意图:

用户登录的核心代码-如图所示:

3.3用户设置

该步骤主要完成的是用户的设置,本用例完成对用户的信息进行设置。

第18页

(一)已经注册过的用户执行我的设置操作时,该用例开始。

(二)显示详细资料页面:详细资料包括性别、出生城市、居住城市、情感状态、交友目的、血型。

(三)设置完毕之后,选择确认,系统保存设置资料。该用例结束。

用户设置详细信息示意图:

第19页

用户修改详细资料的核心代码-如图所示:

3.4用户修改密码

该步骤主要完成的是用户重新修改密码,本用例完成对用户的密码进行重新设置。

第20页

(一)已经注册过的用户执行我的修改密码操作时,该用例开始。(二)显示修改密码页面:原密码、新密码、确认新密码

(三)设置完毕之后,选择确认,系统保存设置。该用例结束。用户修改密码的核心代码-如图所示:

3.5用户退出

该步骤要是用户退出账户。

(一)当用户开始执行退出功能时,该用例开始。

第21页

(二)用户退出成功后退出论坛该用例结束。

用户退出示意图:

用户注销的核心代码-如图所示:

第四章用户股票管理

4.1股票交易

股票买卖是整个系统的核心模块,涉及到交易历史展现、股票查询、股价实时更新、购买量校验等。其中,交易历史的展现是通过登陆ID从交易历史表中获得。这是一个简单的查询。通过向封装了查询操作的实体bean中传入用户id,即可获得相应的交易记录。整个过程依然是通过Servlet控制数据流转,使用实体bean完成业务逻辑,将结果展现到Jsp页面中。购买量的校验是通过页面中

js实现的。在用户选择某只股票,输入购买量,点击确认

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

Top