毕业设计(论文)基于SpringMVC的云笔记系统.doc
《毕业设计(论文)基于SpringMVC的云笔记系统.doc》由会员分享,可在线阅读,更多相关《毕业设计(论文)基于SpringMVC的云笔记系统.doc(26页珍藏版)》请在三一办公上搜索。
1、河南科技学院 2015 届本科毕业论文(设计) 论文(设计)题目:基于SpringMVC的云笔记系统 学生姓名: 所在院系: 信息工程学院 所学专业: 计算机科学与技术 导师姓名: 完成时间: 2015-05-10 摘要本课题所实现的云笔记系统改变了传统的记录笔记的模式,采用云笔记系统,这种新式的方式使得用户在学习中更加方便快捷的记录,分享,收藏笔记。本系统采用b/s开发模式,分为服务器端和浏览器端。在服务器端主采用MySQL数据库使用MyBatis技术访问数据库。使用Spring框架管理组件,整合MyBatis,处理一些通用通用的业务。使用MVC分层思想,将代码分为控制层,业务层,持久层和视
2、图层,实现了登陆模块,笔记本模块,和笔记模块。登陆模块的主要包括登陆,注册,修改密码和退出登陆功能。笔记本模块主要包含新增,修改,删除功能。笔记模块包含查询,新增,修改,删除功能。在浏览器端主要采用Ajax处理客户端逻辑以及发送异步请求并实现了系统界面的一些动态效果。关键词 :Ajax,MySQL,MyBatis,SpringMVC,Spring,Java。ABSTRACT关键词 JQuery,MySQL,MyBatis,SpringMVC,Spring,JavaThe article notes cloud system changed the pattern of traditional
3、note taking, the cloud notes system, this new way allows users to more easily and quickly in the study record, share, used notes.The system uses the b/s developmentmodel,divided into serverand browser.At theend of the mainserverusing MySQL databaseaccess tothe database using MyBatis technology.The i
4、ntegration of MyBatisusing the Spring framework,management component,somegeneralbusiness.Using the MVC hierarchical thinking, the code is divided into control layer, business layer, persistence layer and view layer, to achieve the login module, module of notebook, and notes module.The landing module
5、includeslogin,registration,modify the passwordandexit thelogin function.The notebookmodule mainly consists ofadd,modify,delete function.Notemodulecontains the query,add,modify,delete function.At the end of the browser uses Ajax client-side logic and sends an asynchronous request and the system inter
6、face of some of the dynamic effect.Keywords:SpringAjax,MySQL,MyBatis,SpringMVC,Spring,Java.目录1. 绪论.51.1项目背景及意义51.2项目现状及趋势概述52. 系统理论和技术路线.52.1 Java语言概述52.2 b/s和c/s体系52.3 JavaScript与Ajax.62.4系统主要路线.72.5 运行环境要求72.5.1 硬件环境.72.5.2 软件环境.73. 系统需求分析.83.1各模块关系图83.2数据库设计83.2.1 数据库列表83.2.2数据库连接的实现.93.3 主要开发工具.
7、124.功能模块.124.1登陆模块124.2笔记本模块224.3笔记模块.255.结论.27谢词.27参考文献.271. 绪论1.1项目背景及意义 因为互联网的快速发展,人们获得新知识的方法也变得多样化,在线学习应运而生,为了让使用在线学习的人能更方便的记录笔记,云笔记项目因此诞生,云笔记是用于用户在进行学习时随时记录,分享,收藏笔记。云笔记系通过分布式解决方案使用户空间被无限放大。系统贴近贴近用户的使用习惯,期望达到达到无处不学习无处不笔记的效果。1.2项目现状及趋势概述 就目前来看云笔记市场呈现的特点是用户群较小但是没有什么行业竞争其目前主要用于教育市场。但是互联网发展速度迅速,今后的生
8、活,工作,学习也许都要和互联网打交道,但是互联网毕竟不是现实世界一些重要的信息,知识不能随时随地的记录,但是云笔记却解决了这些烦恼。云笔记起初用于在线学习的人群记录笔记,但是我相信不远的将来云笔记必将推向大众,成为人们日常生活不可或缺的一部分。2. 系统理论和技术路线2.1 Java语言概述Java是SUN公司开发最初命名为Oak是一种小型系统的编程语言,随着互联网发展SUN公司改造了Oak并以“Java”名称正式发布。Java编程风格接近于C,C+语言,但不同的是Java是完全的面向对象程序设计语言,继承了C+语言面向对象技术的核心但是舍弃了指针,增加了垃圾回收机制。 JDK(Java De
9、velopment Kit)是Java开发工具包,除了包含JRE(Java Runtime Environment) 外还包含运行Java程序所需要的工具JDK。所以JDK=JRE+编译、运行等开发工具。JRE:Java运行时环境 除了包含JVM(Java Virtual Machine)外还提供了运行Java程序所需要的环境。JRE=JVM+Java系统类库 JVM是Java虚拟机。Java开发过程简而言之就是首先使用一个文本编辑器编写扩展名为.Java的源文件,然后用Java编译器把扩展名为.Java的源文件编译为.class,最后JVM加载.class并运行.class。不同的平台使用不
10、同的JVM所以,JVM屏蔽了平台之间的差异,所以实现了跨平台一次编译到处使用。2.2 b/s和c/s体系 b/s即浏览器/服务器端结构,如果说b/s就最好和c/s作比较,那具体的项目举例就是网页版的qq是b/s结构,而需要下载的qq客户端属于c/s模式。从安全性来说,c/s模式对于每个用户都有一个客户端,而b/s模式的客户端是被所有用户公用,而且不固定,所以来说,c/s比较b/s来说安全性相对较高。从维护成本角度来讲c/s结构中需要用户下载专有的客户端软件,而b/s模式,客户端不需要下载任何用户界面,软件系统的改进和升级越来越频繁,b/s架构的产品明显体现着更为方便的特性。b/s架构的软件只需
11、要管理服务器就行了,所有的客户端只是浏览器,根本不需要做任何的维护。无论用户的规模有多大,有多少分支机构都不会增加任何维护升级的工作量,所有的操作只需要针对服务器进行。所以客户机越来越“瘦”,而服务器越来越“胖”是将来信息化发展的主流方向。今后,软件升级和维护会越来越容易,而使用起来会越来越简单,这对用户人力、物力、时间、费用的节省是显而易见的,惊人的。从这一方面来说节约了开发成本。2.3 JavaScript与AjaxJavaScript是Netscape开发的一种在客户端运行的、解释性的脚本语言,最早是在HTML网页上使用,用来为网页增加动态功能。为了统一规格,JavaScript兼容于E
12、CMA(European Computer Manufactures Association)标准,因此也称为ECMAScript。JavaScript的关键字var、if、for、switch、break、continue、while支持数据类型的自动转换和强制转换。Ajax (Asynchronous JavaScript and Xml)是异步的JavaScript和Xml,是一种用来改善用户体验的技术,它的实质是利用浏览器提供的一个特殊对象(Ajax对象)异步的向服务器发送请求,服务器送回部分数据(一般不再需要返回完整的页面),浏览器利用这些数据更新当前页面。整个过程,页面无需刷新,不
13、打断用户的操作 获得Ajax对象要区分浏览器。function getXhr()var xhr = null;if(window.XMLHttpRequest)/非IE浏览器xhr = new XMLHttpRequest();else/IE浏览器xhr = new ActiveXObject(MicroSoft.XMLHttp);return xhr;2.4系统主要路线 在数据库方面,我所设计的云笔记系统用到的是MySQL数据库,大致包括用户表,笔记本类型表,笔记本表,笔记表,笔记状态表,分享笔记表。对于浏览器器端的设计,主要用HTML、CSS来实现,其中对于数据库的请求和获取数据库的信息并
14、显示,主要会用到Ajax。服务端代码主要采用Spring MVC(Model View Controller)来实现的。MVC一种设计思想,是根据职责不同将程序中组件分成以下三个部分:M(Model) 模型负责业务处理(数据和逻辑),V(View) 视图负责与用户的交互界面(可以接收和呈现数据),C(Controller) 控制器负责协调M和V工作。 MVC思想现在有很多实现,可以自己使用JSP+Servlet+JavaBean搭建,也可以使用主流框架,例如Spring Web MVC,Struts2,WebWork,JSF等。2.5 运行环境要求 2.5.1 硬件环境 服务端:有足够大的内存
15、可以运行数据库,MyEclipse和Chrome浏览器。2.5.2 软件环境(1)浏览器端:Chrome浏览器。(2)服务端:MySQL数据库、MyEclipse 。3. 系统需求分析3.1各模块关系图此系统设计主要由以下各功能组成,包括用户的登陆、用户对笔记以及笔记本信息的管理、用户退出登录及修改密码。系统所包含的模块如图3-1所示: 图3-1 功能模块3.2数据库设计3.2.1 数据库列表数据库我们采用MySQL数据库,所需要建立的表有:(1)用户表(cn_user)存储登录系统的用户信息。其中包括主键用户ID(cn_user_id)、用户名(cn_user_name)、密码(cn_use
16、r_password)、说明(cn_user_desc)。(2)笔记本表(cn_notebook)笔记存储在笔记本中,笔记本存储在笔记本表中。每个用户都可以有很多不同的笔记本,分别存储不同类别的笔记。笔记本表中包括主键笔记本ID(cn_notebook_id)、用户ID(cn_user_id)、笔记本类型ID(cn_notebook_id)、笔记本名(cn_notebook_name)、笔记本说明(cn_notebook_desc)、创建日期(cn_notebook_createtime)。(3)笔记本类型表(cn_notebook_type)笔记本有不同的类型,这些类型存储在笔记本类型表中,
17、目前预置的所有笔记本类型包括收藏、回收站、活动、正常。其中包括主键笔记本类型ID(cn_notebook_type_id)、笔记本类型名(cn_notebook_type_name)、笔记本类型说明(cn_notebook_type_desc)。(4)笔记表(cn_note_id)是用来存储用户创建的所有笔记,在保存时需要存储用户的ID还有当前笔记所在的笔记本的ID。笔记表中包括主键笔记ID(cn_note_id)、笔记本ID(cn_notebook_id)、用户ID(cn_user_id)、笔记标题(cn_note_tatle)、笔记内容(cn_note_body)、笔记创建时间(cn_no
18、te_createtime)。(5)分享笔记表(cn_share)用户对于自己的笔记可以进行分享,分享后的笔记存储到此分享笔记表中。其中包括主键共享ID(cn_share_id)、共享标题(cn_share_title)、共享内容(cn_share_body)、笔记id(cn_note_id)。3.2.2数据库连接的实现对于数据库的连接,本系统主要用到的是Spring整合MyBatis技术,IBatis是Apache组织推出的一款数据库操作框架。2010该框架由Apache迁移到Google,变更为MyBatis。MyBatis也是对JDBC技术的一个封装,可以简化数据库访问代码。封装了获取连
19、接、执行SQL、释放连接等过程封装了实体对象和SQL参数之间的自动映射(利用#属性名方式替代SQL中的?)封装了查询结果集和实体对象之间的自动映射(结果集字段和实体对象属性名称保持一致)将SQL语句定义到XML文件 因此使用MyBatis操作数据库,只要引入框架,定义实体类,提供SQL语句即可。MyBatis执行过如下:首先加载、解析配置文件(SqlMapConfig.xml和SQL定义的SqlMap.xml),然后将SQL语句提取封装成MappedStatement然后接收SQL参数利用SqlSession执行SQL操作 根据id名字调用对应的MappedStatement对象,根据规则设置
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 毕业设计 论文 基于 SpringMVC 笔记 系统

链接地址:https://www.31ppt.com/p-3979861.html