论坛信息管理系统
发布时间:2011-12-20 09:24:58
发布时间:2011-12-20 09:24:58
为了方便信息的交流,在结合java和SQL2005技术之下开发了这个快捷、界面友好的交流系统。论坛使用java技术建设论坛的骨干框架,使用SQL2005制作系统的数据库,实现了一个功能相对齐全的论坛系统,网友可以自由的提出问题以及帮助他人解决问题,或者交流经验,共享资源。
该论坛功能较为齐全,在这里可以自由的发表自己的观点和对论坛的主题发表意见,网友还可以对他人的问题及时解决,获取对自己有用的知识、资源等。(当然:由于还没有掌握网页方面的知识,并不能达到真正的论坛的效果)
关键词:java,论坛,用户
1.选题背景
Internet是目前世界上最大的计算机互联网络,它遍布全球,将世界各地各种规模的网络连接成一个整体。作为Internet上一种先进的,易于被人们所接受的信息检索手段,World Wide Web(简称WWW)发展十分迅速,成为目前世界上最大的信息资源宝库。据估计,目前Internet上已有上百万个Web站点,其内容范围跨越了教育科研、文化事业、金融、商业、新闻出版、娱乐、体育等各个领域,其用户群十分庞大,因此,建设一个好的Web站点对于一个机构的发展十分重要。近年来,随着网络用户要求的不断提高及计算机科学的迅速发展,特别是数据库技术在Internet中的广泛应用,Web站点向用户提供的服务将越来越丰富,越来越人性化。
我们发现这样一个事实,一个用户在访问一个网站时一般来讲只对该网站的部分内容感性趣,而且这种兴趣会持续一段时间。这点启发了我们,如果能根据用户的喜好为不同的用户显示其个性化的页面,即着重显示该用户感兴趣的内容,将为用户节约大量的检索时间,而且这样的网页显然是更具有吸引力的。一些站点已经在这方面作出了一定的尝试,通常采用的方法是,在用户登陆时为其提供一系列的选项,使用户能够对站点进行一些自主的设置。这样做能够使站点呈现一定程度的个性化,但是对用户来讲,还是比较烦琐,而且在用户了解一个站点前让其对站点进行设置,其结果未免有些粗糙。于是我们构想了这样一种方案,对用户登陆后的动作进行跟踪,分析,发掘用户点击的规律,即用户先后点击的关联规则,这样,在用户点击一个主题(链接)之后,系统能够自动生成一页面,其中包含了该主题下用户经常关注的内容(若干链接),这样便在无须用户作出任何额外工作的情况下实现了为用户量身订做的个性化页面。
要实现这样的功能,离不开后台数据库的支持。用户验证信息,收集到的用户点击信息,主题层次信息,分析得出的关联规则表等大量的数据都由数据库管理系统管理。本文中数据库服务器端采用了Microsoft SQL数据库作为ODBC(Open DataBase Connectivity )数据源,并以java技术进行数据库存取等操作,使Web与数据库紧密联系起来。
本文作者主要完成模仿web服务器的用户管理、帖子管理、版面管理、数据库管理、浏览和查找、短消息等功能设计。
第1章 需求分析
01、模块介绍
论坛系统是网站中信息多、人气旺的地方,好的论坛可以吸引相当数量的访客,同时也担负着网站对外宣传、发布消息、收集客户反馈的重任。是大型企业网站必不可少的一部分。
在论坛中,网站的访客可就所关心的产品、服务、相关知识等提出自己的问题或表明观点、感受等。而企业专职人员则可及时发布反馈信息。所有这些文字形成的交流都会记录在系统中,供其他访客浏览、借鉴。系统可根据企业产品或服务种类的不同而设立多主题多版面,并引导访客选择相应的主题进行讨论。这将营造条理清晰、目的明确的沟通环境,提高信息查询检索的效率。 企业还可以根据需要开设技术支持版面,在线答复访问者提交的问题,将其作为企业售后服务体系的一部分。
系统包括主要的功能:新用户的注册,会员密码取回,会员登录,用户自己修改信息,管理员删除用户,游客浏览留言,会员新增留言,会员留言回复,管理员删除留言这些功能,可以应付一般的用户需要。
02 、模块特点(这些特点有些可能无法短时间内做到,因为有些知识还没有学习,只能边学边设计,将尽量完善这些功能)
1 讨论区 - 话题 - 贴子三级结构,源贴及回复贴用树状结构表现,清晰明了;
2 提供对点击率、回复率等各种统计分析,同时有强大的帖子查阅功能;
3 管理员后台可删除已经发布的帖子;
4 管理员指定内部发布信息为专家评论,吸引用户访问;
5 结合会员管理系统,只有会员才能发源帖及回复帖子;
6 管理员指定会员发布的帖子为精彩话题,鼓励会员积极参与;
7 管理员对讨论区可进行版主授权,将某个讨论区的管理权限放开给某个会员。
论坛信息管理系统功能图示
3.E-R图设计
论坛信息管理系统E-R图设计
第2章 数据库设计
01.数据表设计
(1)用户表
属性名 | 字段名 | 数据类型 |
昵称 | Username | Varchar(20) |
用户名 | userID | Varchar(20) |
性别 | Sex | Char(4) |
密码 | Password | Varchar(20) |
生日 | Bothday | Datetime |
Emall | Emall | Varchar(50) |
论坛身份 | Rights | Varchar(10) |
(2)帖子表
属性名 | 字段名 | 主/外键 | 数据类型 |
历史浏览人数 | frequency | Varchar | |
帖子内容 | content | Varchar | |
书写时间 | Date | Datetime | |
标题 | Title | Varchar | |
作者 | Writer | Varchar(20) | |
帖子编号 | No | PK | Number |
精华度 | Value | ||
(3)管理员
属性名 | 主/外键 | 字段名 | 数据类型 |
用户名 | PK | DMname | Varchar(20) |
密码 | Password | Varchar(20) | |
权限标示 | BD | Number | |
(4)板块表
字段名 | 数据结构 | 主/外键 | 属性名 |
Id | Number | PK | 版块ID |
Fid | Number | FK | 所属ID |
Bdinfo | Varchar | 版块信息 | |
Todaynum | Number | 当日发帖数 | |
Topicnum | Number | 置顶数 | |
Allnum | Number | 总帖子数 | |
Lastinfo | Varchar | 最后发表信息 | |
Type | Number | 版块类型 | |
Admin | Varchar | 版主 | |
(5)短消息表
字段名 | 数据结构 | 主/外键 | 属性名 |
Id | Number | PK | 编号 |
Fuserid | Number | 发信人 | |
Tuserid | Number | 收信人 | |
Content | Varchar | 内容 | |
Posttime | Datetime | 发送时间 | |
(6)精华版块表
字段名 | 数据结构 | 主/外键 | 属性名 |
No | 数字 | 帖子编号 | |
Title | 文本 | 标题 | |
Bd | 数字 | 所属ID | |
第3章 详细设计
此部分是实现用户的注册功能。用户先阅读注册协议,同意协议后,通过填写注册资料,正确填写后,点击注册按钮后便可注册成为正式的会员。
注册资料分必填资料和选填资料,用户只要把必填资料填写正确就可以注册了。用户名最多不能超过20个字符,而且不允许注册重复的用户名,当用户输
此部分主要是版主对论坛的帖子进行综合管理,删除、编辑、锁定、置顶、加精华等等。普通会员是不可以进行此操作的。
版主只可以管理自己版块的帖子,对别的版块帖子不能管理。超级版主和管理员可以管理所有版块的帖子。版主可以把通知或版规等性质帖子置顶,以便引起大家注意。再不需要的时候可以取消置顶。对一些写的非常好的文章版主可以为其加精华,这样让大家多多关注好的文章,以便鼓励发帖者多多发表好的文章上来大家一起分享。当然对于不好的帖子或者就是灌水的帖子,严重的可以直接删除了,情节较轻的则可以将其锁定。对有些文章内容有地方不足时,版主可以对其进行编辑修改。版块里的帖子除了置顶的帖子,别的帖子都是按照发表时间和回复时间排列的,时间最新的帖子则排在最前面,时间越旧排的就越靠后面。有的文章内容比较好,或是值得大家注意一下,但又没必要置顶更没必要加精华,这样版主就可以使用提升功能,使其排在后面的帖子上升到普通帖子的最前面。这种提升和置顶的区别在于置顶的帖子一直排在最上面,无论别的帖子更新时间比它多新,都没有。普通帖子更新时间最新也是排在它的后面。而提升的帖子呢,
提升后是排在普通的帖子最前面了,但别的帖子只要在它被提升后更新了,那么别的帖子就会跑到这个提升帖子的前面了,依此类推。还有一项功能就是转移帖子,这是超级版主以上的职务才有此权限。对于某版块里用户的发的帖子不符合该版块的内容范围呢,而是属于另一个版块内容的,这时就可以把此帖子转移到符合其内容的版块里。
此部分是实现管理员对论坛的后台管理,发布公告、添加删除版块、备份数据、任命撤消版主等等。
首先对于前台的管理,大部分就是对帖子的管理,版主所有的权限管理员都有;其次就是对后台的专署管理,后台管理分5大模块。一是论坛常规设置,其中包括常规信息设置、公告管理、风格设置、友情连接管理、IP封锁与解除。二是论坛管理,其中包括论坛版面设置、版主设置、超级版主设置、管理员设置、后台密码修改。三是用户管理,其中包括用户删除与恢复、更改用户密码、修改用户资料、用户特殊设置、批量删除用户。四是帖子与留言管理,其中包括帖子批量删除、帖子批量移动、论坛留言管理、群发留言、帖子数据表管理、论坛回收站。五是其他操作,其中包括论坛整理、数据库、上传文件管理、执行SQL语句。
4.1选择编程语言