毕业论文:基于响应式页面的新闻资讯类门户网站的设计与实现

作者 林顺 武汉交通职业学院 电子与信息工程学院

摘 要

互联网正在改变一切。现在有多少行业从之前的线下经营搬到线上经营,目的就是为了顺应科学技术的发展,跟进时代潮流的步伐。我们每天都会做的一件事,那就是打开手机或者电脑看新闻,之前用户了解新闻都是通过订阅报刊、书籍、杂志或者通过新闻媒体实现的,现如今,手机和电脑是用户使用最多的,显而易见,为了让用户更方便、更快的关注到新闻,新闻类的网站正在崛起。
上述就是我会选择《基于响应式页面设计技术和后台开发技术的PC及移动端自适应的新闻资讯类门户网站的设计与实现》作为我的毕业设计题目的原因。
本文所描述的《新闻资讯类门户网站》的设计和开发技术,前端设计方面运用了B/S技术,只为了给用户最完美的用户操作体验。本应用的后台开发运用的是java开发技术,数据库采用了MySQL数据库进行数据的存储操作。

关键词:WEB;新闻;JSP;系统;MySQL;B/S技术

ABSTRACT

The Internet is changing everything.Now how many industries from the previous offline business to online business, the purpose is to comply with the development of science and technology, to follow the pace of the trend of The Times.We do one thing every day, and it is open a mobile phone or computer to watch the news, before users understand the news through newspapers, books, magazines, or through the news media, nowadays, cell phones and computers is one of the most users, it is obvious that in order to make the user more convenient and faster to focus on the news, news website is on the rise.
This is why I choose “design and implementation of PC and mobile terminal adaptive news and information portal website based on responsive page design technology and background development technology” as the topic of my graduation project.
The design and development technology of news and information portal website described in this paper USES B/S technology in the front end design, just to give users the most perfect user operation experience.The background development of this application is the use of Java development technology, the database USES MySQL database for data storage operation.

Keywords: WEB; press releases; JSP;MySQL

第一章 绪论

互联网正在改变一切。现在有多少行业从之前的线下经营搬到线上经营,目的就是为了顺应科学技术的发展,跟进时代潮流的步伐。我们每天都会做的一件事,那就是打开手机或者电脑看新闻,之前用户了解新闻都是通过订阅报刊、书籍、杂志或者通过新闻媒体实现的,现如今,手机和电脑是用户使用最多的,显而易见,为了让用户更方便、更快的关注到新闻,新闻类的网站正在崛起。
从近几年信息发布网站如春笋般出现不难看出人们对外界信息了解很大程度上依赖于信息类发布网站,由于智能手机的普及会导致该需求在日益增长,人们都开始依赖于这些信息类发布网站,对信息的阅读也不仅仅只限于几个信息发布网站,而是越多越好,只要是能够满足他们对信息了解的需求的网站都能够孕育而生,这些网站的出现影响了我们这一代人的生活习惯和信息获取方式,也为人们茶前饭后的业余生活增添了色彩。
如今计算机已经被广泛应用于人工智能,信息获取,信息发布的各个方面,计算机网络技术也得到飞速的发展。我们上网不单单只是为了看电视和收发电子邮件,日常生活中的娱乐活动,人们都可以通过网络来完成。而对于新闻发布来讲,通过网络可以更快捷的发布国际国内新闻信息。随着互联网技术的重要提升,为媒体和信息商家行业提供了更好的信息传播,信息发布行业采用最前端技术使信息的制作质量得到了飞速提高。新闻资讯类门户网站,它的内容对于如今社会各层次的人们来说都至关重要,所以新闻网应该能够为用户提供真实实用的信息和便捷的查询手段,及快捷的发布方式,让媒体更快发布给读者等等。随着科学技术的不断提高,计算机科学日渐成熟,它强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。作为计算机应用的一部分,使用计算机对新闻信息进行管理,有着手工管理所无法比拟的优点.检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高人事劳资管理的效率,也是企业的科学化、正规化管理,与世界接轨的重要条件。
新闻资讯类门户网站,在充分了解新闻业务流程的基础上,采用一系列最新的信息处理技术,对新闻进行科学化管理,实现了新闻信息的最广泛共享,使新闻可以通过计算机网络完成发布。而用户则随时随地都可以通过计算机浏览该网站。
科学技术日新月异发展的今天,生活节奏加快导致的人民需求也提高。人们渴望获得更加及时性,简单明确的新闻消息。传统的以报纸期刊,杂志已经不能满足人们期待获得第一手消息的愿望。因此,以互联网为传媒单位的新闻发布管理系统开始逐步替代原有的落后的消息,而成为当代新的潮流方式。新闻资讯类网站以最迅速便捷的方式,使得人们不需要出门而获得分享世界各地的资源,进行交流。而新闻网站的时效性,让所有的评论和阅读可以实时更新。新闻采编发布系统,是通过管理网上发布的新闻和评论,将变动的信息进行有效的管理,网络用户因此可以获得新闻的多媒体显示。 论文介绍了乐闻网系统的研究背景、项目意义和目前的研究与应用现状,明确了论文研究的内容和主要工作;进行业务分析的过程后,系统存在的问题、整体结构、原来的业务流程等都做了进一步的研究,由此得到了改造后的业务流程;模块的功能分析,用例分析和用例描述,并确定了系统的功能,该系统图和包图和子功能的整体功能,包括新闻发布和其他包图;最后的数据分析环节中,整个系统每个功能模块所需要处理的数据都有被分析讨论,根据这些数据之间的关系,实体类关系图和数据库表结构建立起来;文章最后的部分是新闻资讯类门户网站研究与分析工作进行了总结,提出了分析中存在的问题,对将来的深入工作投入更多的努力和细致的研究,做出了新的展望。

第二章 相关技术介绍
2.1 JAVA简介
Java是由Sun Microsystems公司于1995年5月推出的Java面向对象程序设计语言和Java平台的总称。由James Gosling和同事们共同研发,并在1995年正式推出。
Java分为三个体系:
JavaSE(J2SE)(Java2 Platform Standard Edition,java平台标准版)
JavaEE(J2EE)(Java 2 Platform,Enterprise Edition,java平台企业版)
JavaME(J2ME)(Java 2 Platform Micro Edition,java平台微型版)。
2005年6月,JavaOne大会召开,SUN公司公开Java SE 6。此时,Java的各种版本已经更名以取消其中的数字"2":J2EE更名为Java EE, J2SE更名为Java SE,J2ME更名为Java ME。
Java的主要特性Java语言是简单的:
Java语言的语法与C语言和C++语言很接近,使得大多数程序员很容易学习和使用。另一方面,Java丢弃了C++中很少使用的、很难理解的、令人迷惑的那些特性,如操作符重载、多继承、自动的强制类型转换。特别地,Java语言不使用指针,而是引用。并提供了自动的废料收集,使得程序员不必为内存管理而担忧。

Java语言是面向对象的:
Java语言提供类、接口和继承等面向对象的特性,为了简单起见,只支持类之间的单继承,但支持接口之间的多继承,并支持类与接口之间的实现机制(关键字为implements)。Java语言全面支持动态绑定,而C++语言只对虚函数使用动态绑定。总之,Java语言是一个纯的面向对象程序设计语言。

Java语言是分布式的:
Java语言支持Internet应用的开发,在基本的Java应用编程接口中有一个网络应用编程接口(java net),它提供了用于网络应用编程的类库,包括URL、URLConnection、Socket、ServerSocket等。Java的RMI(远程方法激活)机制也是开发分布式应用的重要手段。

Java语言是健壮的:
Java的强类型机制、异常处理、垃圾的自动收集等是Java程序健壮性的重要保证。对指针的丢弃是Java的明智选择。Java的安全检查机制使得Java更具健壮性。

Java语言是安全的:
Java通常被用在网络环境中,为此,Java提供了一个安全机制以防恶意代码的攻击。除了Java语言具有的许多安全特性以外,Java对通过网络下载的类具有一个安全防范机制(类ClassLoader),如分配不同的名字空间以防替代本地的同名类、字节代码检查,并提供安全管理机制(类SecurityManager)让Java应用设置安全哨兵。

Java语言是体系结构中立的:
Java程序(后缀为java的文件)在Java平台上被编译为体系结构中立的字节码格式(后缀为class的文件),然后可以在实现这个Java平台的任何系统中运行。这种途径适合于异构的网络环境和软件的分发。

Java语言是可移植的:
这种可移植性来源于体系结构中立性,另外,Java还严格规定了各个基本数据类型的长度。Java系统本身也具有很强的可移植性,Java编译器是用Java实现的,Java的运行环境是用ANSI C实现的。

Java语言是解释型的:
如前所述,Java程序在Java平台上被编译为字节码格式,然后可以在实现这个Java平台的任何系统中运行。在运行时,Java平台中的Java解释器对这些字节码进行解释执行,执行过程中需要的类在联接阶段被载入到运行环境中。

Java是高性能的:
与那些解释型的高级脚本语言相比,Java的确是高性能的。事实上,Java的运行速度随着JIT(Just-In-Time)编译器技术的发展越来越接近于C++。

Java语言是多线程的:
在Java语言中,线程是一种特殊的对象,它必须由Thread类或其子(孙)类来创建。通常有两种方法来创建线程:其一,使用型构为Thread(Runnable)的构造子类将一个实现了Runnable接口的对象包装成一个线程,其二,从Thread类派生出子类并重写run方法,使用该子类创建的对象即为线程。值得注意的是Thread类已经实现了Runnable接口,因此,任何一个线程均有它的run方法,而run方法中包含了线程所要运行的代码。线程的活动由一组方法来控制。Java语言支持多个线程的同时执行,并提供多线程之间的同步机制(关键字为synchronized)。

Java语言是动态的:
Java语言的设计目标之一是适应于动态变化的环境。Java程序需要的类能够动态地被载入到运行环境,也可以通过网络来载入所需要的类。这也有利于软件的升级。另外,Java中的类有一个运行时刻的表示,能进行运行时刻的类型检查。

2.2 JSP技术简介
JSP全名为Java Server Pages,中文名叫java服务器页面,其根本是一个简化的Servlet设计,它是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。JSP技术有点类似ASP技术,它是在传统的网页HTML(标准通用标记语言的子集)文件(.htm,.html)中插入Java程序段(Scriptlet)和JSP标记(tag),从而形成JSP文件,后缀名为(*.jsp)。 用JSP开发的Web应用是跨平台的,既能在Linux下运行,也能在其他操作系统上运行。
JSP 技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。网页还能通过tags和scriptlets访 问存在于服务端的资源的应用逻辑。JSP将网页逻辑与网页设计的显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。 JSP(JavaServer Pages)是一种动态页面技术,它的主要目的是将表示逻辑从Servlet中分离出来。
Java Servlet是JSP的技术基础,而且大型的Web应用程序的开发需要Java Servlet和JSP配合才能完成。JSP具备了Java技术的简单易用,完全的面向对象,具有平台无关性且安全可靠,主要面向因特网的所有特点。
2.3 MySQL数据库简介
MySQL是一种开放源代码的关系型数据库管理系统(RDBMS),使用最常用的数据库管理语言–结构化查询语言(SQL)进行数据库管理。
MySQL是开放源代码的,因此任何人都可以在General Public License的许可下下载并根据个性化的需要对其进行修改。
MySQL因为其速度、可靠性和适应性而备受关注。大多数人都认为在不需要事务化处理的情况下,MySQL是管理内容最好的选择。
MySQL这个名字,起源不是很明确。一个比较有影响的说法是,基本指南和大量的库和工具带有前缀“my”已经有10年以上,而且不管怎样,MySQL AB创始人之一的Monty Widenius的女儿也叫My。这两个到底是哪一个给出了MySQL这个名字至今依然是个迷,包括开发者在内也不知道。
MySQL的海豚标志的名字叫“sakila”,它是由MySQL AB的创始人从用户在“海豚命名”的竞赛中建议的大量的名字表中选出的。获胜的名字是由来自非洲斯威士兰的开源软件开发者Ambrose Twebaze提供。根据Ambrose所说,Sakila来自一种叫SiSwati的斯威士兰方言,也是在Ambrose的家乡乌干达附近的坦桑尼亚的Arusha的一个小镇的名字。
MySQL,虽然功能未必很强大,但因为它的开源、广泛传播,导致很多人都了解到这个数据库。它的历史也富有传奇性。
第三章 功能需求分析
3.1功能需求

本新闻资讯类门户网站系统主要由前台会员模块和后台管理模块两部分组成。游客在进入该网站后,不仅可以浏览各类新闻链接和广告信息,还可以选择查看各新闻火资讯的详细信息并统计点击次数。此外,用户还可以成为会员,会员还能通过输入关键词查搜索该网站的所有新闻和资讯,另外还可以对信息进行评论,发布帖子,回复帖子;管理员登录后,不仅可以查看所有新闻条目,广告,查看并编辑会员信息,会员发布的帖子,还可以添加,删除,修改所有新闻资讯和用户信息。管理员还可以根据实际情况添加其他管理员以维护该新闻资讯类网站的环境和安全。
针对于需要实现的基本功能。本网站提供了不同类型新闻(如社会新闻、娱乐新闻和技术前沿新闻等) 满足不同用户需求;系统将用户分为:普通用户,系统管理员和新闻管理员。 普通用户能在本系统中进行新闻浏览,阅读,新闻搜索。每条新闻的标题被做成一个链接,用户点击它们就能跳转页面进行新闻阅读;新闻阅读页面,每条新闻的详细信息将被取出,包括内容、标题等;用户能根据自己的需要搜索新闻,如可以通过新闻标题或新闻内容对新闻进行搜索,这样可以快速地找到符合条件的新闻,并输出搜索结果;用户能对新闻进行被评论(允许匿名评论)。 系统管理员可以进行新闻分类管理、添加新闻、修改新闻、新闻审核和删除新闻,同时系统管理员能完成用户管理如包括系统用户管理、添加用户和更改账号。 新闻管理员拥有添加新闻和更改账号的权限。根据用户不同,给予不同权限,这样加强系统的管理,同时加强系统的安全性。
普通用户的用例图如图3-1,普通用户可以浏览新闻,用户登入,新闻评论的功能;

图3-1普通用户用例图

管理员用户用例图3-2管理员拥有用户登入,评论管理,新闻栏目管理,新闻管理这些权限。

图3-2管理员用户用例图

3.2性能需求
根据新闻系统的需求进行开发设计,主要实现如下目标:界面设计友好、美观、数据要准确、安全、可靠。 强大查询功能,方便用户浏览网站的所有信息。 设计会员登陆功能,保证新闻留言的安全性。实现对信息、比赛项目等信息的添加、修改、删除,便于更新网站内容。 系统最大限度地实现易维护性和易操作性。 操作的简易实用性本系统是社会新闻发布系统,针对的用户大多数是社会人员。因此操作的简易实用性就体现的尤其重要。在此系统的开发中就很好的体现了这一点,系统的界面美观,典雅,充满了人性化;用户操作起来也容易上手。对于一个社会新闻发布系统而言新闻信息是很多的,而且使用人数较多,所以对系统的安全性有比较高的要求:对于数据库,要设置不同用户的权限,数据的修改必须由合法用户操作。

3.3 可靠性和用户界面需求
为更好地加强新闻网络系统、新闻网站、个人主页的管理,认真落实网络和信息安全保障制度,防范和处理社会网络管理重大突发事件和敏感事件,确保网络提供稳定、安全的信息服务。
法律可行性研究本系统的设计和开发不会在社会和个人上构成侵权或其它一些责任纠纷。因为该系统是作为毕业设计来研究的,它与商业无关,而且是自我进行的设计开发,因此不会造成信息泄露,系统中的一些数据都是自己模拟出来的不会对社会对个人造成不必要的侵权,因此在法律上是可行的。
网站界面是用户直接访问的页面,要让用户一访问就能看出来这个网站的主题思想是什么,一下就能体现出这个网站的中心内容。并且首页的模块之间要联系紧密,更好的让用户理解明白。在这个页面上我们要做到所有查看消息的功能都能实现,或者说有能实现查询信息功能的连接。

3.4系统E-R模型
为了确保正确的数据在系统中能够客观真实地反映世界,其中的一些完整性规则通过一些控制的标准作业应用程序来实现。数据库要具有安全性,这数据库系统重要的一个方面,它是指保护数据库以防止非法使用,包括破坏和未授权访问等行为。
但是由于本次设计开发的系统涉及到的数据都不具备保密性的数据,因此不需要采取特别复杂的安全措施,只须防止数据被人随意改动即可。根据系统要求,可以列出以下数据项和数据结构,下面用E-R图2-4来表示实体模型
图2-4实体模型

3.5 系统流程分析
为了使用户进一步了解本系统设计,这节将对系统进行流程过程的分析。用户进行身份判断分为两个阶段:
(1).判断该用户是否是本系统的注册用户。
(2).判断注册用户属于管理员还是普通用户。
第一阶段是将准备登录的用户名和密码与系统连接的数据库中的用户信息表中的数据进行匹配,如果能够在数据库中找到对应的用户则登录成功。第二个阶段是根据该有效用户的用户名查找出该用户对象,根据用户对象中的style属性值决定其工作界面。
该系统一分为二的分成了前台系统和后台系统,后台系统具有对身份判断的上面两个阶段,前台对身份的判断只有上面的第一阶段
图3-6展示了后台系统的登录流程。超级管理员能够对所有普通用户的信息和普通管理员的信息进行管理以及对所有新闻信息进行管理,而普通管理员少了一个对普通用户信息管理的权限。

图3-6后台系统的登录流程

第四章 系统功能实现
4.1 系统架构
本次设计开发的系统是B / S模式系统。后台数据处理层,中间业务逻辑层,用户界面层组成三层结构的体系。后台使用数据库,中间层使用数据的分析和处理程序,前台使用WEB连接的三种层次结构的发展模式。使用和MySQL数据库和JSP技术平台开发。
前端软件使用Web技术开发,通过在服务器端下载的方式使客户端运行,这样可以在最大程度上提高整个系统的安全性能;客户界面采用浏览器,操作起来非常简单,大量的培训费用和时间又可以节省。在具体实施的时候,我们可以充分的利用JSP技术,WEB开发出来大大提高了应用的扩展性、功能性及可靠性,最终的结果就不是简单的HTML页面了,而是可在它之上构筑一种应用完整的平台。系统主要是针对新闻发布工作的管理。根据分析系统确定的功能以及目标,采用逐步求精、自顶到底的设计结构化方法,系统进行了结构设计。系统开发设计分析图如图4-1所示

图4-1系统开发设计基本设计图

4.2 系统设计
系统不仅要求功能完善,而且还要界面友好,因此,对于一个成功的系统设计,功能模块的设计是关键。由于本系统可执行的是一般性质的教学管理工作,本系统具有一般适用性,其所实现的功能满足学校对日常课程网站工作的管理,方便老师和学生的沟通。系统设计的图像的数据流分析阶段的需要结构化设计的概要说明的基础上,根据映射到软件体系结构的某些程序。首先,整个系统分成几个小的模块,小的问题,然后,进一步细分模块,添加细节。
据新闻发布系统的需求分析,确定此系统分为前台新闻显示和后台管理两类。前台新闻显示模块分为新闻浏览、新闻搜索、留言板等几个模块,管理员通过输入的用户名和密码登陆后台管理区,可以对后台进行管理页面、新闻类别管理、新闻管理、公告管理和系统设置等几个模块的操作[11]。如图3-2所示
在本系统中,根据对系统需求的分析,可以总结出如下的需求集:
(1)系统应有前台和后台;
(2)系统前台应该可以显示新闻栏目和新闻以及用于管理员登录系统后台的登录界面;
(3)一般用户应该可以在前台自由浏览新闻,包括选择性地浏览新闻即先选择新闻栏目再浏览新闻栏目下的新闻条目;
(4)注册用户可以发表相关新闻的评论,系统管理员应该可以登录到系统
后台;
(5)系统管理员应该可以对新闻栏目和新闻进行查看、修改、删除和添加操作,也可以对注册用户管理,同时还可以对相关新闻的评论进行管理。
由以上需求集分析可知:
(1) “新闻栏目”和“新闻”为系统的两个主要内容,所以应该分别作为一个类,而新闻栏目和新闻的显示需要管理类进行管理,系统管理员要对栏目和新闻进行查看、添加、修改和删除,也需要相应的管理类进行管理,所以,系统对于新闻栏目和新闻分别需要“栏目管理类”和 “新闻管理类”;
(2)系统中应该要有超级管理员、管理员、注册用户等角色,超级管理员是最高权限的,管理员是超级管理员发放的,注册用户是前台注册产生的。
(3)系统要保存信息,必须用到数据库,所以需要一个数据库连接的类;
(4)要将系统的各个功能执行成功,少不了相应的控制类。 因此,识别出系统主要的类:新闻管理类,栏目管理类,用户管理类,评论管理类数据库连接的连接对象类以及各个类。
4.3 系统数据库设计
该新闻系统的数据库包含三个表:新闻的基本信息表:fz_news、用户的留言表:Discuss和用户的信息表:users。
下面分别介绍这些表的结构。
1.新闻的基本信息表fz_news
基本新闻表fz_news用来保存网上新闻的基本信息,结构如表4-1所示。
编号 字段名称 数据结构 说明
1 id int 新闻编号
2 title varchar(150) 新闻标题
3 fenlei Varchar(50) 新闻分类
4 content text 内容
5 addtiome varchar(50) 提交时间
6 adder varchar(50) 登入用户名
7 visit int 浏览次数
8 gjz Varchar(500) 关键字
表4-1新闻基本信息表fz_news

在MySQL中,可以使用int、varchar和text等3种数据类型存储字符数据。表fz_news中的content字符是用来存储新闻的内容,由于一般新闻的正文内容都比较长选用text数据类型,在MySQL中 text数据类型也是可变长度的能储存大量数据。
2.用户的评论表pl
用户的评论表pl的作用,就是用来存储用户对新闻的评论,该表的结构如表4-2所示。
编号 字段名称 数据结构 说明
1 id int 编号
2 nid int 新闻ID
3 context Varchar(500) 新闻内容
4 member varchar(50) 评论人
5 addtime Varchar(50) 提交时间
表4-2评论表pl的结构表

3.用户信息表admin
用户信息表admin用来保存用户的基本信息,结构如表4-3所示。
编号 字段名称 数据结构 说明
1 id int 编号
2 username varchar(50) 用户名
3 password varcahr(50) 密码
4 creattime datatime 注册时间
5 flag int 性别
6 isuse int 年龄
7 logintimes int 登入时间
8 quanxian varchar(100) 权限
表4-3用户admin信息表

第五章 系统功能实现
5.1前台新闻发布系统界面
在地址栏输入:http://localhost:8080/xwtj游客可以进入前台新闻界面进行浏览新闻发布系统的如图5-1所示。

图5-1前台新闻发布系统界面

5.1.1用户注册界面
如果想更好的体验这个系统我们需要先注册一个会员,这样可以进行评论和更好的体验该系统,注册界面如图5-2所示

5-2用户注册页面
用户注册界面是通过MemberBean.java类中的personReg方法同过servlet类来完成向数据库中表member中存储数据,其注册代码:

public int personReg(String username,String password,String type,String realname,String sex,String bir,String sheng,String city,String telphone,String email,String question,String answer,String lastip,int off,String address){ password=MD5.MD5(password);String sql = "insert into member(username,password,type,regtime,ifuse,logintimes,lasttime,lastip)" +"values('"+username+"','"+password+"','"+type+"','"+date+"','"+off+"','0','"+date+"','"+lastip+"') ";DBO dbo = new DBO();dbo.open();try{int i = dbo.executeUpdate(sql);if(i == 1){ rs = dbo.executeQuery("select id from member where username='"+username+"'");rs.next();int mid = rs.getInt(1); String sql2 = "insert into pmember(mid,realname,sex,bir,sheng,city,telphone,email,question,answer,address)"+"values('"+mid+"','"+realname+"','"+sex+"','"+bir+"','"+sheng+"','"+city+"','"+telphone+"','"+email+"','"+question+"','"+answer+"','"+address+"')";int j = dbo.executeUpdate(sql2);if(j == 1)return Constant.SUCCESS;elsereturnConstant.SYSTEM_ERROR;}else{returnConstant.SYSTEM_ERROR; }}catch(Exception e){ return Constant.SYSTEM_ERROR; }finally{dbo.close();}
}

5.1.2用户登入界面
在用户登入后就能拥有一些基本的权限,评论权限并且用户可以阅读后进行相应的评论的发表用户登入界面如图5-3所示:

图5-3用户登入界面

用户登入界面也是通过MemberBean.java类查询表member中是否存在该用户其核心代码如下所示:
public int memberLogin(String username,String password,String type){
password=MD5.MD5(password);
String sql = “select password from member where username=’”+username+"’ and type=’"+type+"’ and ifuse=‘1’ “;
//String sql2 = “update member set logintimes=logintimes+1,lasttime=’”+date+”’,lastip=’"+lastip+"’ where username=’"+username+"’ ";
DBO dbo = new DBO();
dbo.open();
try{
rs = dbo.executeQuery(sql);
if(rs.next()){//如果有该用户名
String str = rs.getString(“password”);
if(str.trim().equals(password)){
//dbo.executeUpdate(sql2);
return Constant.SUCCESS;
}
else{
return Constant.PASSWORD_ERROR;
}
}
else{//如果没有
return Constant.NAME_ERROR;
}
}catch(Exception e){
return Constant.SYSTEM_ERROR;
}finally{
dbo.close();
}
}

5.1.3用户浏览新闻界面
用户登入后可以进行新闻的浏览,点击相应的栏目就可以阅读相应的新闻内容方便快速查找我们想看的新闻,如图5-4所示:

图5-4用户浏览新闻界面

5.2后台新闻界面系统
在地址栏输入:http://localhost:8080/xwtj/admin/login.jsp可以进入后台管理员登入界面如图5-2所示:
系统默认登录名admin 密码admin

图5-2管理员登入界面

后台管理界面是通过匹配表fz_admin表中的数据来完成登入其核心代码如下:
public int adminLogin(String username,String md5password,String password,String loginip,String useros){
String sql = “select * from fz_admin where username = '”+username+"’ and isuse=‘1’";
String sql4 = “update fz_admin set logintimes = logintimes+1 where username = '”+username+"’ ";
DBO dbo = new DBO();
String pwd;
dbo.open();
try{
rs = dbo.executeQuery(sql);
if(rs.next()){
pwd = rs.getString(“password”);
if(pwd.trim().equals(md5password)){
dbo.executeUpdate(sql4);
return Constant.SUCCESS;
}
else{
return Constant.PASSWORD_ERROR;
}
}
else{
return Constant.NAME_ERROR;
}
}catch(Exception e){
e.printStackTrace();
return Constant.SYSTEM_ERROR;
}finally{
dbo.close();
}
}

5.21后台管理界面
在管理员登入后可以进入后台管理界面,后台管理界面主要功能有系统账号管理,公告管理,新闻栏目管理,新闻资讯管理,注册用户管理,友情链接管理功能如图5-5所示:

图5-5后台管理界面

5.2.2新闻栏目管理界面
在新闻栏目管理中可以对前台新闻栏目进行添加和删除操作,这用可以对新闻栏目进行完善的管理,新闻栏目管理界面如图5-6所示:

图5-6新闻栏目管理界面

新闻栏目删除的核心代码如下:
if(method.equals(“delFenlei”)){//删分类
String id=request.getParameter(“id”);
int flag = newsBean.delFenlei(id);
if(flag == Constant.SUCCESS){
request.setAttribute(“message”, “操作成功!”);
request.getRequestDispatcher(sysdir+"/fenlei/index.jsp").forward(request, response);
}

还有新闻栏目的增加如图5-7所示:

图5-7新闻栏目增加界面

新闻栏目增加界面的核心代码如下:
if(method.equals(“addFenlei”)){//增加分类
String title=request.getParameter(“title”);
int flag = newsBean.addFenlei(title);
if(flag == Constant.SUCCESS){
request.setAttribute(“message”, “操作成功!”);
request.getRequestDispatcher(sysdir+"/fenlei/index.jsp").forward(request, response);
}
else{
request.setAttribute(“message”, “系统维护中,请稍后再试!”);
request.getRequestDispatcher(sysdir+"/fenlei/index.jsp").forward(request, response);
}
}

5.2.3新闻资讯管理界面
新闻资讯管理界面是新闻系统中的核心部分是对新闻的编辑和发布,新闻资讯管理,新闻资讯的发布,评论的管理的重要功能,新闻资讯管理如图5-8所示:

图5-8新闻资讯管理界面

新闻资讯管理界面核心代码如下:
if(method.equals(“DELNEWS”)){//删除新闻
String check[] = request.getParameterValues(“checkit”);
if(check == null){
request.setAttribute(“message”, “请选择要删除的记录!”);
request.getRequestDispatcher(sysdir+"/news/index.jsp").forward(request, response);
}
else{
int id2[]= new int[check.length];
for(int i = 0;i<check.length;i++){
int s = Integer.parseInt(check[i]);
id2[i] = s;
}
int flag = new NewsBean().delNews(id2);
if(flag == Constant.SUCCESS){
request.getRequestDispatcher(sysdir+"/news/index.jsp").forward(request, response);
}
else{
request.setAttribute(“message”, “系统维护中,请稍后再试!”);
request.getRequestDispatcher(sysdir+"/news/index.jsp").forward(request, response);
}
}
}

发布新闻资讯如图5-9所示:

图5-9发布新闻资讯界面

发布新闻资讯界面核心代码如下:
if(method.equals(“ADDNEWS”)){//增加新闻
String title = Filter.escapeHTMLTags(request.getParameter(“title”).trim());
String fenlei = request.getParameter(“fenlei”);
String content = request.getParameter(“content1”);
String gjz = request.getParameter(“gjz”);
if(content.length()>8000){
request.setAttribute(“message”, “对不起,内容不能超过8000个字符!”);
request.setAttribute(“method”, method);
request.getRequestDispatcher(sysdir+"/news/edit.jsp").forward(request, response);
}
else{
int flag = newsBean.addNews(title,fenlei,content, username2,gjz);
if(flag == Constant.SUCCESS){
request.setAttribute(“message”, “增加成功!”);
request.getRequestDispatcher(sysdir+"/news/index.jsp").forward(request, response);
}
else{
request.setAttribute(“message”, “系统维护中,请稍后再试!”);
request.getRequestDispatcher(sysdir+"/news/index.jsp").forward(request, response);
}
}

             }

新闻评论管理如图5-10所示

图5-10新闻评论管理界面

新闻评论管理界面核心代码如下:
if(method.equals(“mdelPl”)){//删评论
String id=request.getParameter(“id”);
int flag = newsBean.delMethod(“delete from pl where id=’”+id+"’");
if(flag == Constant.SUCCESS){
request.setAttribute(“message”, “操作成功!”); request.getRequestDispatcher(sysdir+"/news/pl.jsp").forward(request, response);
}
else{
request.setAttribute(“message”, “系统维护中,请稍后再试!”); request.getRequestDispatcher(sysdir+"/news/pl.jsp").forward(request, response);
}
}

第六章 系统测试
6.1测试概述
从测试的工作内容来看,就是找bug,那么什么是bug呢?一个简单的定义就是实际结果与预期结果不符。那么实际结果是怎么来的呢?这就涉及到了测试执行的部分,预期结果怎么来的呢?那就是从需求分析,测试范围的确定来的了。

6.2测试环境
Win10系统,360安全浏览器,数据库MySQL,开发工具STS

6.3测试内容
本系统为新闻发布及管理系统,首先对系统进行测试随机抽取一个模块进行点击看看系统是否能基本运行。测试内容主要分为前后台系统的登录模块测试和后台系统的新闻功能模块测试两个部分。
1.登入模块测试:该测试主要是前后台系统的注册功能和登录模块是否正常,由于分为普通用户,管理员用户,因此分别测试两种用户的所拥有权限是否正确。
首先输入网址:http://localhost:8080/xwtj/进行首页测试登入结构如图6-3所示:

图6-3首页界面

之后是用户登入界面测试结果图6-4所示:

6-3用户登入界面

登入成功界面如图6-4所示:

图6-4登入成功界面

第七章 总结
该系统的优点在于将系统一分为二,分为新闻发布系统前台和后台,分工明确,前台是给用户提供的能是用户更好的浏览新闻,后台界面是管理员管理,更新新闻,管理评论和用户信息等,其中普通用户登录前台新闻发布系统进行新闻的搜索、浏览和留言等操作,管理员登录后台新闻发布系统,进行新闻的发布、编写、修改删除等操作,对用户进行管理,能看到用户评论,对有些评论过激的用户进行删除,能一定程度上减少新闻发布系统前台的访问压力,前后台的分工也更加清楚明了,更利于各种用户的使用。
通过编写新闻发布系统我能更好的了解编程语言的强大,通过一些设计模式能是我们编写的系统更能更加强大和兼容性更加完美可拓展性更强,一款强大系统应该具有拓展性好,兼容性强,我们进行系统的设计时候多使用一些现在流行的设计模式可以是系统更加完善。

致 谢
我的论文系统作品还是有很多缺点的,但是整个从需求分析到系统设计到开发到测试的过程让我领略了计算机专业的真正魅力。我认为无论选择做什么,都要坚持从一而终的心态。在此也要再次感谢包括毕业设计老师在内的各位老师在毕业设计系统以及论文编写的过程中给予我的指导,感谢学院在论文开题报告、论文大纲中的宝贵建议,还要感谢同门的同学,在我的开发过程中遇到问题时给予我的帮助。回想整个论文的写作过程,虽有不易,却让我褪去了一身的浮躁,经历了思考和启示,也更加深切地体会了开发系统的精髓和意义,因此感到无比珍惜。本次的毕业设计能够顺利的完成,更要感谢学院三年来传授专业方面知识理论各位恩师,并能够运用于毕业设计中。正是有了各位老师的倾囊相授,才使我的毕业论文工作顺利完成,在此向学院以及全体老师表示由衷的谢意。感谢他们三年来的辛勤栽培。

最后感谢各位学者研究的学术成果,你们的文献使我受益匪浅,让我能够对专业知识方面有了更进一步的了解。同时,本毕业论文的编写也得到了同学们的热情帮助。感谢在整个毕业设计期间在各个方面给予过我帮助的伙伴们,在此,我再一次真诚地向帮助过我的老师和同学表示感谢!
最后,衷心感谢在百忙之中评阅论文和参加答辩的各位教师!

参考文献

[1]李嵬. 本溪日报社新闻管理系统的设计与实现[D].吉林大学,2016.
[2]秦佳伟. 基于B/S结构健身中心会员管理系统的设计与实现[D].吉林大学,2016.
[3]康祺林. 新闻网媒体管理发布系统的设计与实现[D].吉林大学,2016.
[4]刘申菊,田丹. 基于ASP.NET的校园新闻发布系统的设计[J]. 黑龙江科技信息,2016,(15):185.
[5]田超. 基于MySQL的计算机网络课程双语教学平台设计[D].内蒙古大学,2016.
[6]赵家胜. 基于安卓平台信息发布系统的设计与实现[D].云南大学,2016.
[7]史册. 新闻管理系统项目开发实验[D].吉林大学,2015.
[8]宋微. 基于J2EE的手机综合网站的设计与实现[D].吉林大学,2015.
[9]孙晓冬,张语涵. Web2.0时代价值共识困境的社会学分析[J]. 北京理工大学学报(社会科学版),2015,(06):154-160.
[10]唐晨. 小型新闻发布系统的设计与实现[D].吉林大学,2015.
[11]何希真. 基于用户反馈信息的新闻推荐系统设计与实现[D].山东师范大学,2015.
[12]许昭霞. 基于Web的信息发布与信息交流平台的设计与实现[D].吉林大学,2015.
[13] 蔡剑,景楠.Java Web应用开发:J2EE和Tomcat[M].北京:清华大学出版社,2004.

[14]舒艳秋. 新闻发布管理系统的研究与分析[D].云南大学,2015.
[15]周邦定. 客户负面新闻自动检索方法的研究与应用[D].中国科学技术大学,2015.
[16]郭蕊. 基于B/S结构的新闻发布系统[D].吉林大学,2014.

毕业论文:基于响应式页面的新闻资讯类门户网站的设计与实现相关推荐

  1. 响应式瀑布流布局新闻资讯技术博客织梦模板/DedeCMS自适应手机版游戏新闻网站源码下载

    响应式瀑布流布局新闻资讯技术博客织梦模板,DedeCMS自适应手机版游戏新闻网站源码下载.本套织梦模板采用织梦最新内核开发的模板,这款模板使用范围广,不仅仅局限于一类型的企业,游戏新闻.游戏博客类的网 ...

  2. 响应式NBA体育赛事资讯类织梦模板(自适应手机端)

    介绍: ★模板介绍★ 响应式NBA体育赛事资讯类织梦模板(自适应手机端),数据+评论+安装教程,资讯类网站适用,手机版同步PC站. 页面干净漂亮,网页宽度1200像素,纯手写DIV+CSS,易于优化, ...

  3. 帝国cms华北新闻网模板php地方门户新闻网站源码带采集,帝国CMS新闻资讯-地方门户网站模板(带手机版)...

    点击查看模板演示网站(因演示站服务器运行有点慢,请多等待一会) 点击进入手机网站效果预览(用支持html5浏览器火狐或者谷歌预览),或者直接用手机扫一扫进入手机演示站 该新闻资讯门户网采用帝国CMS管 ...

  4. 响应式极简新闻发布系统源码

    简介: 响应式极简新闻发布系统是基于ASP+ACCESS/MSSQL开发的响应式网站系统,可同时兼容PC端及移动端,也可以通过安装插件来关闭手机端.可以在后台安装大量插件与模板,一键安装实现网站的花样 ...

  5. 响应式极简新闻发布系统模板 v4.88

    介绍: 响应式极简新闻发布系统是基于ASP+ACCESS/MSSQL开发的响应式网站系统,可同时兼容PC端及移动端,也可以通过安装插件来关闭手机端.可以在后台安装大量插件与模板,一键安装实现网站的花样 ...

  6. 显示外部页面_前端设计-响应式页面开发基础

    随着终端设备类型的丰富,设备尺寸的型号也越来越多,如果实现前端页面在不同终端设备中,按照设备的尺寸型号进行自动布局,保证良好的人际交互体验效果,已经成为网页前端设计所需要考虑的问题,当前支持响应式开发 ...

  7. 阿里百秀响应式页面制作

    文章目录 案例:阿里百秀移动端首页 一.技术选型 二.需求分析 1.页面布局分析 2.屏幕划分分析 三.页面制作 1.创建文件夹结构 2.创建html骨架结构 3.引入相关样式文件 4.书写内容 he ...

  8. python 全栈开发,Day57(响应式页面-@media介绍,jQuery补充,移动端单位介绍,Bootstrap学习)...

    昨日内容回顾 ajax //get post 两种方式 做 请求get 主要是获取数据 post 提交数据同一个路由地址 既可以是get请求也可以是post请求 一个路由对应一个函数get请求acce ...

  9. 移动端自适应布局和响应式页面兼容移动端布局

    上篇博客讲到了移动端的常用布局模式之一:Flex布局,这篇博客咱们来了解一下移动端的另外两种布局--移动端自适应布局和响应式页面兼容移动端布局. 目录 一.移动端自适应布局 1.rem 什么是rem ...

  10. css响应式页面实现

    响应式页面 概念部分 1.响应式页面的由来 在很久很久以前,我们做的网页只是为了PC端的观看.使用,直到2000年,2.5G手机的出现,人们可以通过手机来访问网络,使得服务商们纷纷做了另一套网页为手机 ...

最新文章

  1. 【机器学习入门到精通系列】SVM与核函数(附程序模拟!)
  2. 协方差与相关系数的再理解
  3. Egret IDE中搜索,过滤文件,只搜索.ts
  4. Jmeter测试Mysql数据库-入门篇
  5. 头的各个部位示意图_微观古建—古建筑的墀头(一)
  6. yarn 安装 sass
  7. apm飞控制作_传统直接转矩控制
  8. Spring Web Services 3.0.4.RELEASE和2.4.3.RELEASE发布
  9. oracle10g静默升级,Linux下静默安装,升级和删除Oracle10g客户端
  10. Eclipse查看JDK源码报错——Failed to create the part’s controls
  11. svn上传文件最大多少_SVN控制上传文件尺寸
  12. iOS 上的FlexBox布局
  13. Latex如何设置超链接的字体颜色?如何更改颜色?
  14. springboot+hutool批量生成二维码压缩导出
  15. SN/CF 5W-40含义
  16. Excel 2010 多个窗口独立同屏显示方法——修改注册表方法
  17. java常见的命名规则
  18. WorkFlow工作流
  19. APP报毒的自查方法
  20. 计算机专业押韵口号16字,最牛班级口号霸气押韵16字

热门文章

  1. 360安全杀毒软件扫描计算机病毒,360木马查杀能扫描病毒吗
  2. 线代9讲 第八讲 相似理论
  3. matlab 中num2str函数的使用
  4. 服务器能不能用普通硬盘,服务器硬盘与普通硬盘之间的区别
  5. 深度网络梯度爆炸的原因、产生的影响和解决方法(常用激活函数)
  6. 胸片和CT断层图像是怎么来的?
  7. 全国计算机考试上传不了照片,报考2018计算机等级考试对上传照片有何要求?...
  8. FXMarket奇米股指:清明节期间产品休市和出入金安排通知
  9. c++十六进制加法_16进制数之间的加法
  10. python3官方说明文档_Python3 官方文档翻译 - 4.7 函数定义