网页设计论坛.docx

上传人:b****6 文档编号:12962843 上传时间:2023-06-09 格式:DOCX 页数:34 大小:2.03MB
下载 相关 举报
网页设计论坛.docx_第1页
第1页 / 共34页
网页设计论坛.docx_第2页
第2页 / 共34页
网页设计论坛.docx_第3页
第3页 / 共34页
网页设计论坛.docx_第4页
第4页 / 共34页
网页设计论坛.docx_第5页
第5页 / 共34页
网页设计论坛.docx_第6页
第6页 / 共34页
网页设计论坛.docx_第7页
第7页 / 共34页
网页设计论坛.docx_第8页
第8页 / 共34页
网页设计论坛.docx_第9页
第9页 / 共34页
网页设计论坛.docx_第10页
第10页 / 共34页
网页设计论坛.docx_第11页
第11页 / 共34页
网页设计论坛.docx_第12页
第12页 / 共34页
网页设计论坛.docx_第13页
第13页 / 共34页
网页设计论坛.docx_第14页
第14页 / 共34页
网页设计论坛.docx_第15页
第15页 / 共34页
网页设计论坛.docx_第16页
第16页 / 共34页
网页设计论坛.docx_第17页
第17页 / 共34页
网页设计论坛.docx_第18页
第18页 / 共34页
网页设计论坛.docx_第19页
第19页 / 共34页
网页设计论坛.docx_第20页
第20页 / 共34页
亲,该文档总共34页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

网页设计论坛.docx

《网页设计论坛.docx》由会员分享,可在线阅读,更多相关《网页设计论坛.docx(34页珍藏版)》请在冰点文库上搜索。

网页设计论坛.docx

网页设计论坛

论文摘要

基于J2EE+STRUTS2+HIBERNATE3设计技术和sql2005数据库技术的开封大学BBS班级论坛系统,是一个用于班级交流,完成班级内部的信息发布与实现,并提供了基础BBS论坛的皱型,包括前台用户交流和后台管理。

其功能主要是:

帖子的发布,帖子的回复,用户注册,用户信息维护,用户评论,最新帖子显示,最新评论和推荐帖子的实现,用户信息管理,帖子和评论管理,公告管理,友情链接等几大功能模块。

本系统除了使用J2EE+STRUTS2+HIBERNATE3技术外,还加入了jstl,EL表达式,过滤器,jquery无刷新技术。

同时也加入了flash元素,使的网页的互动性更强。

同时对于想要学习框架技术的同学提供了良好的模板。

本系统利用各种面向对象的开发手段,首先在短时间内建立系统应用原型,然后,对初始原型系统进行需求迭代,不断修正和改进,真到形成用户满意的可行系统。

整个系统的开发过程严格遵循软件工程的要求,做到模块化分析、模块化设计和代码编写的模块化。

本系统有很强的实用性、开发效率高、移植性好、稳定性好等优点。

可以在任何安装了java虚拟机和J2EE的系统上面使用,由于java的一次编译,次次运行的特点,所以搭建本系统可以节约成本,不需要额外的增加平台环境和硬件。

对于系统的维护也不需要专业人员,只要会基本的电脑操作,那么项目的维护就不是问题。

 

关键字:

BBS论坛系统strutshibernatejqueryjstl

 

目录

一、引言2

二、相关软件及技术介绍2

(一)java语言2

(二)MicrosoftSQLServer20053

(三)myeclipse3

(四)tomcat3

(五)jsp,servlet4

(六)struts+hibernate4

三、系统概述5

(一)功能概述5

1.用户注册5

2.帖子管理5

3.用户信息修改5

4.评论回复5

5.帖子导航,帖子搜索5

6.后台管理6

(三)运行环境6

1.软件配置7

2.硬件配置7

三、功能需求7

(一)系统功能分析及用例图类图7

(二)功能描述10

1.用户注册管理10

2.帖子管理10

3.用户信息管理10

四、系统功能设计11

(1)数据库需求分析11

(2)数据表设计14

(3)表数据18

五、详细设计20

(一)主页面20

(二)用户23

(三)管理功能介绍27

六、功能测试28

(一)链接测试28

(二)设计语言测试28

(三)数据库测试29

七、安全测试29

结论30

BBS班级论坛系统的实现

王世阳

(开封大学软件学院应用三班)

一、引言

随着信息产业和Internet的飞速发展,计算机的使用已渗透到各个领域。

这就迫切地要求计算机能够对浩瀚的信息实现自动化处理,以实现及时、准确的掌握信息。

科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。

本项目是一个基于论坛形式的项目,使用本项目,大家可以实现普通论坛的操作,从而就可以实现互动的效果,但因为时间紧促,所以核心功能已经完善,但扩展功能却无法实现,下面将会详细介绍项目的组成和架构。

本系统除了使用J2EE+STRUTS2+HIBERNATE3技术外,还加入了jstl,EL表达式,过滤器,jquery无刷新技术。

同时也加入了flash元素,使的网页的互动性更强。

同时对于想要学习框架技术的同学提供了良好的模板。

二、相关软件及技术介绍

(一)java语言

Java,是由SunMicrosystems公司于1995年5月推出的Java程序设计语言和Java平台的总称。

用Java实现的HotJava浏览器(支持Javaapplet)显示了Java的魅力:

跨平台、动态的Web、Internet计算。

从此,Java被广泛接受并推动了Web的迅速发展,常用的浏览器现在均支持Javaapplet。

它主要包括javaSE,javaEE,javaME。

Java是一种简单的,面向对象的,分布式的,解释型的,健壮安全的,结构中立的,可移植的,性能优异、多线程的动态语言。

Java语言的语法与C语言和C++语言很接近,使得大多数程序员很容易学习和使用Java。

另一方面,Java丢弃了C++中很少使用的、很难理解的、令人迷惑的那些特性,如操作符重载、多继承、自动的强制类型转换。

特别地,Java语言不使用指针,并提供了自动的废料收集,使得程序员不必为内存管理而担忧。

Java语言提供类、接口和继承等原语,为了简单起见,只支持类之间的单继承,但支持接口之间的多继承,并支持类与接口之间的实现机制(关键字为implements)。

Java语言全面支持动态绑定,而C++语言只对虚函数使用动态绑定。

总之,Java语言是一个纯的面向对象程序设计语言。

(二)MicrosoftSQLServer2005

SQLServer是一个关系数据库管理系统,SQLServer作为微软在Windows系列平台上开发的数据库,一经推出就以其易用性得到了很多用户的青睐。

另外,SQLServer2005除了具有扩展性,可靠性以外,还具有可以迅速开发新的因特网系统的功能。

尤其是它可以直接存贮数据,有利于构建了异构系统的互操作性,奠定了面向互联网的企业应用和服务的基石。

这些特点在.NET战略中发挥着重要的作用。

除了sqlserver2005外,还有access,oracle,mysql等其他的很多数据库,对于oracle来说,它是面向企业级应用的大型数据库,所以在这里就不考虑使用oracle。

Access则是因为它的关系性功能不强,所以在这里也排除在外。

至于mysql,因为mysql的数据库数据转移不方便,所以也不使用。

(三)myeclipse

MyEclipse,是一个十分优秀的用于开发Java,J2EE的Eclipse插件集合,MyEclipse的功能非常强大,支持也十分广泛,尤其是对各种开元产品的支持十分不错。

MyEclipse企业级工作平台(MyEclipseEnterpriseWorkbench,简称MyEclipse)是对EclipseIDE的扩展,利用它我们可以在数据库和JavaEE的开发、发布,以及应用程序服务器的整合方面极大的提高工作效率。

它是功能丰富的JavaEE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML,Struts,JSP,CSS,Javascript,SQL,Hibernate。

(四)tomcat

 Tomcat是一个轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP程序的首选。

对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache服务器,可利用它响应对HTML页面的访问请求。

实际上Tomcat部分是Apache服务器的扩展,但它是独立运行的,所以当你运行tomcat时,它实际上作为一个与Apache独立的进程单独运行的。

Tomcat实际上运行JSP页面和Servlet。

另外,Tomcat和IIS、Apache等Web服务器一样,具有处理HTML页面的功能,另外它还是一个Servlet和JSP容器,独立的Servlet容器是Tomcat的默认模式。

不过,Tomcat处理静态HTML的能力不如Apache服务器。

(五)jsp,servlet

JSP是JavaServerPages的简写。

JSP技术能让Web开发员和网页设计员快速地开发容易维护的动态Web主页。

用JSP开发的Web应用是跨平台的,即能在Linux下运行,也能在其他操作系统上运行。

JSP将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。

JSP技术是Servlet技术的扩展。

Servlet是平台无关的,100%纯Java的Java服务端组件。

Servlet类似于通用网关接口(CGI)脚本,servlets支持请求响应编程模式。

当客户端给服务器发送请求时,服务器将请求发送给servlet。

然后,servlet构建一个响应,服务器将该响应发送回客户端。

然而,跟CGI脚本不同的是,servlets和HTTP服务器运行在同一个进程内。

(六)struts+hibernate

Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。

Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序使用,也可以在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。

Struts跟Tomcat、Turbine等诸多Apache项目一样,是开源软件,这是它的一大优点,使开发者能更深入的了解其内部实现机制。

除此之外,Struts的优点主要集中体现在两个方面:

Taglib和页面导航。

Taglib是Struts的标记库,灵活运用,能大大提高开发效率。

另外,就目前国内的JSP开发者而言,除了使用JSP自带的常用标记外,很少开发自己的标记,或许Struts是一个很好的起点。

以上的软件和技术都是现今主流的开发工具和技术,它们的框架,安全,性能等方面都已经很完善,使用它们可以更好完成对系统的构建和运行,相比于C#和VB,它更具有平台,速度,安全等方面的优势。

三、系统概述

(一)功能概述

提供包括用户注册,帖子发布、评论以及后台管理等内容。

1.用户注册

用户注册可以使未注册用户注册到自己的账号,并且可以凭借此账号实现与其他用户的互动。

2.帖子管理

本系统实现了帖子的扩展功能,具有对帖子进行动态显示的效果,用户的最新评论,帖子加精推荐等功能。

3.用户信息修改

对于注册用户可以修改自己的信息,使用的是jquery插件实现页面的无刷新显示。

但碍于时间原因,此处的功能就实现了二处。

4.评论回复

可以把关于本帖子的所有用户回复信息进行统一显示出来的效果,使的帖子的内容可以更加的精彩。

5.帖子导航,帖子搜索

本系统还完成了基本的帖子搜索功能,用户可以分类搜索帖子也可以通过搜索自己喜欢的关键词进行搜索。

6.后台管理

后台管理是每个系统都具有的,本系统也不例外,除了基本的功能外,本后台还具体用户动态信息,帖子的浏览回复等信息。

(二)系统的处理流程

如图1所示:

图1处理流程图

(三)运行环境

由于BBS班级论坛系统具有流程复杂、数据量大、操作要求安全的特点,所以必须进行数据库、操作系统、网络等硬软件的合理选择。

1.软件配置

BBS班级论坛系统具有的软件配置主要包括数据库的选择和操作系统的选择。

本系统采用SQLSERVER2005.操作系统使用windowXP.

2.硬件配置

a)推荐Pentium或更高的处理器,或任何运行于MicrosoftWindowsNTWorkstation的Alpha处理器。

b)MicrosoftWindows支持的VGA或分辨率更高的监视器。

128MB内存以上。

三、功能需求

(一)系统功能分析及用例图类图

如图2所示:

 

 

图2功能需求设计图

系统的基本流程就是上面描述的那样,而对于系统的详细描述则会在后面的部分进行详细的分析及讲解,下面是系统的涉及的基本用例图,通过用例图可以更好的了解系统的构成。

1.用例图

图2-1为前台用例,图2-2为后台管理用例

图2-1前台用例图

图2-2后台用例图

2.实体类图

图2-3实体类图

(二)功能描述

用户系统主要由三大子系统组成:

用户注册、帖子发布、评论管理,信息维护

1.用户注册管理

提供给非注册用户的合法身份注册,需要用户提供的信息包括用户名,密码,性别,邮箱,真实姓名,身份证ID,教育程度,地址等信息。

在系统中管理员具有最高权限。

2.帖子管理

因为本系统开发时间周期短,所以只实现了基本的帖子发布和评论管理功能,对于那些在评论中插入图片等一些特效的展示在这里无法完成。

3.用户信息管理

用户信息管理模块也是比较重要的模块,在这里使用的是页面无刷新技术,利用jquery插件,实现个人图像的上传,信息的修改,但是在这里开发的功能比较少,时间不够,无法完成开发和测试。

后台系统除了基本的用户管理、帖子管理、评论管理基本功能外,还加入了一些特色功能,包括:

在线人数统计、帖子访问量、公告的发布、友情链接的添加。

其中在线人数统计包括了注册人数、访问人数的统计,可以使管理员可以更好更直接的把握住网站的人流信息,从而为网站的后期功能策划提供了参考。

帖子访问量可以使管理员更好的了解用户发表的帖子受欢迎程度,从而可以给这些受欢迎的帖子设置加精或者推荐都操作。

至于公告的发布,则是把最新最快的网站信息及时的呈现给用户。

友情链接可以把那些建立了同盟关系或者是用户反应的那些访问量大的网站进行添加。

四、系统功能设计

根据系统功能要求可以将系统分解成几个子系统模块来分别设计应用程序界面,如图3所示:

图3功能设计

(1)数据库需求分析

数据库是信息管理的基础。

数据库结构直接关系到各种功能的实现和程序运行的效率。

进行数据库设计首先必须准确了解与分析用户需求(包括数据与处理)。

需求分析是整个设计过程的基础,是最困难、最耗费时间的一步。

需求分析的结果是否准确地反映了用户的实际要求,将直接影响到后面各个阶段的设计,并影响到设计结果是否合理和实用。

数据库的安全也是很重要的,对于sa账户,一定要做到保密。

E-R实体图分析

图4用户E-R实体图

图5用户扩展E-R实体图

图6帖子E-R实体图

图7评论E-R实体图

图8管理E-R实体图

图9帖子分类E-R实体图

以上的这些E-R图的数据库实体关系为:

用户与用户扩展为1:

1的关系;用户与帖子之间的关系为1:

n的关系;帖子与帖子分类之间的关系为n:

1的关系;评论与帖子之间的关系为n:

1的关系。

(2)数据表设计

数据表中的数据字段和数据类型与相关属性

(1)用户信息表(UserInfo)如图10所示:

图10用户信息表视图

(2)用户信息扩展视图(UserInfo1)如图11所示:

图11用户信息扩展表视图

(3)用户ID视图(UserID)如图12所示:

图12userID表视图

(4)管理员数据表视图(admin)如图13所示:

图13admin表视图

(5)帖子数据表视图(article)如图14所示:

图14article表视图

(6)帖子分类数据表视图(articleCate)如图15所示:

图15articleCate表视图

(7)评论数据表视图(comment)如图16所示:

图16comment表视图

(8)友情链接数据表视图(friend)如图17所示:

图17friend表视图

(3)表数据

1.用户资料数据表(UserInfo)如图18所示:

图18UserInfo表

2.用户信息扩展表(UserInfo1)如图19所示:

图19UserInfo1表

3.用户ID表(UserID)如图20所示:

图20UserId表

4.帖子数据(admin)如图21所示:

图21article表

5.帖子分类(articleCate)如图22所示:

图22articleCate表

6.评论数据(comment)如图23所示:

图23comment表

五、详细设计

(一)主页面

为了提高页面的多样性和可读性,在首页增加了帖子的分类以及最新帖子,推荐帖子等的设置。

当用户第一次浏览网站的时候会自己跳转到主页,例如图24所示:

图24主页

主要的功能代码如下:

publicStringintercept(ActionInvocationarg0)throwsException{

ArticleDaoad=newArticleDaoImpl();

OtherDaood=newOtherDaoImpl();

Gonggaog=(Gonggao)od.selectGonggao().get(0);

Listf=od.selectFriend();

Listtop3=ad.selectArticleTop3("zyjl");

Listtop31=ad.selectArticleTop3("qgyl");

Listnews=ad.selectArticleTop7ByNew();

Listnews1=ad.selectArticleTop7ByComment();

Listnews2=ad.selectArticleTop7ByRecommend();

ServletActionContext.getRequest().setAttribute("top3",top3);

ServletActionContext.getRequest().setAttribute("top31",top31);

ServletActionContext.getRequest().setAttribute("news",news);

ServletActionContext.getRequest().setAttribute("news1",news1);

ServletActionContext.getRequest().setAttribute("news2",news2);

ServletActionContext.getRequest().setAttribute("gonggao",g);

ServletActionContext.getRequest().setAttribute("friend",f);

arg0.invoke();

return"OK";

}

同时在主页这里你还可以以非用户身份查看帖子的信息,搜索帖子,还可以通过导航来搜索帖子。

图25,图26,图27用来演示这些功能。

图25帖子信息

主要的功能代码如下:

<%Stringaid=request.getParameter("article");

ArticleDaoad=newArticleDaoImpl();

Articlea=ad.selectArticleByAid(Integer.parseInt(aid));%>

  • articleaid=<%=a.getAid()%>">回复

  • 发帖
  • 返回列表

<%=a.getUserId().getUserInfo().getUserinfo1().getUsername()%>

.jpg"/>

等级:

<%=a.getUserId().getUserInfo().getUserinfo1().getUserlevel()%>

积分:

0

发表时间:

<%=a.getPdate()%>

<%=a.getAname()%>

<%=a.getAcontend()%>

評論

<%

Iteratori=a.getComments().iterator();

while(i.hasNext()){

Commentc=(Comment)i.next();

%>

<%=c.getUserInfo().getUsername()%>

<%=c.getComment()%>

<%=c.getCdate()%>

<%}%>

图26帖子搜索

这些基本的功能介绍完了之后,肯定想试试注册之后带来的乐趣了,下面介绍第二大块:

用户模块介绍。

(二)用户

首先就是需要注册用户了,这是这类网站必不可少的功能,同样我们的网站也提供了这样的功能,下面就看看注册页面吧。

如图28

图28注册页面

主要的功能代码如下:

@Override

publicStringexecute(){

System.out.println(users.getUsername());

System.out.println(users.getPassword());

System.out.println(users.getPid());

System.out.println(users.getSex());

UserIdui=newUserId();

UserInfo1ui1=newUserInfo1();

ui1.setUserInfo(users);

users.setUserinfo1(ui1);

ui.setUserInfo(users);

RegeditUserru=newRegeditUser();

ru.save(users);

ru.save1(ui);

UserInfo1ui2=newUserInfo1();

ui2.setUsername(users.getUsername());

ui2.setUserlevel("0");

try{

ru.save2(ui2);

}catch(SQLExceptione){

//TODOAuto-generatedcatchbl

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 小学教育 > 语文

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2