毕业设计---虚拟股票交易系统.doc_第1页
毕业设计---虚拟股票交易系统.doc_第2页
毕业设计---虚拟股票交易系统.doc_第3页
毕业设计---虚拟股票交易系统.doc_第4页
毕业设计---虚拟股票交易系统.doc_第5页
已阅读5页,还剩25页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

河南建筑职业技术学院河南建筑职业技术学院 毕 业 设 计 报 告 题 目:虚拟股票交易系统 专 业: 软 件 技 术 班 级: 软件 091 班 学生姓名: 王 毅 学 号: 2009115901067 指导教师: 黄 振 颖 完成日期:2012 年 3 月 8 日 河南建筑职业技术学院毕业设计 2 摘要摘要 所谓股票交易,就是指股票投资者之间按照市场价格对已发行上市的股所谓股票交易,就是指股票投资者之间按照市场价格对已发行上市的股 票所进行的买卖。近年来,国内股票市场发展十分迅速,催生出了诸如上海票所进行的买卖。近年来,国内股票市场发展十分迅速,催生出了诸如上海 证券交易所和深圳证券交易所等国内知名的股票交易中心,同时也吸引了越证券交易所和深圳证券交易所等国内知名的股票交易中心,同时也吸引了越 来越多的股票热爱者。当然,问题也接踵而来,由于国内股票市场刚刚起步,来越多的股票热爱者。当然,问题也接踵而来,由于国内股票市场刚刚起步, 缺少统一而且全面的交易平台,导致许多人对于股票缺少统一而且全面的交易平台,导致许多人对于股票 的认识还很匮乏。本的认识还很匮乏。本 着为大众服务的宗旨,基于着为大众服务的宗旨,基于javajava的虚拟股票交易系统就是为了解决上述问题的虚拟股票交易系统就是为了解决上述问题 而进行而进行 开发的。该系统严格按照软件工程中面向对象的开发方法和开发的。该系统严格按照软件工程中面向对象的开发方法和 开发流程,采用开发流程,采用 struts+hibernate+jspstruts+hibernate+jsp技术和技术和mysqlmysql数据库进行设计、开发数据库进行设计、开发 并实现。用户通过注册、登录到该系统后,可以浏览、学习自己感兴趣的股并实现。用户通过注册、登录到该系统后,可以浏览、学习自己感兴趣的股 票信息和股票知识,查看个人股票持仓,进行股票信息和股票知识,查看个人股票持仓,进行股 票交易,修改个人资料等票交易,修改个人资料等 等。该系统内容丰富、安全可靠、操作简单,能够充分满足绝大多数股票爱等。该系统内容丰富、安全可靠、操作简单,能够充分满足绝大多数股票爱 好者的需求。好者的需求。 关键词:关键词:java、mysql数据库、股票交易 abstractabstract the so-called stock trading, stock investors is that according to the market price of issuing and listing stocks are traded. in recent years, the domestic stock market development is very rapid, produce such as the shanghai stock exchange and shenzhen stock exchange, and 河南建筑职业技术学院毕业设计 3 other well-known domestic stock trading center, but also attracted more and more stock enthusiasts. of course, the problem will follow close on succession, as the domestic stock market has just started, the lack of a unified and comprehensive trading platform, leading to many people share the awareness is still very scarce. the spirit of serving the public purpose, based on the java virtual stock trading system is to solve the problem for the development of. the system in strict accordance with the software engineering of object-oriented development method and development process, using struts+hibernate+jsp technology and mysql database design, development and implementation. registered users, log in to the system, can browse, learn their interest in the stock information and the stock of knowledge, view personal stock holdings, a femoral ticket transactions, modify personal information and so on. the system is rich in content, safe and reliable, simple operation, can fully meet the needs of the vast majority of stock enthusiasts demand. keykey words:words:java、the mysql database、stock trade 河南建筑职业技术学院毕业设计 4 目录目录 第 1 章 系统概述.6 1.1 背景6 1.2 系统开发环境6 1.3 系统机构7 第 2 章 系统组成及系统模块介绍.8 2.1 系统功能图介绍8 2.2 系统功能描述8 2.3 系统数据库和类结构9 第 3 章 用户管理 112 3.1 用户注册12 3.2 用户登录14 3.3 用户设置16 3.4 用户修改密码17 河南建筑职业技术学院毕业设计 5 3.5 用户退出18 第 4 章 用户股票管理.19 4.1 股票交易19 4.2 买入股票21 4.3 卖出股票22 4.4 用户查看股票24 第 5 章 总结.25 参考文献.27 系统运行所需的基本环境.28 致谢.29 河南建筑职业技术学院毕业设计 6 第1章 系统概述 1.1背景 股票至今已有将近 400 年的历史,它是伴随着股份公司的出现而出现。它是一种有 价证劵,是股份公司在筹集资本时向出资人公开或私下发行的,用以证明出资人的股本 身份和权利,并根据持有人所持有的股份数享有权益和承担义务的凭证。 购买股票是现代人理财的一种风靡的方式。任何一种理财工具都有其风险与报酬, 报酬越高,风险也就越高,买股票与银行储蓄存款及购 买债券相比较,虽说它是最高风 险的,但只要掌握得好,它能给人们带 来非常高的收益。或许这就是很多人选择炒股的 原因吧! 然而目前的上市公司已有上千家, 每日产生的信息更是以海量来计, 没 有 先进的电脑软件来辅助, 就很难了解市场的运作情况并作出判断,可以说做股票不使用 分析软件无异于“盲人骑瞎马” ,想稳住收益又不被 套是很难的。故而,“工欲善其 事,必先利其器” ,做股票也是如此。二 十一世纪是知识化、信息化的网络时代。计 算机信息技术的使用对股票市场的发展空间带来了质的变革,极大地拓展了股票市场的 时空界限,提高了人们对股票软件产品的学习兴趣和利用效率。以网络手段来获得股票 数据资源的方式和利用网络作为基本的操作股票的形式,实现以资源共享为核心的全新 的股票模拟交易方式,必将成为众多股民涉足股市前的必修课,并将成为新世纪的主流。 我们学习 java 语言编程,是学习其方法和思想,来为我们今天的生活服务和创造。 在这样一种炒股环境下,我们学习用自己学到的方法来编写一个股票交易模拟系统,不 仅有助于我们熟练掌握和应用编程知识,而且能帮助我们了解股市交易,学习如何通过 河南建筑职业技术学院毕业设计 7 股市理财,跟上是时代的步调。 我们做这个股票交易系统主要是为散户量身定制,为股民提供最理性的指引和方便, 主要有以下功能: 1、为用户提供交易的平台。 2、让用户更清楚地看清自己所持有股票的各种属性,以及要交易股票的属性。 1.2 系统开发环境 开发工具:该项目是基于java的数据库应用技术,采用mysql作为后台数据库。为使系统 达到预期性能,必须根据业务规模对硬件配置进行论证。 客户端:浏览器 操作系统:windowxp 数据库访问:mysql数据库访问技术 myeclipse 企业级工作平台(myeclipse enterprise workbench,简称 myeclipse) 是对 eclipse ide 的扩展,利用它我们可以在数据库和 javaee 的开发、发布,以及应 用程序服务 器的整合方面极大地提高工作效率。它是功能丰富的 javaee 集成开发环境, 包括了完备的编码、调试、测试和发布功能, 完整支持 html、 struts、 jsp、 css、 javascript、 sql、 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)层。 结构模型如图所示: 河南建筑职业技术学院毕业设计 8 模型(model)层实现系统中的业务逻辑。在 mvc 的三个部件中,模型(model)层拥有 最 多的处理任务。封装的是数据源和所有基于对这些数据的操作。javabean 分为业务 类和数 据实体, 业务类处理业务数据、 数据实体承载数据, 基本上大多数的项目都 是使用这种 mvc 的实现模式。在一个组件中,model 往往表示组件的状态和操作状态的 方法,如处理请求执 行业务逻辑、访问数据库、封装数据等等。封装的数据和行为必须 是独立于任何的表现,提 高可重复性,可以独立的测试,不要包含任何的 servlet 和 jsp 的 api。 视图(view)层用于与用户的交互,封装的是对数据源 model 的一种显示。一个模型 可以 由多个视图, 而一个视图理论上也可以和不同的模型关联起来, 通常用 jsp 来 实现。 jsp(java server pages)是由 sun microsystems 公司倡导、许多公司参与一起 建立的一种动态网页技术 标准。 技术有点类似 asp 技术, jsp 它是在传统的网页 html 文件(*.htm,*.html)中插入 java 程序段(scriptlet)和 jsp 标记(tag),从而形 成 jsp 文件(*.jsp)。用 jsp 开发的 web 应用是跨平 台的,既能在 linux 下运行, 也能在其他操作系统上运行。 控制(controller)层封装的是外界作用于模型的操作。通常,这些操作会转发到模 型上, 并调用模型中相应的一个或者多个方法。一般 controller 在 model 和 view 之间起到了沟通 的作用,处理用户在 view 上的输入,并转发给 model。这样 model 和 view 两者之间可以 做到松散耦合,甚至可以彼此不知道对方,而由 controller 连 接起这两个部分。 第2章 系统组成及系统模块介绍 2.1 系统功能图介绍 该虚拟股票交易系统主要有我的首页、我的持仓、交易明细、账户信息、用户注册、 用户登录、安全退出七大功能模块。用户在注册该系统之后,只需输入自己的用户名和 密码,即可登录到该系统进行股票信息查询、股票买入、股票卖出、交易明细查询、个 人信息修改等操作。除此之外,该系统还提供了丰富详细的股票、财经链接,以方便用 户进行浏览和学习。 系统结构图如下: 河南建筑职业技术学院毕业设计 9 2.2 系统功能描述 vsts虚拟股票交易系统是让股民实时了解股市行情的虚拟系统,为股民提供了一个交 流的平台,以便能够个更好的对股票进行交易,为股民提供一个交流的平台,以便能够 更好的对股票进行交易,其主要功能如下: (一)用户管理:在该系统中的用户管理包括用户注册、用户登录、修改用户信息等 功能。 (二)用户股票管理:在该系统中的用户股票管理包括用户浏览股票实时信息,然后 对股票进行买卖等功能 注册用户操作: 1、用户注册 2、用户登录 3、用户设置 4、用户股票操作 5、用户退出 (三)注册用户是系统的主要使用者,主要实现用户登录,浏览信息,然后对股票进 行买卖,修改用户信息,用户退出等功能。 注册用户的操作示意图如下: 河南建筑职业技术学院毕业设计 10 2.3 系统数据库和类结构 用例模型是整个系统开发过程中的起点,并驱动建模的全过程。 用例模型包括系统 的用例图及用例描述。在设计系统用例模型之前,首先要识别活动者和用例。 帐户(帐户编号、客户编号、余额、交易历史) 用户(编号、全称、email 地址、) 用户详细信息(真实姓名、性别、出生日期、出生城市、居住城市、情感状态、交友目 的、血型) 持股(编号、所属帐户、股票代码、数量) 交易历史(编号、交易类型、所属帐户、股票代码、交易价格、成交量、成功否) 股票(股票代码、股票概述) 河南建筑职业技术学院毕业设计 11 数据表由类映射得出。 整个系统建立了一个数据库 vsts,五个数据表:股票表 stock、用户表 user、用 户详细信息表userinfo、股票持仓表 holding、交易记录表 trade。各数据表的具体情 况如下所示。 河南建筑职业技术学院毕业设计 12 河南建筑职业技术学院毕业设计 13 第3章 用户管理 3.1 用户注册 该步骤是针对未注册的用户,来完成注册的功能,未注册的用户不能对该系统进行操 作,只有在注册才能实现对自己信息以及对股票的各种操作。 需要在注册页面提交系统要求的简单的基本信息,包括用户名 (无重复) ,密码, 电子邮箱。为了防止个别用户恶意刷系统注册用户,用户还需要输入系统随机生成的验 证字符。页面上应当有友好的提示:用户输入内容的基本格式,例如用户名的限制,不 能超过某一长度,允许使用那些字符等等。如果用户输入的信息有误,需要在注册页面 上给出详细的错误信息,以醒目的颜色在错误字段旁边显示即可,尽量不使用弹出对话 框这种不友好的方式,除非如验证码这种只能在服务器端进行校验的字段。 河南建筑职业技术学院毕业设计 14 (一)用户注册时,用例既已启动。 (二)注册页面显示: 1、检查用户名是否重复,若重复重新输入,若不重复继续进行 2、用户名、密码(6-16位包含数字和字母,区分大小写) 3、确认密码、email,用户依次填写完毕后点击确认,并且进行简单的页面查错 功能。 (三)用例结束,注册成功,返回登录界面就能登录。 用户注册示意图: 用户注册的核心代码-如图所示: 河南建筑职业技术学院毕业设计 15 3.2 用户登录 该步骤完成的是用户的登录功能,本用例允许用户登录。用户登录后,则可以拥有 用户的浏览股票信息,股票买卖等。 注册用户需要在登录时提交自己的用户名和密码,服务器端进 行验证后如果有错 误发生,应当给出详细的提示,例如用户名为空、密码错误等等。在登录页面上,需要 提供用户进入注册流程 的快速通道,以方便非注册用户的使用。和注册功能相似,用户 完成登录后,系统需要自动跳转到用户登录前所停留的页面,有未完成的动作的话自动 完成。不同之处在于,登录结束时不需要出现自动跳转的页面,避免浪费用户时间。 河南建筑职业技术学院毕业设计 16 (一)用例开始,用户执行登录时,该用例开始。 (二)显示用户登录界面,页面上有用户名、密码 (三)登录用户分别填入用户名、密码,单击确定。 (四)用户登录成功后进入系统,即用例结束。 (五)用户名不存在(备选)用户密码。、用户名输入错误,系统给出密码错误提 示,用户重新输入。如果系统发现所输入的用户名不存在,则给出该用户名不存在,请 重新输入的提示。 用户登录示意图: 用户登录的核心代码-如图所示: 河南建筑职业技术学院毕业设计 17 3.3 用户设置 该步骤主要完成的是用户的设置,本用例完成对用户的信息进行设置。 (一)已经注册过的用户执行我的设置操作时,该用例开始。 (二)显示详细资料页面:详细资料包括性别、出生城市、居住城市、情感状态、交 友目的、血型。 河南建筑职业技术学院毕业设计 18 (三)设置完毕之后,选择确认,系统保存设置资料。该用例结束。 用户设置详细信息示意图: 用户修改详细资料的核心代码-如图所示: 3.4 用户修改密码 该步骤主要完成的是用户重新修改密码,本用例完成对用户的密码进行重新设置。 河南建筑职业技术学院毕业设计 19 (一)已经注册过的用户执行我的修改密码操作时,该用例开始。 (二)显示修改密码页面:原密码、新密码、确认新密码 (三)设置完毕之后,选择确认,系统保存设置。该用例结束。 用户修改密码的核心代码-如图所示: 3.5 用户退出 该步骤要是用户退出账户。 (一)当用户开始执行退出功能时,该用例开始。 (二)用户退出成功后退出论坛该用例结束。 用户退出示意图: 河南建筑职业技术学院毕业设计 20 用户注销的核心代码-如图所示: 第4章 用户股票管理 4.1 股票交易 股票买卖是整个系统的核心模块,涉及到交易历史展现、股票查询、股价实时更新、 购买量校验等。其中,交易历史的展现是通过登陆 id 从交易历史表中获得。这是一个 简单的查询。 通过向封装了查询操作的实体 bean 中传入用户 id, 即可获得相应的交 易记录。整个过程依然是通过 servlet 控制数据流转,使用实体 bean 完成业务逻辑, 将结果展现 到 jsp 页面中。购买量的校验是通过页面中 js 实现的。在用户选择某只 股票,输入购买量,点击确认购 买时,股价和购买量会传入业务逻辑层,进行购买力的 校验。实体 bean 取出该用户的帐 户余额 balance,与购买额进行比较。若购买额超出 帐户余额,则提示购买力不足。否则,购入股票成功。抛出股票时涉及到的校验包括: 客户是否持有该支股票、持有量是否满足欲要抛出量。这些校验都是通过页面的 javascript 实现的。 河南建筑职业技术学院毕业设计 21 (一)用户登录,即用例开始 (二)用户根据情况,买入或者卖出股票 (三)用例结束 该步骤是用户根据股票行情对股票进行买卖,示意图如下: 河南建筑职业技术学院毕业设计 22 4.2 买入股票 (一)用户点击买入股票,即用例开始。 (二)用户可以在网页上罗列的热门股票里面选择需要购买的股票。 (三)选择股票跳转到该股票的详细信息页面,用户选择购买数量。 (四)用户点击买入股票,即该用例结束。 买入股票示意图如下: 用户购买股票的核心代码-如图所示: 河南建筑职业技术学院毕业设计 23 4.3卖出股票 (一)用户点击卖出股票,该用例开始 河南建筑职业技术学院毕业设计 24 (二)用户在自己个人的股票列表里面选择需要卖出的股票 (三)选择股票跳转到该股票的详细信息页面,用户选择卖出数量。 (四)用户点击卖出股票,即该用例结束。 卖出股票示意图如下: 用户卖出股票的核心代码-如图所示: 河南建筑职业技术学院毕业设计 25 4.4 用户查看股票 用户可对交易的历史记录进行查看,以总结前期的经验与教训,并可以汇总某段时 间的总盈利或亏损额。在不断总结的过程中,增长自己的经验。历史信息中展现了用户 的交易记录,包括股票代码、状态(买入和卖出) 、买入价、卖出价、数量等信息。 根据登陆名称,扩展出用户详细资料来。数据从基本资料表和帐户表中获取,包括 用户基本信息、当前帐户状态、交易历史记录等。当用户登陆后,servlet 从 session 中获 取到登录名,通过 setattribute 方法将其传送给业务逻辑层。业务层获取到数据 后,即 可调用封装了基本操作的实体 bean,进行查询,获取到相关信息。这些信息再 通过控制 层的 servlet 传向展现层的 jsp 页面,展现给用户。帐户信息如下图所示: 河南建筑职业技术学院毕业设计 26 (一)用户登录,该用例开始。 (二)用户在个人详细列表查看股票 (三)用户退出登录,该用例结束 查看股票示意图如下: 第5章 总结 基于 j2ee 平台的股票交易模拟系统,目前实现部门在使用上仍有一定的局限性。但 系统的运行平台和环境均可满足企业级的应用,在扩展性上不存在后天局限性。本次课 题的实现主要是对 java 领域的几种热门技术(struts、servlet、ejb 等)做了整体运 用, 并研究和实现了股价的实时更新。这过程对于个人来说,是提高独立设计和研究能 力的好 机会。 论文主要完成了以下三方面的工作: (1) 基于轻量级框架spring 实现了互动问答平台,具备了基本问答、处理问题、 搜索 答案、评论等基本功能。 (2) 着重阐述了系统的多层次架构的设计思想和实现过程,包括将传统的 mvc 模式 下的三级层次结构细化为视图层、控制层、业务逻辑层和数据持久化层。 (3) 实现了模拟交易中的实时股价,同时可以方便的跟踪自己的交易历史,从而提 高了系统的学习价值。 开发完成的系统具有以下特点: (1) 在系统架构方面,结合自身特点采用 struts 以及 j2ee 的三层架构模型,在 降低了系统各层之间的耦合的同时,也提高了系统的可扩展性,可移植性和灵活性。 (2)系统界面简洁,操作友好,便于用户使用,具有一定的实用性。同时,在注册、 评价 等页面使用局部刷新技术,带给用户良好的体验感受。 由于时间有限,系统目前 尚未实现后台管理的功能,无法真正模拟股票交易中的各个环节,比如:选择证券商、 河南建筑职业技术学院毕业设计 27 委托、交割等。无法提供实时大盘信息或者股票列表,用户只能通过搜索已知代码的股 票,得到其价格等信息。系统的缺陷与不足都将是我下一步努力的方向和学习的动力。 河南建筑职业技术学院毕业设计 28 参考文献参考文献 1 耿祥义,张跃平. java 2 实用教程m.1 2 刘湛. j2ee 全面简介eb/ol./article/20040304155658945.html 3 龙马工作室. 感受精彩dreamweaver mx2004 中文版完全实例m. 北京:人民邮电出版社, 2005. 4 龙马工作室. jsp+oracle 组建动态网站实例精讲m. 北京:人民邮电出版社,2004. 5 吴其庆. jsp 网站设计经典教程m. 北京:冶金工业出版社,2001. 6 屈辉立,陈可明,石武信. jsp 网站编程教程m. 北京:北京希望电子出版社,2002. 7 周绪,管丽娜,白海波. sql server2000 中文版入门与提高m. 北京:清华大学出版社,2001. 8 罗会波. struts 原理与实践系列文章eb/ol. /pub/article/c1060_a138284_p1.html 9 ted husted,cedric dumoulin,george franciscus,david winterfeldt. struts in action. greenwich:manning publications company,2003. 10 孙卫琴. 精通 struts:基于 mvc 的 java web

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论