论文设计-基于thinkphp的微博系统设计与实现内容摘要:
PHP 框架有以下特性: 1. 简单易用的 MVC 模式: 模型 ( M):模型的定义由 Model 类来完成。 Model类位于项目目录下面的 LibModel 目录。 控制器 ( C):应用控制器(核心控制器)和 Action 控制器都承担了控制器的角色,区别在于 Action 控制器完成业务过程,而应用控制器( App 类)负责调度控制。 Action 控制器位于项目目录下面的LibAction 目录。 视图 ( V):模板的实现是和框架无关的,做到了 100%分离,可以独立预览和制作。 模板目录位于项目目录下面的 Tpl 目录。 2. 编译机制: ThinkTemplate 是一个使用了 XML 标签库技术的编译型模板引擎,支持两种类型的模板标签,使用了动态编译和缓存技术,而且支持自定义标签库。 3. 模型自动验证和处理 : 系统内置了数据对象的自动验证功能,而大多数情况下面,数据对象是由表单提交的 $_POST 数据创建。 需要使用系统的自动验证功能,只需要在 Model 类里面定义 $_validate 属性,是由多个验证因子组成的数组,支持的验证因子格式:验证字段,验证规则,错误提示,验证条件,附加规则,验证时间。 4. 模板引擎:系统内建了一款卓越的基于 XML 的编译型模板引擎,支持 两种类型的模板标签,融合了 Smarty 和 JSP 标签库的思想,支持标签库扩展。 通4 过驱动还可以支持 Smarty、 EaseTemplate、 TemplateLite、 Smart 等第三方模板引擎。 5. AJAX 支持:内置 AJAX 数据返回方法,支持 JSON、 XML 和 EVAL 格式返回客户端,并且系统不绑定任何 AJAX 类库,可随意使用自己熟悉的 AJAX类库进行操作 [6]。 MVC 模式 简介 MVC 模式( ModelViewController,模型 — 视图 — 控制器模式)是 软件工程中的一种 软件架构 模式。 它把软件系统分为三个基本部分:模型( Model),视图( View)和控制器( Controller)。 MVC 的结构如图 21 所示: M o d e lV i e wC o n t r o l l e rN o t i f yU s e r A c t i o nU p d a t eU p d a t e 图 21 MVC 模型 说明: 模型( Model):模型包含了应用问题的核心数据、逻辑关系和计算功能,它封装了所需的数据,提供了完成问题处理的操作过程。 控制器依据 I/O 的需要调用这些操作过程。 模型还为视图获取显示数据而提供了访问其数据的操作。 模型为视图获取显示数据提供了访问其数据的操作。 为了实现这种机制,用于监视此模型的视图必须事先在此模型上注册,从而视图可以了解在数据模型上发生的改变。 视图( View): 视图部件把表示模型数据及逻辑关系和状 态的信息及特定形式展示给用户。 它从模型获得显示信息,对于相同的信息可以有多个不同的显示形式或视图。 视图通过显示的形式,把信息转达给用户。 不同视图通过不同的显示,来表达模型的数据和状态信息。 每个视图有一个更新操作,它可被变化 传播机制所激活。 当调用更新操作时,视图获得来自模型的数据值,并用它们来更新显示。 控制器( Controller):控制器 处理用户与软件的交互操作的,其职责是控制提供模型中任何变化的传播,确保用户界面于模型间的对应联系;它接受用户的输入,将输入反馈给模型,进而实现对模型的计算控制,是使模型 和视图协调工作的部件。 通常一个视图具有一个控制器。 5 3. 需求分析 用例分析 用户用例 用户用例图如 图 31 所示。 发表群组博文浏览群组列表评价博文浏览最新微博浏览话题列表浏览话题博文回复博文设置个人首页推荐自己查看系统推荐查看用户基本信息发表话题博文浏览群组博文浏览好友微博取消关注关注好友查找好友注册管理博文 in c l u d e in c l u d e 管理用户信息 in c l u d e in c l u d e 查看个人主页查看系统首页管理话题 in c l u d e in c l u d e in c l u d e 管理群组管理好友 in c l u d e in c l u d e 用户 in c l u d e in c l u d e in c l u d e in c l u d e in c l u d e in c l u d e in c l u d e in c l u d e in c l u d e 图 31 用户用例图 6 用例描述: 名称、标识符 关注 好友 功能 功能描述 关注 好友,获取好友最新博文动态 性能 当用户点击“ 关注他(她) ”按钮时响应时间 2s 输入 用户基本信息: 好友 ID 操作序列 1. 用户点击用户个人主页中的“ Follow”按钮; 2. 个人主页通过 AJAX请求服务器中 FollowAction中的 addFollow方法; 3. FollowAction 创建 FollowModel,装填并检验好友 ID,并调用FollowModel 中的 addFollow 方法,进行数据库更新操作; 4. 服务器将操作成功状态返回至个人主页; 5. 将个人主页“关注他(她)”更改为“取消关注” 限制条件 1. 必须连接数据库,否则会出现无法连接数据库错误 2. 必须为本站 已登录 用户 接口 点击用户头像 进入此页面 输出 返回 用户个人主页 名称、标识符 浏览个人主页功能 功能描述 已登录用户浏览 个人主页,包 括用户个人信息以及好友最新微博动态 性能 当用户 访问个人主页时等待页面时间 5s 输入 用户基本信息: 用户账号 操作序列 1. 登录认证成功或点击页首“首页”,请求个人主页模块。 2. 浏览器请求服务器中 IndexAction 中的 home 方法; 3. IndexAction 创建 UserModel,调用其中 getUserBaseInfo 方法获得用户基本信息,传至 view 中; 4. IndexAction 创建 BlogModel,调用其中 getFollowingBlogs 方法获得用户以及好友的最新微博动态,传至 view 中; 5. 视图将 数据装填至个人主页模板中并返回至浏览器 限制条件 1. 必须连接数据库,否则会出现无法连接数据库错误 2. 必须为本站 已登录 用户 接口 登陆认证成功,或界面“首页” 输出 返回 用户个人主页 名称、标识符 系统 推荐 功能描述 向用户推荐最热微博、最热话题、活跃用户和被 关注 用户排行 性能 当用户 访问推荐时等待页面时间 5s 输入 用户基本信息: 无 操作序列 1. 浏览器请求服务器中 PublicAction 中的 remend 方法; 2. PublicAction 创建 UserModel,调用其中 getActiveUsers 方法获得活跃用户基本信息,传至 view 中; 3. PublicAction 调用 UserModel 中 getTopFollowedUsers 方法获得最热被关注用户的基本信息,传至 view 中; 7 4. PublicAction 创建 BlogModel,调用其中 getHotBlogs 方法获得回复等排名最前的最热微博,传至 view 中; 5. PulicAction 创建 TopicModel,调用其中 getHotTopics 方法获得博文数最前的最热话题,传至 view 中; 6. 视图将数据装填至推荐模板中并返回至浏览器 限制条 件 1. 必须连接数据库,否则会出现无法连接数据库错误 接口 除登录和注册之外的所有界面右侧。 输出 返回 推荐部分 管理员用例 管理员用例图如 图 32 所示: 审核用户授与权限新增话题修改话题查看系统参数微博设置积分设置管理积分日志审核博文防灌水设置系统设置 in c l u d e in c l u d e in c l u d e in c l u d e 管理积分 in c l u d e in c l u d e 管理用户 in c l u d e in c l u d e 管理博文 in c l u d e 管理话题 in c l u d e in c l u d e 管理群组管理员 图 32 管理员 用例图 8 用例描述: 名称、标识符 微博设置功能 功能描述 管理员配置微博系统的相关信息,例如微博名称、关闭用户注册等。 性能 信息处理 时间 5s 输入 系统配置 信息 : 微博名称 、 微博域名 、 微博关键字 、 微博描述 、 关闭用户注 册 、 过滤关键词 、 禁止注册用户名 /主页名 、 网站备案号 、微博版权信息 等。 操作序列 1. 客户端请求服务器 SystemSetAction 的 getBlogSystemSet 方法; 1. SystemSetAction 创建 SystemProperty 对象,调getBlogSysProperties 获取微博设置数据,并传至 view 中。 2. 服务器将微博设置界面返回至客户端; 3. 管理员修改配置信息,并点击提交按钮,浏览器请SystemSetAction 中的 setBlogSysemSet 方法。 4. SystemSetAction 接受请求,创 建 SystemProperty 对象,对数据进行校验,并调用 saveBlogSysProperties 方法保存信息。 5. 服务器将操作成功状态返回至客户端 限制条件 1. 必须连接数据库,否则会出现无法连接数据库错误 2. 必须为本站 已登录管理员 接口 点击管理员 系统设置 中“微博设置”,或提交之后返回。 输出 返回 操作成功或失败信息 非功能 需求 1. 可用性 微博系统 应对所有使用用户提供及时的服务。 系统应保证对 24 小时运作的客服系统的服务 ,系统维护时间应计划在服务的最低峰时间。 2. 响应时间 进行数据查询时,当处于系统使用高峰期时应保证系统具有对 95%的数据交互查询 、更新提供 3 秒或更短响应时间的支持,当处于系统使用低峰期时应保证系统具有对 95%的数据交互查询 、更新提供 2 秒或更短响应时间的支持。 当进行数据添加、更新时,系统内部应提供对请求处理的来源及响应时间的监控机制。 系统响应时间因不同外部数据源和使用系统的通讯和接口情况而有所差异。 3. 可靠性 微博系统 不应在正常操作中丢失数据,当用户正在使用系统时 ,系统不应瘫痪,应对所有的使用人员提供每年 365 天 ,每天 24 小时 ,每天 3 班的系统监控支持 ,而每 月突发的宕机时间不超过 4 小时 。 4. 易于使用性 微博系统 应有操作 、故障排除手册来帮助系统管理人员来快速解决系统问题。 系统 、管理 /操作界面应易于使用 , 对操作人员的培训时间保持在较短的时间内。 5. 安全性 微博系统 中提供普通用户和管理员权限两项安全性身份验证。 其中,管理员9 可对普通用户进行授权操作,以便方便系统管理。 6. 备份和灾难的及时恢复 微博系统 应每天对所有运作相关的数据进行备份,以及备份的 微博系统 ,以防止运行系统瘫痪时能及时使用备份数据库重新提供系统的服务。 系统目标 本 文 是针对目前国内主 流微博产品所具备的主要特点和功能进行设计,具有对微博、话题、群组、好友等完整的 功能 , 应具备如下 特点: 1. 完备的系统功能 本系统 是一个功能完备的微博网站,可用于建站运行,也可在此基础上方便地进行二次开发。 2. 灵活的系统设置 系统管理员可以根据需要,对于系统灵活地进行各种配置,例如开闭用户注册、过渡关键词、系统名称等,方便建站。 3. 个性的个人管理 用户不仅可以设置昵称、性别、头像等基本信息,而且可以设置个人首页网址等个性化的信息。 根据本文应具备的特点,现提出 主要目标 如下: 1. 实现基础功能,便于二次开发。 任何一款互联网 产品都有特定应用领域,特定用户群体及其需求。 而本系统的定位于实现目前多数微博系统所具备的基本功能,并使其框架结构具备灵活、易用性、扩展性等特点,以便其它用户在此基础上针对具体应用进行二次开发。 2. 博文应具备多媒体形式,含文字、图片、表情等。 微博的主要特点之一在于其具有“平民化”的特点,因而博文需要承载丰富的内容。 这便要求对于博文的信息呈现具有多样的形式。 所以除了文字以外,还需要有图片等多媒体呈现形式,和表情、分享等为满足“娱乐化”的。论文设计-基于thinkphp的微博系统设计与实现
相关推荐
48 截面计算 48 第 9 章 基础设计 50 设计资料 50 基础梁配筋计算 50 翼板的承载力计算 56 边基础翼 板的承载力计算 56 中基础翼板的承载力计算 56 结 论 58 致 谢 59 参考文献 60 附 录 61 前言 1 前 言 毕业设计大学四年最后的实践性演练,对我们的综合素质和毕业后实际工作能力、适应社会能力的提高有着不可忽视的作用。 在毕业设计过程中
个 连 通 的肤 色 区 域 , 这 个 肤 色 区 域 也 就成 为 要 判 别 是 否 为 人 脸 的候 选区 域。 下 面 的 部 分 代 码 描述 了 该 算 法: LPBYTE lpDIBBits。 int lmageWidth,lmageHeight。 long wBytesPerLine。 LPSTR lpDIB = (LPSTR) ::GlobalLock((HGLOBAL)
冲砂器设计为丝扣螺纹连接 ,按照国内施工惯例 ,采 用公扣指向井内方式 ,使用时预先 连接在油管单根的母扣一侧 ,然后 ,整体吊接起来 ,再上扣下入井内。 将该装置接于油管上部 ,进行正冲砂时 ,水流正常通过。 冲完一根单根后 ,通过高压换向阀使冲砂液换向 ,从换向井口的侧孔进入油管内部 ,进行正洗井。 待接完单根后 ,再次通过高压换向阀改变冲砂液流向进行正冲砂。 重复上述过程
国产 ZQT2 35E 型张力机 设备构成 及价格 对比(表一) [2] [3] 项目 进口 FRB501 型张力机 国产 ZQT2 35E 型张力机 液压传动系统 主泵 CASAPPA(意大利产 ) 斜盘式双向变量柱塞泵( 德国力士乐 ) A4VG71HEET1/32R 马达 HMT SAMHYDRAULIC(意大利产 ) 双向定量柱塞马达( 德国力士乐 ) 2 A2FE56/61W 减速器
统驱动运行 的数据来源。 (7) 实时运行系统 利用 Windows 多线程机制,在多线程内完成事件管理,实时事务优先级分派,实时调度算法 (价值函数评估优先级 ),实时并发控制策略,历史数据缓冲转储以及主动机制等功。 MCGS 组态软件的系统构成 MCGS 软件系统包括组态环境和运行环境两个部分 ,如图 所示。 组态环境相当于一套完整的工具软件,帮助用户设计和构造自己的应用系统。
己所在的班级,才能够和班级成员进行交流或者进行班级留言。 [主事件流 ] 用户选择了一个班级,并选择“加入班级”按钮时,用例开始。 用户通过按“提交”按钮进行提交。 系统将 更新 数据库,用例结束。 [异常事件流 ] 若用户已经提交过请求,再一次进行提交请求,系统给出提示,用例结束。 [异常事件流 ] 用户可以在任何时候按“取消”取消一个事务,该用例结束。 ( 10) 脱离 班级用例描述: