1、楚雄师范学院本科论文(设计)本科毕业论文题 目 云笔记系统 姓 名 学 号 系(院) 信息科学与技术学院 专 业 计算机科学与技术 指导教师 2015年 3 月 30 日云笔记系统的设计与实现目录摘要 :4关键词 :4Abstract :5Keywords :51.前言61.1系统的开发背景61.2系统目标62.系统分析62.1可行性分析62.2需求分析72.2.1业务描述72.2.2功能概述72.2.3系统用例清单82.2.4系统用例图92.3系统开发工具介绍92.3.1 MyEclipse的功能92.3.2 Mybatis的数据库访问技术92.3.3 Mysql数据库113. 概要设计11
2、3.1系统功能结构113.2数据库设计123.2.1数据库概述123.2.2数据表清单123.2.3 E-R模型图133.2.4数据表定义134.系统详细设计174.1登陆模块174.1.1注册功能174.1.2、登录功能194.1.3、退出登录功能214.1.4、修改密码214.2笔记本模块234.2.1 查询234.2.2 新增244.2.3 重命名笔记本264.3笔记模块264.3.1查询笔记264.3.2查看笔记明细274.3.3 新增笔记274.3.4 修改笔记284.3.5 删除笔记294.3.6 移动笔记294.3.7 分享笔记304.3.8 搜索笔记314.3.9 收藏笔记32
3、4.3.10、回收站笔记325.系统测试335.1软件测试的定义、方法、步骤335.2软件测试目的345.3软件测试原则345.4 软件测试方法355.4.1黑盒测试355.4.2白盒测试38总结40参考文献41致 谢42云笔记系统的设计与实现摘要 :随着社会教育行业的发展,使用云笔记系统以解决学生和老师全凭原始的手工记笔记效率低、易出错的缺陷已成为必然趋势,云笔记系统一般应具有用户登陆、用户注册、用户改密、用户退出登陆、笔记本管理、笔记管理、回收站管理、收藏夹管理、搜索笔记等功能。本文以MyEclipse、MySql、JS、HTML作为后前台开发工具开发了云笔记系统,系统实现了登陆模块、笔记
4、本模块、笔记模块、回收站模块、收藏夹模块、搜索模块6个功能模块,从实际运行效果看,系统具有操作简单、界面友善、灵活性好、系统安全性高、运行稳定等特点,提高了学生和老师管理笔记的效率。论文简要介绍了“云笔记系统”的项目背景和意义,着重阐述了该系统开发实现过程,对系统的需求分析、方案论证、模块设计、数据库设计等各个环节进行了详尽的分析和描述。还介绍了云笔记系统所采取的关键技术,包括Mybatis的数据库访问技术。关键词 :云笔记系统;MyEclipse;Mybatis; MySqlThe design and implementation of cloud notes systemAbstract
5、 : with the development of education industry, using cloud notes system in order to solve all by students and teachers, low efficiency of the original manual notes, error-prone defects has become an inevitable trend, cloud notes system should be provided with general change user login, user registra
6、tion, user, user logged out, notebooks, notes management, recycle bin, favorites management, search, notes, and other functions. Based on MyEclipse and MySql as a development tool developed at the front desk after cloud notes system, the system has realized the landing module, notebooks, notes modul
7、e, the recycle bin module, favorites module, search module 6 function modules, look from actual operation effect, the system has a simple, friendly interface, good flexibility, high system security, stable operation, etc, to improve the efficiency of students and the teacher to manage notes.Paper br
8、iefly introduced the cloud notes system project background and significance, emphatically elaborated the system development process, the system demand analysis, scheme demonstration, module design, database design and so on each link has carried on the detailed analysis and description. Mainly intro
9、duced the key technology of cloud notes system adopted, including Mybatis database access technology.Keywords : cloud notes system; MyEclipse. Mybatis; MySql1.前言1.1系统的开发背景云笔记,是达内在线教育平台上的一个子项目,用于学生和老师进行在线学习时随时记录、分享、收藏笔记,以及参与笔记的社区活动。之前一些笔记系统本身提供了简单的笔记功能,并且提供了简单的笔记分享,但是由于笔记内容随着时间的推移越来越多,但是老系统使用的架构趋于传统业
10、务处理模型,这样导致系统没有办法应付如此大规模的笔记数据,并且笔记的分享能力有限,也无法做到笔记的随时随地可用。但是学生对在线记录笔记的需求仍然很强烈,对笔记的要求也远远超过了简单的笔记工具的实现能力,每天建议平台都可以看到学员提出达内开发笔记平台的建议,为了满足学生的要求,我们需要研发一款适合教学和学生使用方式的笔记产品。1.2系统目标系统目标乃系统开发的依据及归宿。在总体系统分析基础上从云笔记系统目标出发, 确定云笔记系统的系统目标为:(1)时间效率性:系统运行效率高,反映速度快。(2)可靠性:系统能连续准确的处理业务,有较强的容错能力。(3)可理解性:用户容易理解和使用系统。(4)可维护
11、性和适应性:系统应易于修改、易于扩充、易于维护,能够适应业务不断发展变化的需要。(5)可用性:目标系统功能齐全,能够完全满足业务需求。(6)安全保密性:保证系统的物理安全、数据存储和存取的安全与保密、数据传输的安全与保密,做好使用人员的授权管理。2.系统分析2.1可行性分析可行性分析要从多个方面去研究确定项目的研发在必要性和可能性方面达到的程度,具体的方面包括经济方面的可行性、技术方面的可行性、操作方面的可行性等,调查研究要细致、准确,保证项目的研发取得成功,避免不必要的损失。(1)经济可行性云笔记系统可提高老师和学生记笔记和分享收藏笔记的管理水平,以解决学生和老师全凭原始的手工记笔记效率低、
12、易出错的缺陷,保证老师和学生记笔记高速而有序地进行。使用的开发工具不存在太大的经济负担。在保障日常使用质量的情况下,低成本投入可以给企业带来最大的经济效益。(2)技术可行性本系统前台采用HTML和JS作为主要的开发工具,服务器采用MyEclipse开发平台,数据库选择Mysql数据库系统,该系统在安全性、准确性和运行速度方面都占有一定优势。两种软件从技术上已经非常成熟,可以最简便快速的实现客房管理所需功能。(3)操作可行性开发出的系统直观,操作简单,适合计算机水平不高的学生使用。系统维护简单,在系统运行出现故障时可以快速的修复,这就避免了系统故障给企业正常运转带来的困难。2.2需求分析2.2.
13、1业务描述 达内云笔记是在吸收了多年的运营数据,经过精确的大数据分析指导需求模型的建立从而实现的。云笔记通过大数据分布式存储解决方案解决了笔记信息量膨胀的问题,并且通过分布式搜索引擎服务以及数据分析推荐平台的建立提升了用户搜索分享比较的能力,系统可以有针对性的提供用户其他人分享的笔记资源扩充自己的知识行囊,并且在分享之外通过每个人的配额管理实现了非分享笔记的安全私有化,保证了学员的私人空间。通过分布式解决方案用户空间被设计为无限大。业务端同时提供了windows客户端,更加贴近学生的使用习惯,达到无处不学习,无处不笔记的效果。2.2.2功能概述notesystem云笔记系统具有的功能有:注册、
14、登录、修改密码、笔记本、笔记、回收站、收藏笔记本。用户在使用云笔记时,需要先进行注册,注册成功后,系统会自动给该用户创建3个特殊的笔记本:回收站笔记本用来存放用户删除的笔记收藏笔记本用来存放用户收藏的笔记。推送笔记本默认的笔记本,用户可以在该笔记本下存放笔记,也可以另外创建其他的笔记本存放笔记。图1系统业务流程图由图1可以看出,云笔记系统的详细流程为:用户先进行注册;用户注册完登录后,可以修改密码;用户登录后,可以创建笔记本;在选择了笔记本后,用户可以创建笔记;用户可以对笔记进行删除,删除后的笔记暂存于回收站中,对于回收站的笔记用户可以选择恢复或彻底删除;用户可以搜索别人共享的笔记,并且收藏这
15、些笔记,收藏后的笔记可以在收藏笔记本中看到;2.2.3系统用例清单编号模块用例定义用例描述重要程度1基础信息注册注册系统用户A登录登录云笔记系统A修改密码用户修改密码A退出登录用户登出系统A2笔记本查询笔记本查询用户所有的笔记本A创建笔记本创建一个普通类型的笔记本A修改笔记本修改笔记名的名称A删除笔记本删除选中的笔记本A3笔记查询笔记查看选中笔记本下所有的笔记A创建笔记在选中笔记本下创建一个笔记A修改笔记修改笔记的标题和内容A删除笔记删除选中的笔记,将其移至回收站A移动笔记将笔记移动到指定的笔记本中A分享笔记分享选中的笔记A4回收站查询查看所有删除的笔记A预览预览选中的笔记B恢复将选中的笔记恢
16、复到指定的笔记本中A彻底删除彻底删除选中的笔记A5搜索搜索输入搜索条件,搜索匹配的笔记A预览预览选中的笔记A收藏收藏选中的笔记A6收藏笔记本查询查看所有收藏的笔记A预览预览选中的笔记A删除将选中的笔记从收藏笔记本下删除,将其移至回收站A2.2.4系统用例图云笔记系统的用例图如图2所示用户基础信息笔记本笔记回收站搜索收藏笔记本图22.3系统开发工具介绍云笔记系统以MyEclipse、tomcat作为前后台开发工具,以java代码作为主要服务器开发编程,Mysql数据库管理系统为后台数据库开发工具,前台用JS和HTML开发语言。2.3.1 MyEclipse的功能MyEclipse,是在eclip
17、se 基础上加上自己的插件开发而成的功能强大的企业级集成开发环境,主要用于Java、Java EE以及移动应用的开发。MyEclipse的功能非常强大,支持也十分广泛,尤其是对各种开源产品的支持相当不错。MyEclipse生成WAR包并在Tomcat下部署发布,首先是使用MyEclipse将web项目打包,右键选中项目,选择export;弹出Export的select窗体,选择Java EE 的WAR file(myeclipse)选项,然后选择工程名称和路径,单击完成就可以了。打包完成以后我们将war放到tomcat的webapps目录下,并设置server.xml文件;然后运行tomcat
18、,并输入项目的url就可以浏览了。2.3.2 Mybatis的数据库访问技术iBatis是Apache组织推出的一款数据库操作框架。2010该框架由Apache迁移到Google,变更为MyBatis,MyBatis也是对JDBC技术的一个封装,可以简化数据库访问代码。1.Mybatis的功能:(1)封装了获取连接、执行SQL、释放连接等过程(2)封装了实体对象和SQL参数之间的自动映射(3)封装了查询结果集和实体对象之间的自动映射 将SQL语句定义到XML文件,因此使用MyBatis操作数据库,只要引入框架,定义实体类,提供SQL语句即可。 2.MyBatis的体系结构 开发包,底层APIC
19、onfiguration,Mapper,MappedStatement等组件),SqlMapConfig.xml(只有一个),(主配置文件,定义数据库连接参数,框架参数,关联SQL XML文件),SqlMap.xml(可以有多个),(用于定义和存储SQL语句的XML),开发者在使用时,将数据以Map,Entity对象,int/string/date格式传入,处理完毕数据可以以Map,Entity对象, int/string/date格式传出。 3.MyBatis执行过如下: 首先加载、解析配置文件(SqlMapConfig.xml和SQL定义的SqlMap.xml),然后将SQL语句提取,封装
20、成MappedStatement,然后接收SQL参数,利用SqlSession执行SQL操作,根据id名字调用对应的MappedStatement对象,根据规则设置SQL参数,发送到数据库执行,如果是查询最后将结果集数据映射成Map,Enity对象返回。 4.MyBatis基本使用SqlSessionFactoryBuilder:读取XML配置文件,构建SqlSessionFactory对象,SqlSessionFactory用于创建SqlSession对象,SqlSession:封装了数据库增删改查方法 使用方法: 引入mybatis和驱动开发包,src添加SqlMapConfig.xml主
21、配置,添加SqlMapper.xml定义SQL语句,根据表定义实体类, 获取SqlSession触发SQL操作。 5.MyBatis的分页处理 mysql数据库: select * from EMP limit 从第几条开始抓,抓取数量。 oracle数据库: select * from (select e.*,rownum rn from EMP e) where rn =? and rn ? 6.使用Mapper映射器 通过一个普通的接口调用SQL操作,首先编写一个EmpMapper接口,将EmpMapper.xml定义SQL的文件中,namespace指定为包名.接口名,在EmpMapp
22、er接口定义方法,方法名与XMl操作的id属性一致,方法参数与XML操作的parameterType类型一致,返回值参考resultType指定的类型,增删改可以用int或void,单行记录查询可以用resultType指定的类型,多行记录查询需要使用List,最后通过session.getMapper(EmpMapper.class)动态生成一个实现类,通过该对象触发SQL操作。7使用myBatis提供的工具类中的方法,从类路径或Configuration.xml文档所在位置加载资源文件。8.使用工厂对象获取SqlSession 对象参数如果为true,表示该会话具有自动提交事务的功能,否则
23、需程序员手动提交事务。9.使用进行数据库访问 (1)构造返回值集合 (2)调用接口中的方法 (3)提交事务 (4)回滚事务 (5)关闭会话2.3.3 Mysql数据库MySQL是一种开放源代码的关系型数据库管理系统,MySQL数据库系统使用最常用的数据库管理语言结构化查询语言(SQL)进行数据库管理。由于MySQL是开放源代码的,因此任何人都可以在General Public License的许可下下载并根据个性化的需要对其进行修改。MySQL因为其速度、可靠性和适应性而备受关注。大多数人都认为在不需要事务化处理的情况下,MySQL是管理内容最好的选择。MySQL这个名字,起源不是很明确。一个
24、比较有影响的说法是,基本指南和大量的库和工具带有前缀“my”已经有10年以上,而且不管怎样,MySQL AB创始人之一的Monty Widenius的女儿也叫My。这两个到底是哪一个给出了MySQL这个名字至今依然是个迷,包括开发者在内也不知道。MySQL的海豚标志的名字叫“sakila”,它是由MySQL AB的创始人从用户在“海豚命名”的竞赛中建议的大量的名字表中选出的。获胜的名字是由来自非洲斯威士兰的开源软件开发者Ambrose Twebaze提供。根据Ambrose所说,Sakila来自一种叫SiSwati的斯威士兰方言,也是在Ambrose的家乡乌干达附近的坦桑尼亚的Arusha的一
25、个小镇的名字。MySQL,虽然功能未必很强大,但因为它的开源、广泛传播,导致很多人都了解到这个数据库。它的历史也富有传奇性。3. 概要设计3.1系统功能结构根据该系统的具体情况,将系统主要功能介绍如下:登陆功能:用户的登陆和注册。笔记本功能:笔记本的创建、删除、重命名。笔记功能:笔记的查询、创建、删除、修改、分享移动。回收站功能:笔记的恢复和彻底删除。分享笔记功能:用户分享的笔记可以进行搜索得到,搜索到的笔记可以进行收藏收藏笔记功能:对需要和喜欢的笔记进行收藏。云笔记系统的功能模块图如图3所示:云笔记系统基础信息笔记本笔记回收站搜索收藏笔记本注册登录修改密码退出图33.2数据库设计3.2.1数
26、据库概述数据库名称为 cloud_note,适用于 Mysql 数据库,用于支持 notesystem云笔记系统项目。3.2.2数据表清单分析 notesystem 项目的需求文档,该项目所需要的数据表如表1所示:表1 数据表清单表名描述cn_user用户表,存储登陆系统的用户信息cn_notebook_type笔记本类型表,预置了笔记本的类型cn_notebook笔记本表,是针对笔记本的分类cn_note_status笔记状态表cn_note_type笔记类型表cn_note笔记表,存储用户记录的笔记信息cn_share分享笔记表,存储用户分享过的笔记3.2.3 E-R模型图数据库的E-R图
27、如下图4所示: 图4由上图4可知:通过外键连接PK可以把数据库中的用户表、笔记本表、笔记表、笔记类型表、共享表、笔记类型表等相互连接。3.2.4数据表定义1.用户表(cn_user)(1)业务说明用户在使用云笔记之前需要先进行注册,注册的信息存储到用户表中。注意,在存储密码时需要对其进行加密。(2)表结构用户表的结构如表2所示:表2用户表(cn_user)字段名称类型备注字段描述cn_user_idvarchar(100)PRIMARY KEY NOT NULL主键,用户IDcn_user_namevarchar(100)NULL用户名cn_user_passwordvarchar(100)N
28、ULL密码cn_user_tokenvarchar(100)NULL令牌(用户等级)cn_user_desctext说明2笔记本类型表 (cn_notebook_type)(1)业务说明用户创建的笔记需要存储在笔记本下,而笔记本具有不同的类型,这些类型存储在笔记本类型表中,其数据需要预置,目前预置的笔记本类型包括收藏、回收站、活动、推送、正常。(2)表结构笔记本类型表的结构如表3所示:表3 笔记本类型表(cn_notebook_type)字段名称类型备注字段描述cn_notebook_type_idvarchar(100)PRIMARY KEY 主键 cn_notebook_type_code
29、varchar(100)NULL笔记本类型编码cn_notebook_type_namevarchar(500)NULL笔记本类型名称cn_notebook_type_desctext说明3笔记本表(cn_notebook)(1)业务说明用户创建的笔记需要存储在笔记本下,而笔记本存储在笔记本表中。每个用户可以有很多不同的笔记本,分别存储不同类别的笔记。其中,用户对于笔记也具有收藏、删除至回收站、参加活动等功能,在每个用户注册时,系统为其预置了收藏、回收站、活动类型的笔记本,用来支持这些业务。另外,系统还为用户预置了一个默认的笔记本,用户可以直接在这个笔记本下存储笔记,当然用户也可以自己创建新的
30、笔记本来存储笔记。(2)表结构笔记本表的结构如表4所示:表4 笔记本表(cn_notebook)字段名称类型备注字段描述cn_notebook_idvarchar(100)PRIMARY KEY NOT NULL笔记本IDcn_user_idvarchar(100)FORIEGN KEY用户IDcn_notebook_type_idvarchar(100)FORIEGN KEY笔记本类型IDcn_notebook_namevarchar(500)NULL笔记本名cn_notebook_desctext笔记本说明cn_notebook_createtimetimestampNOT NULL创建日
31、期4.笔记状态表 (cn_note_status)(1)业务说明用来存储笔记的状态,此表作为备用表,目前并没有使用。(2)表结构笔记状态表的结构如表5所示:表5 笔记状态表(cn_note_status)字段名称类型备注字段描述cn_note_status_idvarchar(100)PRIMARY KEYNOT NULL笔记状态IDcn_note_status_codevarchar(100)NULL笔记状态编码cn_note_status_namevarchar(500)NULL笔记状态名字5.笔记类型表 (cn_note_type)(1)业务说明用来存储笔记的类型,此表作为备用表,目前并
32、没有使用。(2)表结构笔记类型表的结构如表6所示:表6笔记类型表(cn_note_type)字段名称类型备注字段描述cn_note_type_idvarchar(100)PRIMARY KEYNOT NULL笔记类型IDcn_note_type_codevarchar(100)NULL笔记类型编码cn_note_type_namevarchar(500)NULL笔记类型名称cn_note_type_desctext说明6.笔记表 (cn_note)(1)业务说明用来存储用户创建的笔记,在保存时需要存储用户的ID和当前笔记所在的笔记本的ID。对于笔记状态和笔记类型字段,是备用字段,暂时并未启用。
33、(2)表结构笔记表的结构如表7所示:表7 笔记表(cn_note)字段名称类型备注字段描述cn_note_idvarchar(100)PRIMARY KEYNOT NULL笔记IDcn_notebook_idvarchar(100)FOREIGN KEYNOT NULL笔记本IDcn_user_idvarchar(100)FOREIGN KEYNOT NULL用户IDcn_note_status_idvarchar(100)FOREIGN KEYNULL笔记状态ID:备用cn_note_type_idvarchar(100)FOREIGN KEYNULL笔记类型ID:备用cn_note_tit
34、levarchar(500)NULL笔记标题cn_note_bodytextNULL笔记内容cn_note_create_timebigint(20)NULL笔记创建时间cn_note_last_modify_timebigint(20)NULL笔记最近修改时间7.分享笔记表 (cn_share)(1)业务说明用户对于自己的笔记可以进行分享,分享后的笔记存储到此分享笔记表中,其他用户可以共享此表中的笔记。(2)表结构分享笔记表的结构如表8所示:表8分享笔记表(cn_share)字段名称类型备注字段描述cn_share_idvarchar(100)PRIMARY KEYNOT NULL共享IDc
35、n_share_titlevarchar(500)NULL共享标题cn_share_bodytextNULL共享内容cn_note_idvarchar(100)FOREIGN KEYNULL笔记id4.系统详细设计系统的总体设计完成以后,还需要确定于系统和各模块的 具体实现方法,以便最终真正建立一个完善的系统。要建立系统的各个功能模块,就要进行程序设计。包括创建系统各种界面、对象以及处理程序的基本编程能力。要求学生能够利用命令、语句及系统工具设计人机接口界面,熟悉输入、输出界面和处理过程。 4.1登陆模块4.1.1注册功能1.业务逻辑用户名是2-20位中文、英文、数字、下划线的组合,密码长度不
36、能小于6位,确认密码和密码一致,用户名不能重复,在点击注册时验证,所有的验证通过,则创建新用户,注册成功后,自动跳转到登录页面。注册页面如下图5所示:2.分析请求a、有几次请求在注册时发起请求,先验证用户名是否重复,若不重复则创建用户,否则则返回一些错误信息b、请求的过程首先写注册;其次把function()函数补充完整;图5然后设置DispatcherServlet服务控制器;之后写服务器端(Controller-Service-DAO)几个类;最后写function的回调函数3.开发步骤a、DAO类建表cn_user ;创建实体类Use;创建UserMapper,User findByNa
37、me(String userName),void save(User user);b、Service类创建LoginService,验证用户名是否重复,创建用户;c、Controller类创建LoginController,调用LoginService处理请求,给页面返回一些数据,该数据在控制层,统一组装,最好所有的Controller的方法返回的数据都有标准的格式。d、function函数 对表单中的数据项进行客户端验证; 发送异步请求,将表单中的信息传给服务端;e、回调函数 如果注册失败,不需要跳转,但是要给予错误提示; 如果注册成功,跳转到登录页;4.介绍a、用户注册成功后,可以使用该账
38、号登陆云笔记,进入云笔记系统后,用户可以创建笔记,但是创建的笔记以笔记本为载体,即每个笔记都应该存到一个笔记本下,其中笔记本和笔记是1对多关系,分别有笔记本表cn_notebook和笔记表cn_note。b、用户在创建笔记之前,需要选择一个笔记本,该笔记本用户可以自己创建,另外在用户注册成功时,系统会自动给用户分配3个预置的笔记本:默认笔记本:系统默认赠送给用户的笔记本,用户可以直接在该笔记本下创建笔记;回收站:当用户删除笔记时,是将笔记转移到回收站中,而不是直接删除,在回收站里用户可以再次恢复笔记,也可以将笔记彻底删除;收藏夹:用户可以搜索别人共享的笔记,然后收藏这些笔记,系统会将他收藏的笔
39、记存入收藏夹中;4.1.2、登录功能1业务介绍(1)点击登录按钮时,需要进行客户端验证,验证用户名、密码不能为空;(2)发送异步请求,访问服务端组件,在服务端对用户名、密码进行验证,判断其是否正确;(3)如果验证通过,则登录成功,将用户信息存入session,并且将页面跳转至edit.html;跳转到edit.html之后,将用户名显示在页面右上角;(4)如果验证不通过,则登录失败,给页面返回一些错误信息,并提示给用户;(5)登陆页面如下图6图62分析请求a、包含一次请求,即登录时进行验证;b、请求过程与注册过程一致;3开发步骤a、DAO类由于UserMapper中已经有了findByName
40、方法,所以不用写了;b、Service类在LoginService里增加验证用户名和密码的方法,该方法的逻辑为: 根据用户名查询用户; 判断查询结果是否为null; 如果查询结果为null,说明用户名不存在,返回错误信息; 如果查询结果不为null,继续判断密码是否正确; 密码正确,则登录成功; 密码错误,则返回错误信息;c、Controller类在LoginController中,调用LoginService对用户名、密码进行验证;如果验证成功,将用户信息存入session;d、function函数验证用户名、密码是否为空;发出异步请求,访问服务端,进行验证;回调函数里,根据返回的数据,进行
41、提示或者页面跳转;跳转页面如下图7所示:图74.1.3、退出登录功能1业务逻辑注销当前用户的session;将页面跳转到登录页;页面如下图8所示:图82分析请求需要一次请求,在本次请求中,讲session注销即可;3开发步骤a、Controller在LoginController中,增加一个推出登录的方法,在该方法中将session注销;b、function首先发出异步请求,访问服务端推出登录的方法;其次在回调函数中,将页面跳转到登录页;4.1.4、修改密码1业务逻辑(1)原密码长度不能小于6位(2)新密码长度不能小于6位(3)确认新密码与新密码一致(4)发送异步请求,访问服务端(5)验证原密
42、码是否正确(6)如果原密码输入正确,则修改密码(7)在回调函数中,将页面跳转至登录页(8)页面如下图9、10所示:图9图102开发步骤a、DAO类在UserMapper中增加修改密码的方法;b、Service类增加修改密码的业务,需要先校验原密码,再修改密码;c、Controller类增加修改密码的方法,该方法要接收页面传入的原密码和新密码,调用Service进行修改密码。d、function函数首先进行客户端验证,包括对原密码格式、新密码格式、确认密码是否一致;其次发出异步请求,访问服务端;最后回调函数中,进行页面的跳转;4.2笔记本模块4.2.1 查询1加载普通笔记本a、业务逻辑首先发出异步请求其次查询出当前用户所有的普通笔记本(type_id=5);最后回调函数中,遍历这些笔记本,将它们逐个插入到笔记本的ul下;笔记本模块如下图11所示:b、开发步骤首先在DAO类中增加根据用户ID查询普通笔记本的方法;其次在Service类中增加查询某用户普通笔记本的方法;然后在Controller类中增加方法处理查询普通笔记本的请求;最后在function函数中发出异步请求,回调函数里要遍历返回的所有笔记本,然后将其插入到笔记本的ul