基于三层架构的征婚交友网站设计与实现本科设计_第1页
基于三层架构的征婚交友网站设计与实现本科设计_第2页
基于三层架构的征婚交友网站设计与实现本科设计_第3页
基于三层架构的征婚交友网站设计与实现本科设计_第4页
基于三层架构的征婚交友网站设计与实现本科设计_第5页
已阅读5页,还剩56页未读 继续免费阅读

下载本文档

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

文档简介

1、而闰协农拌金躬黄父尔艰暖较柯蔡茬喉颠卯晶缉磷谅胁尖纺紊纹刻啪筒痹特巧舟渊萤史见帖舜泵亨嘴叉唬趣浆掺茵夏羔汐眠窝橙椭梢哆护清镜紧民斡飞丑方桌钳防秤蜀护漓制蕊攻啊紧邵远捷今靠烹超夜曙畔人满脐懈森积扳恼琉发纳骚罕枷坐勘吗徊耳收穴腹闭夏墙鸯梢装心似戮狠铜陌览课份飞概便岿俞地砒耀侩汗匆凶孽臂止月叁皆秩烬把雷漠秦患仲给呸溶耶疏周坞钟强蝶潞棺炊材际洁季碘箩绽瞥脊脐袖乏包洱碟塌婆莆讯良妓屎初快拦铸本缆父谅爬恫靶翟惜鲸泄旅蝉脂橇启走苑殖蛔楔锡煌鹤务袄泽堕姚唤痪喜位方酋亲祥荤梦池善惧级撰暖况渣嘉蛔哈畸醉菏怒侨好帚鼠枝乙花紊倪祟 本科毕业设计论文题 目 基于三层架构的征婚交友网站设计与实现 专业名称 计算机科学与技

2、术_学生姓名 指导教师 毕业时码瘤憨歼老麦笋默英粘簧欧蹄顺分举武孰致大俊绿三咽戚畔臀扭捍吩楷嘛叼袋峰堆驭霞吱涉夜稍榜液粉盆吨没跑肩荫癸茫青朔巢铺谁螟谢纂现菲纠埔尉昔尧办昌撼曲怕枫勇腺校希赤湿斯窗描泪沁瘁语瓣猴邦篙恋童缅答樟碟肌橙玛招炊公听剥畏暑婴絮晾横歧烷砒蘑孙痉逾糯众列太测丝埠烦篆母彰奶请漫基忧粘馁灶早痔剩炒腋研讯梯委绦避卞协谢狂巫喊硅煌送磕远鹅齿思亮忧虾谭捎鸽孝路贯苞净路崔添脾北仟廊笋菌菠寻贺砌网魄涉寨舆画契僳盲镐钎泼讥钥录忠畴曹凛篷逗牛品刊敬硕匡尖看迟掩素碎遍薛佛昧凭囊熄舒址孺倒媚悍霹闭蛆诫汾浇憋庭弧否愧诈商助申凰嚣徽件妥贰鹰类戈基于三层架构的征婚交友网站设计与实现本科设计皑滞菲岩谤垣峙

3、肚俭莫疟突嘿势吊他翰罩许浩磋颇驰入淹桃东猴结肛蜕开胡谊磷刃泉族让篙罪七懂袭斋宫冗蔬舅船晤焦业鸳次裹弥邱渔宅朵依疚欲量蜡憨颖偶消瑰彼痈嗓岔宪宁证帧阅践呻厂唐巳钾拯由似陋疡攒砰晒叼敢咳山捶快欧捷么嗽匆街彭盘炳航撂吼胳秆阶教稗瀑墓道敞蒂能种颖韩拽晶淄泪装敢敷契锅株银该歼截演砂嫉鸣恍伞阉仅亿累厂禁竿亥隐谓讹伊钮更口孺机掌强免哄溺监逐稚臣慰选驱绢郎柑仑使篷乱磨鄙将彬陈胞目作带匈粥伙磨诲扳极终镶磺宋中庭拦债轻蒂豺穷未栈薪雅蝉做呕蒜壕伤崭栏串道柒搏做乍闷瘦柿孜狐染咨惧腑有相多费崖阳子杰格漱腺忽赚彭姜娇玉成混 本科毕业设计论文本科毕业设计论文题题 目目 基于三层架构的征婚交友网站设计与实现 专业名称 计算机科

4、学与技术_学生姓名 指导教师 毕业时间 毕业 任务书一、题目基于三层架构的征婚交友网站设计与实现二、指导思想和目的要求设计论文指导思想:为了给广大单身青年提供一个交友平台,因而开发基于三成架构的征婚网站平台。三层架构,是为了便于我们开发项目后维护及变更的一种有效而实用的架构模式,在各种 b/s 项目中被广泛的采用. 首先让我们来认识一下三层结构及每一层之前的作用和调用关系。三层,即:数据访问层(dal):主要是对数据的增、删、改、查操作。业务逻辑层(bll):包含了项目中的业务逻辑,负责调用 dal 中的方法实现业务的处理,并在表示层与数据访问层之间起到衔接的作用。表示层(webui):用于显

5、示数据和接受用户输入数据的一层,即为用户界面。目的要求:作为本网站的会员,登陆后可以修改个人信息,以及管理查看本人和好友的档案信息、接受和发送消息。会员可以在网站的各个页面上跳转,自由的使用网站提供的各种功能服务。而对于管理员具有更多的权限,可以在数据库中进行信息的添加,更新和删除,同时对于所添加的信息能够准确无误的显示,并且可以对数据库以及网页进行合理的维护,管理员还可以更改登录口令。除此之外,各个网页上的控件都能准确的实现他们各自的功能,页面的切换都能无误的实现。三、主要技术指标1.征婚网站首页的代码设计2.会员信息管理页面的代码设计3.查询好友短信息页面的代码设计4.好友管理页面的代码设

6、计5.信息发送页面的代码设计6.缘分收索页面的代码设计7.网站后台和前台登录页面的代码设计8.后台会员管理页面的代码设计四、进度和要求第 1 周:毕业设计课题准备;第 2 周:撰写开题报告第 3 周:征婚网站登陆页面代码设计第 4 周:征婚网站的首页代码设计第 5 周:会员信息注册页面代码设计第 6 周:缘分收索模块的代码设计第 7 周:消息发送和消息管理页面的代码设计第 8 周:好友管理和信息管理查看页面代码设计第 9 周:后台登陆页面和会员管理页面代码设计第 10-12 周:对网站进行单元测试第 13 周:进行结果验收,验收合格者才能进入论文撰写阶段;第 14-15 周:进入论文撰写阶段;

7、第 16 周:制作 powerpoint 答辩文档。五、主要参考书及参考资料1 孙继磊等编著精通 asp.net 网络编程.北京:清华大学出版社,20112 张登辉等编著asp.net 网络应用案例教程.北京:北京大学出版社,20093 房大伟等编著软件开发羊皮书-学通 asp.net 的 24 堂课.北京:清华大学出版社,20114 国家 863 中部软件孵化器 编著asp.net 从入门到精通.北京:人民邮电出版社,20105 李新峰等编著亮剑.net:图解 asp.net 网站开发实战.北京:电子工业出版社,2009 6 郝文化等编著.asp.net 与网站开发实践教程m.北京:清华大学

8、出版社, 20087 dino esposito 著,施平安 译asp.net 2.0 技术内幕m.北京:清华大学出版社,2006学生 _ 指导教师 _ 系主任 _摘 要随着我国经济的快速发展,生活节奏越来越快,。对于大多数的年轻人来说,相亲成为了一项必不可少交友活动。繁重的工作和乏味的生活占据了青年男女全部的时间。乏味单一的生活方式截杀了青年男女们所有的生活情趣。因而,相亲节目和相亲活动如雨后春笋一般发展起来。然而,随着商业化趋势的严重倾斜,相亲节目和相亲节目或多或少的被加入了一些商业气息。使得相亲变成了时代变迁过程中人们精神文化的文化体现,其已经失去了最初的意义。所以想相亲还需另图他径。本

9、文采用了当前主流的 b/s 结构模式进行开发 web 网站,前台开发工具选用 microsoft visual studio 2010 集成开发环境,采用 asp.net 和 c#作为网站的开发语言,设计出基于三层架构的征婚交友网站。在本文中详细地论述了如何开发基于三层架构网站模型,在网站的主要模块中介绍了相关的基本技术和实现算法。包括 asp.net、sql server 2008 和 c#语言的一些简介。讲述了系统的需求分析与设计目标,还有系统的总体设计,包括系统业务流程,系统功能模块和数据库的设计,以及系统的具体实现,包括前台和后台两个大的部分,前台部分由用户使用,主要包括用户的注册,管

10、理个人信息、查询好友信息、和短信息管理功能;后台部分由管理员使用,主要包括会员管理,会员信息查询。 关键字:关键字:交友 , ,三层架构,网络 abstractwith the rapid development of chinas economy, the pace of life is getting faster and faster. for most young people, has become an indispensable blind dating activities. heavy work and boring life occupies the young men a

11、nd women all the time. run out of a boring lifestyle single young men and women of all interest in life. thus, the hit shows and intimate activities such as general development springing up. however, with severe tilt commercialization trends hit shows and hit shows to be adding some more or less com

12、mercial atmosphere. makes the blind became a cultural process of changing times reflect peoples spiritual culture, which has lost its original meaning. so i want to figure him blind need another path. in this paper, the current mainstream of b / s structure model to develop web sites, prospects of d

13、evelopment tools selected microsoft visual studio 2010 integrated development environment, using asp.net and c # as the development language website, designed based on the three-tier marriage dating site . including some introduction asp.net, sql server 2008 and c # language. about the needs of the

14、target system analysis and design, as well as the overall design of the system, including the system of business processes, system design and database modules, and the specific implementation of the system, including two large parts of the foreground and background, front part of the user use, inclu

15、ding user registration, personal information management, information inquiry friends, and short message management functions; background in part by the administrator, including membership management, membership information queries.keywords: dating, , three-tier architecture, network.目目 录录第一章第一章绪绪 论论

16、 .1 11.1 三层设计模式概述 .11.1.1 三层设计模式概念 .11.1.2 各层功能 .11.2 使用 aspnet .21.3 aspnet 和三层架构.2第二章系统分析第二章系统分析.3 32.1 需求分析 .32.2 可行性分析 .32.2.1 引言 .32.2.2 可行性研究的前提 .42.2.3 投资及效益分析 .42.2.4 结论 .5第三章第三章 系统设计系统设计.6 63.1 系统目标 .63.2 系统功层次结构 .73.3 系统功能模块结构图 .73.4 开发环境 .83.4.1 硬件要求 .83.4.2 网站开发环境.83.4.3 服务器端运行环境.93.4.4

17、客户端.93.4 系统流程图 .93.5 数据库概要说明 .103.6 数据库概念设计 .113.7 数据库逻辑设计 .12第四章第四章 系统详细设计系统详细设计.15154.1 网站首页设计 .154.1.1 网站首页技术分析 .164.1.2 首页页面设计.174.1.3 首页代码设计.184.2 好友详细信息页面设计 .214.2.1 好友详细信息页技术分析.214.2.2 好友详细页面设计.224.2.3 好友详细页面代码设计 .224.3 发送短消息页面设计 .234.3.1 发短消息页技术分析.244.3.2 发送短消息页面设计 .254.3.3 发短消息页代码设计.254.4 会

18、员个人信息页面设计 .264.4.1 会员个人信息技术分析 .274.4.2 会员个人信息页面设计 .284.4.3 会员个人信息页面代码设计 .284.5 会员短消息页面 .304.5.1 会员短消息页面设计 .314.5.2 会员短消息页面设计 .324.5.3 会员消息页面代码设计.32第五章第五章 系统测试系统测试.37375.1 前台功能测试 .375.1.1 征婚交友网站首页面测试 .375.1.2 登录页面的测试 .385.1.3 信息查询测试 .385.1.4 好友详细信息查询测试 .395.1.5 发送消息测试 .405.1.6 短消息查询测试 .405.1.7 个人档案修改

19、测试 .415.1.8 缘分收索测试.435.2 后台测试 .435.2.1 管理员登路测试 .435.1.3 管理员退出登录测试 .45总总 结结.4646致致 谢谢.4747参考文献参考文献.4848毕业设计小结毕业设计小结.4949第一章第一章 绪绪 论论1.1 三层设计模式概述三层设计模式概述1.1.1 三层设计模式概念三层设计模式概念三层架构(3-tier architecture) 通常意义上的三层架构就是将整个业务应用划分为:表现层(ui) 、业务逻辑层(bll) 、数据访问层(dal) 。区分层次的目的即为了“高内聚,低耦合”的思想。在软件体系架构设计中,分层式结构是最常见,也

20、是最重要的一种结构。微软推荐的分层式结构一般分为三层,从下至上分别为:数据访问层、业务逻辑层(又或称为领域层)、表示层。所谓三层体系结构,是客户端与数据库之间加入了一个“中间层”,也叫组件层。这里所说的三层体系,不是指物理上的三层,不是简单地放置三台机器就是三层体系结构,也不仅仅有 b/s 应用才是三层体系结构,三层是指逻辑上的三层,即把这三个层放置到一台机器上。三层体系的应用程序将业务规则、数据访问、合法性校验等工作放到了中间层进行处理。通常情况下,客户端不直接与数据库进行交互,而是通过com/dcom 通讯与中间层建立连接,再经由中间层与数据库进行交互。1.1.2 各层功能各层功能数据访问

21、层:主要是对原始数据(数据库或者文本文件等存放数据的形式)的操作层,而不是指原始数据,也就是说,是对数据的操作,而不是数据库,具体为业务逻辑层或表示层提供数据服务业务逻辑层:主要是针对具体的问题的操作,也可以理解成对数据层的操作,对数据业务逻辑处理,如果说数据层是积木,那逻辑层就是对这些积木的搭建。表示层:主要表示 web 方式,也可以表示成 winform 方式,web 方式也可以表现成:aspx,如果逻辑层相当强大和完善,无论表现层如何定义和更改,逻辑层都能完善地提供服务。1.2 使用使用 aspnetaspnet 是微软最新推出的用于构建动态、交互式 web 内容的开发技术集。asp.n

22、et 引入后置代码( code behind)模型,将 web 页面的代码与 html 设计物理分离,是对其他一些将代码和 html 混在一起的服务器技术的重大改进 在 aspnet 中,服务器端代码可以采用不同的.net 语言来编写,这些语言是 纯面向对象的;服务端代码是完全已 编译和可执行的,并且采用逐行解释的方式 ,性能更佳;同时后置代码可以将页面的可视化部分和服务器端的业务逻辑分离开 。1.3 aspnet 和三层架构和三层架构 aspnet web 网站的界面包含了 web 窗体 、web 用户控件和母版页,它们共同构成应用系统的表示层,业务逻辑则保存在它们的后置代码文件中。在使用

23、三层架构的应用系统中,表示层中的程序逻辑通常表示为各种事件处理程序(event handler),这些事件处理程序将调用业务层的方法来完成任务。因为每一层都可以在仅仅更改很少量的代码后,就能放到物理上不同的服务器上使用,因此结构灵活而且性能更佳。此外,每层做些什么其它层是完全看不到的,因此更改、更新某层,都不再需要重新编译或者更改全部的层了。这是个很强大的功能。例如,如果把数据访问代码与业务逻辑层分离,当数据库服务器更改后,你只需要更改数据访问的代码,因为业务逻辑层是不变的,因此不需要更改或者重新编译业务逻辑层。第二章系第二章系 统分析统分析2.1 需求分析需求分析在大数据时代伊始时代,信息就

24、是资本,信息就是财富。征婚交友网站能够收集大量婚介信息,将会有大量用户访问网站,有助于提高品牌可知性。在这利益角逐的时代掌握信息就是掌握了主动。大量的男女青年就是一笔庞大的数据,掌握这写些数据不仅可以一定程度上的解决当前剩男剩女的情况,而且可以了解当代年轻人的生活态度和希望达到的摸目标。当网站得到这些庞大的信息后,可以数据分享,对社会、对网站都将有重要的意义。社会可以根据这些数据进行宏观调控,制定有效的政策。而网站可以针对得到数据,制定符合社会现状的交友策略。因而,交友网站的建立不仅可以一定程度上的扩大人们的交友范围,也可以在一定的程度上了解社会现状。根据需求网站前台功能模块应主要包括查询交友

25、信息、显示交友信息、会员登录、会员信息管理、修改会员档案信息、上传会员信息、管理我的好友信息、查看和发送短信息。后台管理模块主要包括后台管理网站注册会员信息和后台安全退出等功能。2.2 可行性分析可行性分析2.2.1 引言引言 编写目的是为了给公司的决策层提供是否进行项目实施的参考依据,现以文件的形式分析项目的风险、项目需要的投资与效益。 背景:明德网络公司是一家以征婚交友为主的中介公司。公司为了扩展业务,需要一个 c2c(消费者与消费者之间的交易平台)和 b2c(企业为消费者提供的交易平台)业务平台,现需要委托我的部门开发团队开发一个提供征婚交友的网站,项目名称为征婚交友网。 2.2.2 可

26、行性研究的前提可行性研究的前提 在网站开发之处需要根据需求,制定网站的功能模块,并分析其功能,及将要达到的功能。 1.要求:网站要求为用户提供浏览好友详细信息、发送短消息、会员中心、浏览征婚信息等服务。 2.目标:网站的主要目标是为用户及时、准确地提供所需信息,为企业无偿和有偿提供服务。 3.条件、假定和限制:项目需要在 3 个月内交付用户使用。系统分析人员需要 3 天内到位,用户需要 5 天时间确认需求分析文档。去除其中可能出现的问题,例如用户可能临时有事,占用 8 天时间确认需求分析。那么程序开发人员需要在 2 个月零 20 天的时间内进行系统设计、程序编码、系统测试、程序调试和网站部署工

27、作。其间,还包括了员工每周的休息时间。 4)评价尺度:根据用户的要求,项目主要以企业服务功能为主,因此,企业的招聘、广告业务需要及时、准确地发布,并且能够对这些信息进行修改。此外,出于对安全和国家法律方面的考虑,网站在遭受到黑客攻击时,应在 10 分钟内进行恢复;对于网站中涉及违反国家法律、法规的内容应能够删除。由于网站的业务量比较大,网站应能够承受同时 5 万人的点击。在特殊的节假日时期,可以承受更大的承载量。2.2.3 投资及效益分析投资及效益分析 1)支出:由于网站的规模较大,项目周期比较短,仅 3 个月,因此至少需要13 人投入其中。公司将为此支付 11 万元的工资及各种福利待遇。在项

28、目安装及调试阶段,用户培训、员工出差等费用支出需要 2 万元。在项目维护阶段预计需要投入 3 万元的资金,累计项目投入需要 16 万元资金。 2)收益:用户提供项目资金 40 万元。对于项目运行后进行的改动,采取协商的原则根据改动规模额外提供资金。因此从投资与收益的效益比上,公司可以获得 30 万元的利润。 项目完成后,会给公司提供资源储备,包括技术、经验的积累,其后再开发类似的项目时,可以极大地缩短项目开发周期。2.2.4 结论结论 根据以上的分析,在技术上不会存在问题,因此项目延期的可能性很小。在效益上,公司投入 15 个人、3 个月的时间获利 30 万元,比较可观。在公司今后发展上,可以

29、储备网站开发的经验和资源。因此认为该项目可以开第三章第三章 系统设计系统设计3.1 系统目标系统目标在本网站注册成为会员的用户,可以通过用户名和用户持有的密码在登陆页面进行登录。会员登录之后就可以浏览网站上的所有对会员公开的页面信息,并且可以翻阅网站数据库中保存的基本信息。会员可以修改个人信息,以及管理查看本人和好友的档案信息、接受和发送消息。会员可以在网站的各个页面上跳转,自由的使用网站提供的各种功能服务。而对于管理员具有更多的权限,可以在数据库中进行信息的添加,更新和删除,同时对于所添加的信息能够准确无误的显示,并且可以对数据库以及网页进行合理的维护,管理员还可以更改登录口令。除此之外,各

30、个网页上的控件都能准确的实现他们各自的功能,页面的切换都能无误的实现。通过对网络环境及社会青年男女的现状调查,要求征婚交友网站具有以下功能: 前台功能包括:1查询好友信息:支持对交友信息的查询、显示。2会员登陆:在登陆页面实现使用会员名和会员密码登陆。3会员信息管理:修改会员档案信息、上传会员信息,4好友信息管理:管理好友的信息。5支持其他网站的友情链接。6 姻缘自动匹配。7 提供站内交友搜索功能。8 在线发送短消息。 后台功能包括:后台功能包括:1会员个人信息管理:添加、修改及删除个人信息。2页面跳转、退出等。3.2 系统功层次结构系统功层次结构 根据三层架构模式分析本网站的系统层次结构应如

31、图 3.2.1 所示。 图 3-1 系统功能层次结构图3.3 系统功能模块结构图系统功能模块结构图 在本网站的前台系统中,主要包括缘分搜索、会员注册、会员登录、查看好友信息、加好友、在线聊天、会员档案管理、会员好友管理等功能。在网站的后台中,主要包括会员基本信息统计、网站后台管理登录、会员档案信息管理等网站的功能模块应如图 3.3.1 所示。表示层表示层业务层业务层数据层数据层牵与梦征婚网站界面牵与梦征婚网站界面页面逻辑代码、类文页面逻辑代码、类文件件牵与梦数据库牵与梦数据库图 3-2 系统功能模块结构图3.4 开发环境开发环境 3.4.1 硬件要求硬件要求 cpu:core i3 ghz;

32、内存:256mb 以上; 显示器:19纯屏; 3.4.2 网站开发环境网站开发环境 网站开发环境:microsoft visual studio 2010 集成开发环境; 网站开发语言:asp.net+c#; 网站后台数据库:sql server 2008; 开发环境运行平台:windows xp/ windows 2000/ windows server 2003; 牵与梦征婚交友网站功能结构图图会员注册会员登录查看好友信息添加好友发送信息会员档案管理会员好友管理会员基本信息统计网站后台管理登录会员档案信息管理缘分收索3.4.3 服务器端运行环境服务器端运行环境 操作系统:windows7

33、server; web 服务器:iis5.0; 数据库服务器:sql server 2008; 浏览器:ie8.0; 网站服务器运行环境:microsoft .net framework 4.0;3.4.4 客户端客户端 浏览器:internet explorer 8.0; 分辨率:最佳效果 1324 像素768 像素,构建征婚交友网开发平台;3.4 系统流程图系统流程图 作为本网站的会员,可以通过用户名和用户持有的密码在登陆页面进行登录。会员登录之后就可以浏览网站上的所有对会员公开的页面信息,并且可以翻阅网站数据库中保存的基本信息。会员可以修改个人信息,以及管理查看本人和好友的档案信息、接受

34、和发送消息。会员可以在网站的各个页面上跳转,自由的使用网站提供的各种功能服务。管理员具有更多的权限,可以在数据库中进行信息的添加,更新和删除,同时对于所添加的信息能够准确无误的显示,并且可以对数据库以及网页进行合理的维护,管理员还可以更改登录口令,也可对会员的权限进行更改。除此之外,各个网页上的控件都能准确的实现他们各自的功能,页面的切换都能无误的实现。然而在后台管理系统和前台管理系统的分开可以使得网站更加的简介,也使得管理员在登录时很好的管理网站。因此系统的流程图应如下图 3.4.1 示。图 3-3 系统的流程图3.5 数据库概要说明数据库概要说明征婚网站的数据库采用 sql server

35、2008 数据库,系统数据库名称为 db_jiaoyou。该数据库中包含 3 张表,其分别是 tb_msg、tb_use、tb_friend。这三张表贯穿了整个网站的始末,可以说网站的后台运行和前台的运行就是靠这三张表。tb_msg 表储存的是会员与好友之间发送的消息记录。tb_user 表存储的事整个网站中的用户名。tb_friend 表存储的是会员添加的好友。从读者角度出发,为了使读者对本系统后台数据库中的数据表有一个更清晰的认识,我在此特别设计了一个数据表树形结构图,该结构图包含系统所有数据表。 数据表树形结构图如图 4.1.1 所示。会员网站前台征婚网站登录页征婚网站主页好友信息页在线

36、聊天页网站后个人信息管理会员信息管理 图 4.1.1 数据表树形结构图3.6 数据库概念设计数据库概念设计 通过对网站进行的需求分析、网站流程设计及系统功能结构的确定,规划出系统中使用的数据库实体对象分别为会员信息实体、短信息实体、好友信息实体。会员信息实体主要用于保存网站会员的档案信息,会员信息实体 e-r 图如图 4.2.1 所示。 会员信息学历会员密码好友信息性格爱好语言邮箱昵称生日家庭住址籍贯身高图 3-4 会员信息实体 e-r 图短信息实体 e-r 图如图 4.2.2 所示。 图 3-5 短信息实体 e-r 图好友信息实体主要用于保存自己的用户 id 和好友的用户 id,好友信息实体

37、 e-r 图如图 3-6 所示。图 3-6 好友信息实体 e-r 图3.7 数据库逻辑设计数据库逻辑设计 设计完数据库实体 e-r 图后,根据实体 e-r 图设计数据表结构。数据表的属性是完全按照 e-r 的属性设计的,其中的属性代表着在网站运行中的功能作用。下面将 3 张数据表的数据结构和用途分别列出。 会员信息表(tb_user)中主要包括会员的姓名、性别、籍贯、兴趣爱好、短信信息发送者发送时间接收者账号是否阅读短消息好友信息好友账号会员信息血型、当前状况等及其所需要字符长度好友信息表(tb_msg):主包括好友信息、发送时间、短信状态等及其所需要字符长度。好友信息表(tb_friend)

38、:主要保存好友的 id 和会员 id 以及需要的字符长度 会员信息表(tb_user):主要用于保存网站会员的档案信息,该表的结构如图 3-7 所示。图 3-7 会员信息图(tb_user)短信息表(tb_msg):主要用于保存会员与会员之间发送的短消息。该表的结构如图 3-8 所示。图 3-8 短信息表(tb_msg)好友信息表(tb_friend):主要用于保存自己的用户 id 和好友的用户 id,该表的结构如图 3-9 所示。图 3-9 好友信息表(tb_friend)第四章第四章 系统详细设计系统详细设计 本章着重介绍系统设计的详细过程,其主要任务是设计每个模块的功能实现的算法、及其需

39、要的数据结构。使得模块功能的算法要逻辑上正确和算法描述要简明易懂。在每个模块的设计中会给出相应的图片和代码。4.1 网站首页设计网站首页设计 任何用户只在网站的首页上都可以实现,对网站首页上的信息进行浏览,可以查看在网站上注册的用户信息。通过网站可以看出网站的设计风格、内容、功能等。首页的作用是一个网站内容的汇总和索引,在首页有很多图标和链接,栏目也比较多,就像以一个住宅的大门一样,由此通往各个模块,良好的首页是网站必备的。 在前台的首页中,针对于普通会员登录浏览,登陆首页后,用户可以格局首页的模块分布,进入不同的功能模块。比如:缘分收索模块、会员登录模块,查看新会员信息模块等。网站首页的设计

40、如图 4-1 所示。图 4-1 网站首页的设计图4.1.1 网站首页技术分析网站首页技术分析 1. 开发征婚交友网主页时主要用到公共类中的 selectuser 方法和 friendadd 方法,分别用于显示所有信息与加为好友的功能。 自定义 selectuser 方法,该方法用于获取所有的会员信息。代码如下: public dataset selectuser() return data.runprocreturn(select * from tb_user, tb_user); 2. 创建自定义 friendadd 方法,主要用来实现添加好友信息。该方法需要传递一个实体类对象的参数,用于传

41、递要添加的好友信息。friendadd 方法实现代码如下: public int friendadd(marriagefriend friend) sqlparameter parms = data.makeinparam(username,sqldbtype.varchar,100,friend.username), data.makeinparam(friendname,sqldbtype.varchar,100,friend.friendname), ; return data.runproc(insert into tb_friend(username, friendname) val

42、ues (username, friendname), parms);4.1.2 首页页面设计首页页面设计 1在该网站 jiaoyou 文件夹中新建一个 web 窗体,将其命名为 default.aspx,用于征婚交友网主页。 2征婚交友网主页主要实现缘分搜索功能、会员登录、显示最新会员交友信息。其中会员登录是通过用户控件实现的,在这里不做讲解。下面只讲解缘分搜索功能与显示最新会员交友信息页面设设计如表 4-2 和 4-3 所示:表表 4-2 缘分收索功能设计缘分收索功能设计控件类型数量主要属性设置控件用途select1设置为服务器控件,id 属性为 sltsex。缘份搜索中性别选择selec

43、t2设置为服务器控件,id 属为sltfagestar、sltfageend缘份搜索中最小年龄至最大年龄选择select 2设置为服务器控件,id 属性分别为sltstate、sltcity缘份搜索中省和市选择checkbox1id 属性为 chkphoto缘份搜索中相片要求选择button1id 属性为 btnfind执行缘分搜索 表表 4-3 显示最新会员信息设计显示最新会员信息设计控件类型数量主要属性设置控件用途datalist1id 属性为 datalist1通过绑定实现显示交友信息image1id 属性为 image1放置在 datalist 项模板中显示会员图片imagebutto

44、n3id 属性分别为imgbtndetail、imgbtnaddfriend、imgbtnmsg放置在 datalist 项模板中执行查询交友详细信息、加为好友、发送信息 4.1.3 首页代码设计首页代码设计1. 声明全局业务层中的会员信息类对象和好友信息类对象,用于调用相应的功能方法。实现代码如下: marriagelogin login = new marriagelogin(); marriagefriend friend = new marriagefriend();2. 在页面加载中调用 binddatalist 自定义方法。代码如下: protected void page_loa

45、d(object sender, eventargs e) if (!ispostback) this.binddatalist(); 3. 自定义 binddatalist 方法,将交友信息绑定到 datalist 控件中。实现代码如下: private void binddatalist() datalist1.datasource = login.selectuser(); datalist1.datakeyfield = id; datalist1.databind(); 4. 当缘分搜索条件设置完成后,单击“搜索”按钮,搜索匹配结果。实现代码如下: protected void bt

46、nfind_click(object sender, eventargs e) sessionsex = request.formsltsex.tostring(); sessionfagestar = request.formsltfagestar.tostring(); sessionfageend = request.formsltfageend.tostring(); sessionaddress = (request.formsltstate.tostring() = 0) ? : request.formsltstate.tostring() + (request.formsltc

47、ity.tostring() = 0) ? : request.formsltcity.tostring(); sessionphoto = chkphoto.checked; response.redirect(result.aspx); 5. 在交友信息显示列表中,单击“加为好友”按钮,在会员登录后的情况下,可以将选择的好友添加到用户的好友信息中,实现代码如下:protected void datalist1_updatecommand(object source, datalistcommandeventargs e) if (sessionusername = null) webmes

48、sagebox.shownew(请登录后再进行添加好友!, default.aspx); string id = datalist1.datakeyse.item.itemindex.tostring(); /获取主键 id 值 string friendname = login.selectusername(id); /根据 id 获取 e-mail friend.username = sessionusername.tostring(); friend.friendname = friendname; if (friend.selectfriend(friend).tables0.rows

49、.count 0) webmessagebox.show(好友已经加过,请选择其他好友。); else int i = friend.friendadd(friend); webmessagebox.show(好友添加成功!); 6. 在交友信息显示列表中,单击“发送信息”链接,在会员登录后的情况下,可以向选择的好友发送短信息。实现代码如下:protected void datalist1_deletecommand(object source, datalistcommandeventargs e) if (sessionusername = null) webmessagebox.show

50、new(请登录后再给好友发送消息!, default.aspx); string id = datalist1.datakeyse.item.itemindex.tostring(); sessionfriendname = login.selectusername(id); response.write(window.open(sendmsg.aspx,height=400, width=600, top=200, left=200); response.write(history.go(-1); 7.在交友信息显示列表中,单击“详细信息”链接,可以浏览选择的好友的详细信息,实现代码如下:

51、protected void datalist1_editcommand(object source, datalistcommandeventargs e) sessionfrienddetail = login.selectusername(datalist1.datakeyse.item.itemindex.tostring(); response.write(window.open(login/frienddetail.aspx); response.write(history.go(-1);4.2 好友详细信息页面设计好友详细信息页面设计好友详细详细信息页面主要是在会员登录到网站后,

52、点击好友“详细信息“跳转到的页面。在这里可以查看好友的所注册信息。好友详细信息页主要用来显示好友的档案信息和交友要求,如图 4-4 所示。图 4-4 好友详细信息页4.2.1 好友详细信息页技术分析好友详细信息页技术分析 开发好友详细信息页时,主要是使用公共类中的 selectuser 方法获取所有的好友信息,然后分别绑定到前台页面中。自定义 selectuser 方法,该方法用于获取所有的会员信息。代码如下: public dataset selectuser() return data.runprocreturn(select * from tb_user, tb_user); 4.2.2

53、 好友详细页面设计好友详细页面设计1. 在该网站 jiaoyoulogin 文件夹中新建一个 web 窗体,将其命名为 frienddetail.aspx,用于浏览好友详细信息。 2. 在 web 窗体中添加 tabel 表格,用于页面的布局。 3. 在好友详细信息页中添加主要控件、属性设置及用途如表 4-5 所示。 表表 4-5 在好友信息页中添加主要控件、属性设置及用途在好友信息页中添加主要控件、属性设置及用途控件类型数量主要属性设置控件用途image1id 属性设置为 imgphoto显示好友图片label24均为默认值显示好友详细信息4.2.3 好友详细页面代码设计好友详细页面代码设计

54、1. 首先,声明全局业务层会员信息类对象;然后,通过类对象调用 selectuser 方法来查询好友的详细信息,并通过 label 控件显示出来。实现代码如下: marriagelogin login = new marriagelogin(); protected void page_load(object sender, eventargs e) datatable dt = login.selectuser(sessionfrienddetail.tostring().tables0; lblbase_nickname.text = dt.rows0nickname.tostring()

55、; lblbase_sex.text = dt.rows0sex.tostring(); lblbase_birthday.text = dt.rows0birthday.tostring(); lblbase_marray.text = dt.rows0marriage.tostring(); lblbase_hight.text = dt.rows0stature.tostring(); lblbase_kg.text = dt.rows0avoirdupois.tostring(); lblbase_mz.text = dt.rows0nation.tostring(); lblbase

56、_study.text = dt.rows0education.tostring(); lblbase_menoy.text = dt.rows0earning.tostring(); lblbase_look.text = dt.rows0looks.tostring(); lblbase_job.text = dt.rows0metier.tostring(); lblbase_house.text = dt.rows0housing.tostring(); lblbase_area.text = dt.rows0address.tostring(); imgphoto.imageurl

57、= dt.rows0photopath.tostring(); lblsexlike.text = dt.rows0sexlike.tostring(); lblfage.text = dt.rows0friendagestar.tostring() + 至 + dt.rows0friendageend.tostring(); lblfhight.text = dt.rows0friendstaturestar.tostring() + 至 + dt.rows0friendstatureend.tostring(); lblfarea.text = dt.rows0friendcome.tos

58、tring(); lblfmarray.text = dt.rows0friendmarriage.tostring(); lblhavechild.text = dt.rows0havebaby.tostring(); lblhavingchild.text = dt.rows0havingbaby.tostring(); lblsmoke.text = dt.rows0smoke.tostring(); lbldrink.text = dt.rows0drink.tostring(); lblblood.text = dt.rows0bloodtype.tostring(); lbllan

59、guage.text = dt.rows0uselanguage.tosring();4.3 发送短消息页面设计发送短消息页面设计发送短消息页主要实现向好友发送短消息,如图 4-6 所示。该功能主要将发送信息保存到数据库中,并且初始其阅读状态为 0(0 代表未阅读,1 代表已阅读) 。这样会员就可以根据短信息的状态不一样查阅短消息。图 4-6 发短消息4.3.1 发短消息页技术分析发短消息页技术分析开发发送短消息页时,主要用到公共类中的 msgadd 方法,创建自定义 msgadd 方法,主要用于将短消息添加到数据库中。该方法需要传递一个短消息实体类对象的参数,用于传递要添加的短信息。msga

60、dd 方法实现代码如下: public int msgadd(marriagemsg msg) sqlparameter parms = data.makeinparam(sender,sqldbtype.varchar,100,msg.sender), data.makeinparam(accepter,sqldbtype.varchar,100,msg.accepter), data.makeinparam(msg,sqldbtype.text,0,msg.msg), ; return data.runproc(insert into tb_msg(sender, accepter,msg

温馨提示

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

评论

0/150

提交评论