版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于SSM框架的微博媒介系统的设计与实现摘要互联网相关技术迅猛发展,早已进入了我们的生活,食衣住行方方面面,互联网无孔不入。我们早已沉浸在互联网的世界里,和互联网快速发展一起来的有数量极其庞大的数据产生,这些由互联网发展产生的海量数据已经悄然改变了广大网民获取信息的方法与媒介。说到当今最流行的实时社交平台相信绝大多数人第一反应就是微博,微博最大的特点就是随时随地你都可以自由地和千里之外的网友分享和交流最新资讯,本系统在前台对页面进行简化处理,在后台管理中对使用者发布的微博和使用者本身进行了仔细的区分与管理,页面采用JSP和java对应的一种高级解释语言等技术增加了用户使用网站的体验,网站后端使用已经发展26年的Java语言,在知名服务器“汤姆猫”上建设本次微博项目,利用SSM作为本系统的系统架构,本项目的数据储存是甲骨文公司开发的Oracle数据管理系统所作储存。关键词:微博;B/S架构;Java;SSM框架;Oracle目录摘要 I绪论 1一、关键技术介绍 1(一)框架/结构概述 1(二)关键技术简介 2(三)开发工具 2二、系统需求分析 3(一)可行性分析 3(二)需求分析 4三、系统功能设计 7(一)系统类分析 7(二)关键业务设计 8(三)数据库设计 12四、部分系统功能实现 16(一)登录系统 16(二)信息系统(用户) 17(三)后台管理系统 18结语 19参考文献 20附录 21绪论微博是一种基于大量用户形成的实时多媒体社交平台,它可以在网上公开的消息类型,任何人都可以阅读。传播媒介随着互联网发展越来越便携,微博信息的分享形式也变得多种多样丰富起来,包括但不限于电子邮件和网页。微博也可以发布丰富的影音内容,如视频剪辑或个人照片。微博系统在全球的代表是Twitter。与新浪微博系统不尽相同的本微博项目设计了一个提问系统,用户可以在这里提出问题并获得他人的回答,从而使得自己的问题增加曝光度,以期望获得别的用户的回答。一、关键技术介绍(一)框架/结构概述1.B/S结构浏览器-服务器结构,与\o"C/S结构"客户端/服务器结构差别很大,用户端无需使用私有开发的客户端进行浏览操作,在自己的设备有可以访问到服务器的浏览器就可以,客户端浏览器向后台服务器发起请求,后台服务器再向数据库发送增删改查请求由于该结构得天独厚的先天性优势,在不同平台均能正常访问工作;服务器端可采用专业的服务器计算机,并安装\o"OracleDatabase"Oracle数据库。浏览器/服务器结构使客户端请求访问更加简洁,当前的互联网应用正在朝着轻量化客户端最终甩掉客户端运行的方向发展,所以这是对客户端/服务器技术的改进,同时也是大势所趋。该结构对服务器端工作要求较高,所以对服务器整体处理器和内存,硬盘等需要更好的配置。[2]2.MVC模式主要是提供系统开发者一个物件导向(OOP)、模块化的架构,将程序清楚切割,分离商业逻辑、路由、数据库定义/存取、网页内容,通常是放到不同的档案内储存,大多是以单一类别呈现,以方便后续承接者的维护。模型(Model)-通常与数据库里的资料表一一对应,用于对数据表增删改查的操作提供支持。视图(View)-是使用者界面,通常是网页内容,包括HTML、CSS、Javascript,除了静态的内容,还会呈现数据库的查询结果控制器(Controller)-是MVC的中枢,负责与其他各层通信3.SSM框架SSM框架是springMVC,spring和mybatis框架的整合,整个系统被划分为持久层,业务层,控制层,表现层这四层结构,使用springMVC负责管理各层发来的转发请求和对前端视图进行管理(二)关键技术简介1.Java服务器页面是指在HTML内插入Java代码,在网页服务器上动态生成网页,并返回网页浏览器的服务器侧脚本语言。作为JavaEE文凭的一部分,在网络应用服务器上运行。Java服务器页面在运行时会被转换为JavaServlet后运行,因此与Servlet几乎相似。2.Ajax是利用以下组合制作非同步网络应用的网页开发方法。用于表达信息的HTML(或XHTML)和CSS;用于动态画面输出与显示信息相互作用的DOM,JavaScript;用于与Web服务器进行异步数据交换和操作的XML、XSLT、XMLHttpRequest等操作。3.Java是面向客体的编程语言。1991年以“绿色计划”的名字开始,1995年发表。起初是为了家电产品内搭载并启动的程序而开发的,但现在是网络应用开发中最常使用的语言之一,在移动设备软件开发上也广泛使用。目前已经推出了15版。4.Spring框架英语:SpringFramework,是Java平台(也简称为Spring)的开源应用程序框架。它提供了用于开发动态网站的各种服务。它用作电子政务标准框架的基础技术。作为轻量级容器,它直接管理Java对象。它管理着该对象的生命周期,例如每个对象的创建和销毁,并且可以从Spring获取必要的对象。5.Mybatis是支持开发者指定的SQL、储藏几种高级映射的Percistanc框架。Mybatis用JDBC处理的相当部分的代码和参数设定以及结果代替了Mapping。Mybatis可以在数据库中设置原始类型、Map界面并使用XML。(三)开发工具ApacheTomcat是Apache软件财团开发的网络应用服务器。Tomcat提供与网页服务器联动可执行的Java环境,提供JSP和JavaSublet可执行的环境。Tomcat可以通过管理工具更改配置,但也可以编辑并配置XML文件。另外其还内置HTTP服务器。ApacheTomcat是采用ApacheLicence,Version2的开放源代码软件,提供用于执行Java服务器页面。版本5.5以后基本对应于JavaSE5.0以后。Oracle数据库(Oracle数据库或OracleRDBMS)是Oracle在美国销售的关系数据库管理系统。它被大多数大型企业(例如银行)广泛使用。Oracle主要用于无法使用面向企业市场的开源数据库的环境中,尤其是要求极高可靠性的所谓的关键任务环境是Oracle严格控制的领域。Eclipse它是由EclipseFoundation创建的基于Java的集成开发环境。由于Java是由SunMicrosystems开发的一种编程语言,并从支持包括Java在内的各种语言的编程集成开发环境开始,但是现在通过引入OSGi已经发展成为通用的应用程序软件平台。二、系统需求分析(一)可行性分析1.技术可行性:在目前现状的前提条件上,彻底清除由于不同的用户终端开发进度不一致导致软件在不同客户端体验有较大区别,降低多版本运行维持保护的实际阻碍,结合由来已久已经完全被认可的浏览器/服务器系统框架在项目的制作和成功上具有良好的技术可行性,利用强大的OracleRDBMS可以使项目运行非常稳定还可以助力数据长期永久化保存。由此可得出结论:利用越来越成熟的Java语言和JavaEE体系、完全免费且开放原始代码的Java语言为代码的运行使其充分发挥作用提供了完善的环境基础配施和发展日趋成熟的服务器软硬件、拥有丰富功能以及完整技术支持的Oracle数据库、高超的前端技术的应用所打造的清爽的用户互动网站,综上所述,该项目具有完整的完备的技术可行性。2.经济可行性:从上个世纪90年代初互联网萌芽开始直至现在,互联网从早期进行巨大飞跃进入数字化时代和互联网社会,从固定单一途径非主动地获得信息,早就已经不能满足当代网民的日益增长的需求,网民接收到的信息越来越多,从十几年前大家捧着报纸,听着广播,获得信息的方式大多是被动获得信息。到现在人手一部智能手机通过小屏方便浏览大千世界,获取大量的信息,现在获取的信息和十几年前相比最大的不同便是,现在的信息是我们自己主动获得的自己感兴趣的信息。虽然现在获取信息的方法越来越多,但是除了微博之外的大多数方式,获取方式还是以被动获取为主,用户之间不能彼此对于咨询信息互通有无,这就让找到自己想了解的咨询信息产生了很大的负面影响。本微博系统通过设计真正使用户得到自己想了解的内容,真正做到实时指尖上的交流和本微博系统的其他用户互动信息。对已经成熟的Java语言,SSM框架,数据库等技术以及大量开放源代码的系统配置环境的简单应用,使得小项目的开发变得更加具有经济性,项目运行更高效,有助于降低小项目配置服务器的成本,纯熟的技术和简单易操作的代码双管齐下为本项目产生一定的经济收益。3.操作可行性:本微博系统采用开发最为方便的今后发展趋势的浏览器/服务器架构作为本系统的基础结构,用户只需要在任意一个有浏览器并且浏览器能正常访问本微博服务器的设备访问并且输入正确的邮箱和密码后即可登录微博系统,本微博系统的界面区块分明,视觉辨识度高,由于操作简单,使用者只要知道基本的网页操作方法,就可以轻松使用,体验非常出色。因此在系统交互操作上具有良好的用户交互体验。(二)需求分析 1.系统总体需求:组成本微博的两个系统分别是展示给用户能看到的前台用户模块还有在后台用户不可见的默默提供服务的后台管理模块,当用户未在登录状态或者今日内初次打开本网页时,会看到右边是登录选项,左边是注册选项,用户可以自主决定是否注册或者是否登录。用户使用已经注册成功的账号进行登录,否则无法登录。如果用户之前没有账号,就可以选择注册一个全新的账号,根据注册要求填入电子邮箱地址、密码等内容即可注册。用户在访客状态,也就是未登录状态时,无法浏览微博内容。用户成功登录后可以在首页对已经关注的别的微博用户的最近微博查看,也可以对其点赞,评论,转发等。用户登录后,可以在系统中修改姓名、出生年月日等自己的基本信息。输入之前的密保答案成功之后还可以修改密保信息,在输入正确的密码后,还可以修改旧密码。编辑自己的个人微博主页,修改用户自己的头像,对别人的微博或者自己的微博点赞,转发,评论,关注除了自己之外的微博用户,取消关注除了自己之外的微博用户,拉黑除自己之外的微博用户,私聊除自己之外的微博用户等各种操作。本系统后端管理员输入管理员密码,登录后即可查看本微博系统用户所产生的一切数据,这并不局限于微博数据、用户数据。还可以以饼图和柱状图的形式直观地看到微博总数统计和本周提问统计。管理员的管理权限包括但不限于删除微博,管理提问等。微博查找:用户可以在用户首页微博流上方看到查找框,输入指定字目点击查找,页面就会出现内容包含指定字目的并且指定字目已经被高亮的微博再选择搜索用户。微博发布:用户在微博发送文本框中添加自己想要发送的内容,或者在表情符号中点击表情来添加表情,或者插入本地的图片,注意文本框对输入字符数量设限为140个汉字。微博评论:用户可以通过点开一条微博的评论区,可以浏览别人在此条微博下发的评论,也可以自己发布评论评论别人的微博。提问:用户可以提出问题,除了提问者本人之外的用户可以确认是否回答问题,使用者选择回答的话,被采纳答案的回答者可以得到提问者事先设置的悬赏积分作为回答的奖励,海螺称号系统会根据用户的悬赏积分的多寡来变化不一样的称号。粉丝/好友:用户通过该模块看到用户还没有被本用户关注的用户,找到自己感兴趣的用户关注他们后,看到自己刚刚关注过的微博用户或之前关注过的其他微博用户,就可以在界面内看到朋友的最新微博信息,也可以去单独看朋友的个人信息,也可以给朋友发送个人的消息也就是私信。2.用例图需求:1).在未注册也未登录的状态下打开本网页,就可以在注册和登录中选择,如果注册之后因个人原因密码被泄露,可以通过验证正确答案的密保问题重新设置密码。图1初始用户用例图2).用户登录进入系统后,可以管理本人账户的个人信息,例如修改本人的姓名,性别等图2修改用户信息用例图3).用户登录进入系统后,可以搜索自己或者别人的微博,在自己的微博内发布新微博博文,查看别的用户或自己的微博。图3微博管理用例图4).对微博的评论进行管理,发布自己的评论,查看别人的评论,给别人评论点赞等图4评论管理用例图5).海螺管理,用户可以在此处发布提问,参与回答非用户本人的提问,当回答被该提问的提问者采纳时,可以获得提问者给出的相对应的积分。图5提问管理用例图6).用户登录之后,可以使用搜索功能自己搜索用户关注,也可以通过主页右下侧的微博好友推荐位来关注别的微博用户,也可以取消关注,或者向别的用户发送私信,也可以从别的用户接收私信。图6好友管理用例图7).管理员在管理员网页登录后,可以对用户,微博等数据进行删除或者冲正操作。图7管理员用例图三、系统功能设计(一)系统类分析实体类:传递数据用,包括Weibo、User、Friend、WeiboTrans等,Weibo类中包括微博博文信息以及博文产生的互动信息,同时包含User类;User类中包括微博用户的基本信息;Friend类包括用户的好友的用户编号等;WeiboTrans类包含User类和Weibo类等。控制器类:在controller层包含AdminController等几个Java类,在本系统的框架中,服务器使用这个类来接收从浏览器端发来的请求信息,并处理从数据库获得的数据。它还控制浏览器请求的转发操作,从服务层获得的返回数据将相应地反馈到浏览器。MainController主要来从用户端传递提交的form或者链接请求的接收,与此同时,将浏览器发过来的请求参数向控制器对应的方法里去作转交,同数据响应一起传递给浏览器端,使得浏览器端可以显示传递来的数据。FriendController主要来从好友相关界面中收到的链接请求或者各种表单,同时将好友相关界面中发来的请求参数向控制器类中对应方法里作传递,通过业务层获得返回的数据之后,同数据响应一起传递给浏览器端,使得浏览器端可以显示传递来的数据。AdminController主要来从管理员相关页面中收到的各种form或者请求,同时将管理员相关界面中发来的请求参数一并向控制器类对应的方法中传递,从业务层获得返回数据后,携带返回信息交回浏览器端,使返回信息可以在浏览器前台显示出来。业务逻辑类:有四个用来对外提供的服务的专用接口和这四个对外服务的专用接口对应的实现类被包含在服务层内,专门处理用户相关业务的是IUserService,例如登录注册等业务。专门处理系统信息相关业务的是IWeiboService,例如发布微博,查找微博,点赞微博等业务。专门处理用户在系统内好友相关业务的是IFriendService,例如私信好友,拉黑用户等业务。专门处理系统管理员相关业务的是IAdminService,例如管理员登录、微博管理等业务。数据库交互类:由于制作系统底层的时候本人选用了MyBatis这一个底层数据库环境,所以本人只需要专心处理好业务逻辑,而不需要把工作重心放在关注业务层和数据库之间的代码,因而节省了不少时间。无需编写接口的实现类,只需要在业务层接口中声明好方法就可以。(二)关键业务设计1.登录系统图8登录系统顺序图用户进入主页后,可以选择左侧的注册用户区块或右侧的登录区块进行登录。在注册模块中,用户输入自己的电子邮件,密码,昵称和其他信息。当用户在文本框中输入电子邮件时,其输入的电子邮件将通过Ajax技术发送到后台。和数据库比对,检查用户邮箱是否已经注册。如果已注册过后,将会在文本框右侧提示用户该邮箱已被注册。当基本信息完整地输入并点击下方的注册按钮后,技术到保存用户的注册信息。登录功能,当用户输入电子邮箱地址和用户密码时,可以选择下次自动登录,单击登录后,该用户就会被重定向至微博主页。2.用户信息系统图9修改信息顺序图用户基本信息:单击系统主页上的个人账号设置后,它将跳至该页面以修改基本用户信息,例如姓名、性别等。用户可以修改基本信息,并将修改过后的信息保存在数据库中。修改密码:在用户配置页面上,单击修改密码这个选项可以转到进行修改密码动作的页面。用户可以输入用户当前的密码,系统将检查密码是否正确。如果密码不正确,则会显示密码错误。首先需要验证是否是该用户实际拥有者在进行操作,所以需要验证本账户的旧密码,旧密码如果验证失败将提示失败并无法修改,如果旧密码验证正确后,即可在下面两个密码框输入新密码,单击“确认修改”以更新数据库中的修改者密码。修改用户头像:首先要在用户个人资料中点击转到个人资料,请单击以转到“编辑头像”页面,用户选择一个图片文件,然后单击“上传”以将用户的作为头像的图片保存到后台服务器并确认它是用户的现在修改的之后显示的作为头像的图片。数据库便会将用户的修改前所使用的的最后一个作为头像的图片完全删除,然后单击“修改”以将修改后的作为头像的图片位置地址保存到数据库中。修改密保:用户必须首先根据先前设置的密保问题填写答案。如果密保答案是错误的,则将提示用户该密保答案是错误的。如果密保答案正确,则用户可以输入新的密保问题和与之对应的密保答案,然后单击“修改”以保存用户的新密保安全问题和答案。3.微博模块发布微博:用户可以选择在其主页上发布微型博客博文,也可以选择在博文消息中插入表情符号或插入图片。用户发布后,系统将图片文件转移到服务器图片目录并保存好,仅将图片在服务器中对应的路径保存到数据库,将微博信息保存到数据库。搜索微博:用户可以在主页上的搜索框中输入想搜索的微型博客博文内容中涉及的指定字目进行搜索,在搜索指定字目传到后台之后系统通过数据库的查询来搜索相关的微型博文信息。在主页上显示搜索到的页面,并以红色显示你键入的搜索指定字目。微博操作;用户可以查看个人微博,好友微博以及其他信息,可以进行一些操作,例如转发,评论,删除等。4.好友模块关注功能:用户登录系统后,可以从页面右侧的推荐用户列表中选择想关注的用户,也可以通过页面上的查找功能进行查找,以关注查找到的用户。在关注用户之后,个人关注数增加1位,被关注用户的粉丝数量增加1位。取消关注:和关注功能操作非常相似,可以视为关注操作的反向操作。找到好友功能页面,并在好友功能页面上查看我的关注的系统中的其他用户,用户只需单击已关注即可取消关注系统中这名用户。用户取消关注该名用户后,用户个人关注者的数量减少1位,该名用户的粉丝随之减少1位。拉黑用户:通过修改好友表中相应的记录状态来改变用户对当前用户的状态,被拉黑用户将看不到拉黑用户发布的私信和微博信息。私信:您可以在好友界面里选中别的用户并向对方发送私人信息,同理,对方也可以选中你,您也可以接收到别人发给你的私人信息。发送私信:用户首先选择要发送的非本人用户,输入需要发送的私信信息,然后可以在私信中插入表情符号。单击发送后,私信信息将发送给相应的用户。同时增加提醒用户的未读私信的数量。查找用户:在搜索用户页面中,用户可以输入用户昵称的指定字目来查询相关用户,并在页面上用红色标出用户输入的指定字目来显示查询到的用户用户主页面:在该页面上,想跳转到用户主页,只需要点击用户的头像或者用户名就可以。点开用户的个人主页会显示该用户的个人基本信息,例如邮箱地址,签名等。用户还会看到该名用户发送于近期的按照发布时间由近至远依次排列的微博,用户可以像对待别的微博一样可以实现点赞、评论等功能。5.海螺模块发布问题:用户通过点击顶部的海螺提问进入海螺提问主页,在该页面最明显的就是可以编辑问题并且发布提问的文本框,和发微博的界面一样,也可以选择小表情符号插入文字,和发微博界面有所不同的是这里还可以对用户发出的问题的最终被采纳的回答者奖励的悬赏积分数,在该文本框下面有几个选项可以选择最新除自己之外的用户发布的问题,还没有解决的除自己之外的用户发布的问题等四个不同的问题问题状态选择要件。查看海螺问题:当用户点击任何一个海螺问题,页面将会跳转到该海螺问题的页面,页面展示了提问者的用户名,提问者获得的用户称号,该问题的发布时间,提问者设置的该问题的悬赏积分等内容显示在画面上。回答海螺问题:在海螺问题信息页面最下部有一个文本框,用户可以输入这个问题的答案,和发微博界面一样地可以插入小表情以来回答该问题,然后点击回复按钮以在数据库中保存回答答案的信息。采纳问题答案:在用户本人是提问者的海螺问题主页内,用户可以选择最能解释自己疑惑的解答,并点击该解答右侧的采纳,此时解答被采纳,回答被采纳者可以获得该问题提问之初设计的奖励积分。6.后台管理员管理员登录:点击“管理员登录”进入管理员登录界面,输入管理员具有独立性唯一性保密性的且保证完全正确的管理员账号与和正确的管理员账号相匹配的管理员密码,点击登录按钮之后,后台将会进行非同步处理获得在前台获得的管理员账号和正确的管理员密码,如果刚刚输入的数据与正确数据为同一个数据将会进入管理员管理界面,如果刚刚输入的数据是错误数据,提示非法访问。管理员首页:在管理员页面的顶部区域,可以看到四个选项,点击任意一个可以跳转到用户管理页面,微博管理页面和海螺管理页面或者回到初始页面。在首页中间可以通过柱状图和饼图了解到本微博系统本周数据和本系统微博,评论,海螺等全部数据可视化处理。用户管理首页:所有的用户按照编号排序显示在该界面上,电子邮件地址,昵称,用户状态等属性一览无余。由于本系统用户数量庞大,为了方便管理员查找,故增加了分页功能,一列可以放下十条数据,也是因为用户数庞大,搜索功能在用户管理页面也被添加进来了。在搜索框中输入关键字,该关键字必须是你要搜索的用户的用户名包含的关键字,即可找到所有用户名中包含该关键字的用户,并且搜索出来用户名和关键字相应匹配的部分会标红显示。用户封禁:如果这名用户在微博里言行举止不恰当,那管理员就可以首先利用查找功能找到该用户,然后在其用户的最后一个选项点击“封禁”以封禁该用户。还可以输入让该用户封禁的天数,这样,用户将无法在该日期结束提前正常登录到本微博系统,在封禁该用户后,管理员也可以提前解封已经被管理员封禁的用户。微博管理首页:微博管理界面被点击,页面将变成微博管理首页,可以清晰地看到以微博的发布时间信息进行倒序显示,管理员可以系统提供的善用搜索功能,以违规词为关键词在全部的微博内进行全局搜索,搜出来以便将他们全部删除,管理员不仅能删除微博也可以恢复被自己误删的微博。微博查找:管理员输入指定字目,所有微博内含有指定字目的微博将会以指定字目被标红的样子进行展示。海螺管理首页:海螺管理被管理员点击后将会转为海螺管理界面。该页面包含了所有的海螺问题信息,也有一个可以提供搜索海螺问题功能的搜索框。所包含的海螺发布时的编号,海螺问题提问者的用户名,海螺问题的具体内容等被包含在海螺信息里。海螺搜索:在海螺管理主页中,和微博管理一样,由于数量可能会非常庞大,所以也在这里做了搜索功能,方便管理员查找,在上方搜索框中输入管理员想查找的关键字以搜索海螺问题,并显示搜索结果。搜索关键字将会以红色高亮显示以便于查看。(三)数据库设计1.概述微博系统数据库表主要包括:用户表:用来保存当前系统用户的个人资料,例如用户编号等信息,以用户编号作为主键,如图表1。微博关注表:用来保存用户的关注用户信息,以关注的用户编号作为主键,如图表2。微博表:用来保存微博信息,例如微博编号,微博内容,微博点赞数等,以微博编号作为主键,如图表3。评论表:保存微博的评论消息,例如评论人编号、评论日期、评论内容等,以评论编号作为主键,如图表4。点赞表:用来保存微博的点赞信息,主要包括点赞编号等信息。以点赞编号作为主键,如图表5。转发表:用来保存用户转发的信息,主要有转发编号、微博编号等信息,以转发编号作为主键,如图表6。2.概念设计一个微博使用者可以发送数条不一样的微博,但是一个不一样的微博一定对应着一个用户,很明显微博表与用户表存在多对一的逻辑关系,如图10。图10用户表微博表对应关系一条博文可以进行很多交互,例如评论等,所以微博表与评论表之间是一对多的关系,与点赞表,转发表同理,在此不赘述,如图11。图11微博表与微博状态各表对应关系一个微博用户可以提出多条问题,每条问题可以获得多人多条的解答。所以用户表、海螺表、回复表之前存在相应对应关系,见图12。图12用户表与海螺表及其对应回复表对应关系3.数据库表3.1用户表:数据库表名YONGHU_BIAO。表1用户表3.2关注表:数据库表GUANZHU_BIAO。表2关注表3.3微博表:数据库表名WEIBO_TAB。表3微博表3.4评论表:数据库表名PINGLUN_BIAO。表4评论表3.5点赞表:数据库表名DIANZAN_BIAO。表5点赞表3.6转发表:数据库表名ZHUANFA_BIAO。表6转发表四、部分系统功能实现(一)登录系统当用户输入电子邮件时,通过一种非同步传输页面的Ajax技术在用户将文本框中输入的电子邮件传递到后台控制处。后台将会和数据库保持通信以检查用户的邮箱是不是第一次注册。如果数据库回传数据说该邮箱已经注册过了,前段网页会提示用户说这个邮箱已经注册过了,如果用户没有忘记自己的登录密码就可以直接登录,输入基本信息后点击注册的用户在浏览器中输入注册信息。注册信息通过用户端的浏览器向内传送注册请求给到控制器层,利用控制器进行控制请求,并将组装好的用户注册信息传递给服务层,服务层将会接手控制器层传递过来的用户基本信息并为其创建新用户,设置默认的头像等操作,合成一个新用户数据核心完成后,由数据访问层利用写好的方法将当前新用户的信息向数据库当中进行写入与持久化保存等操作,核心代码如图13所示:图13注册功能控制器层核心代码(二)信息系统(用户)用户基本信息的修改:如图所示,当用户修改信息,用户将提交form,控制器端会接收到从浏览器端带着用户基本信息的请求。form中的数据将被重新组合成一个新的用户对象,这个组装完成的对象将参数传递给服务层中的对应方法中进行进一步处理。利用数据持久层的相关通信规则来修改提出修改信息的用户的基本信息。并在此时登录用户的会话中修改用户对象信息。核心代码如下图14所示。图14修改用户基本信息核心代码修改密码:单击用户个人资料页面上的修改密码,它将跳至修改密码页面,如图所示。为了验证是否是该用户实际拥有者在进行操作,所以需要验证本账户的旧密码,利用非同步请求的ajax带着用户的密码数据传递给控制器层,后台控制器接收该请求并将其向数据库发送查询请求,数据库判断当前密码是正确还是错误与否,旧密码如果验证失败将提示失败并无法修改,则会通过js代码在网页上局部刷新显示,用户能否输入新密码取决于旧密码是否通过验证,输入密码和再次输入密码后即可点击确认新密码前台浏览器将会给控制器端发送一个带着新密码的表单,由控制器层传递给服务层作处理,服务器层利用对应方法让数据持久层去和数据库作处理,同
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026时尚产业品牌管理行业市场现状供需分析及投资评估规划分析研究报告
- 2026人工智能行业市场需求分析投资评估布局咨询规划方案
- MPLS测试题与答案分享
- 2026中国印刷数码影像行业市场现状供需分析及投资评估规划分析研究报告
- 早期痴呆判断试题与答案
- 淮安卫校单独招生试题与答案全解
- 2026中国智能机器人林业应用市场竞争供需分析及投资森林保护规划探讨报告
- 2026中国鞋类制造业市场现状供需分析及投资评估规划分析研究报告
- 2026湿巾生产制造行业技术创新及市场竞争发展策略深度分析
- 2026人工智能客服系统优化方案研究市场开发方案
- 2026年医保经办管护综合岗事业单位招聘考试笔试试题(含答案)
- 2026年新上岗护士测试题及答案
- 沪粤版八年级物理上册期末考试卷及答案解析(100分版)
- 2025四川九洲电器集团有限责任公司招聘光电系统总体工程师(校招)等岗位测试笔试历年参考题库附带答案详解
- 2025江苏南京栖霞区中考一模数学试卷及答案
- 广西卫生职业技术学院招聘考试真题2025
- 《电气控制与S7-1200PLC应用》课件 第6章S7-1200 PLC程序块
- 2026镇江市护士招聘考试题及答案
- 钢结构更换构件施工工艺流程
- 2026年河南省安阳市重点学校初一新生入学分班考试试题及答案
- 医疗器械设计转换管理手册
评论
0/150
提交评论