李晨跃,刘克剑*,江静炜,樊述军
(1.西华大学 计算机与软件工程学院,四川 成都 610039;2.西藏飞跃智能科技有限公司,西藏 拉萨 850000;3.成都康赛信息技术有限公司,四川 成都 610051 )
基于Web2.0的博物馆新闻公告系统
李晨跃1,刘克剑1*,江静炜2,樊述军3
(1.西华大学 计算机与软件工程学院,四川 成都 610039;2.西藏飞跃智能科技有限公司,西藏 拉萨 850000;3.成都康赛信息技术有限公司,四川 成都 610051 )
摘要:传统的博物馆公告系统采用Web1.0模式开发,系统只能进行单向的消息发布,用户除了能进行消息浏览外,不能充分参与消息和公告的评论,因而网站不具备用户交互能力。鉴于此,笔者采用基于Web2.0模式设计了一个新的博物馆公告系统,该系统不仅能为用户提供新闻与公告的浏览功能,而且为能用户提供新闻与公告的评论功能。同时,为保证新闻的准确性与信息的安全性,系统设计为二级管理员模式,由普通管理员负责各个新闻子版块的新闻编辑,超级管理员负责新闻和公告的审核和发布。
关键词:新闻;交互;Web2.0;评论;二级管理员
如果说Web1.0是传统新闻传媒在互联网上的复制,Web3.0尚在萌芽状态,那么现在毫无疑问是Web2.0的时代,网络已成了人们生活和工作中不可缺少的组成部分。Web2.0是相对Web1.0的新一代互联网应用的统称。Web1.0的主要特点在于用户通过浏览器获取信息[1],而Web2.0更注重用户的交互,用户既是网站内容的浏览者,也是网站内容的建设者,在模式上由被动地接收互联网信息向主动创造互联网信息发展,因此设计上更具人性化。
为了跟上信息时代的步伐,很多博物馆搭建了自己的网站,其中新闻公告系统是其中不可或缺的组成部分,它属于整个博物馆网站的一个子系统,主要用于向普通游客和馆内工作人员及时更新博物馆的最新消息,比如节假日开馆时间、新增藏品简介、人员变动、放假时间等。
然而,传统的博物馆网站仅仅单方面由网站向用户提供信息,缺少用户与网站的互动功能,因此用户充当的只是信息获取者的角色。如果在博物馆新闻系统中加入评论功能,一方面用户之间可以相互交流心得看法,特别是一些知识渊博的人的评论具有相当高的价值,他们在一定程度上充当了编辑的角色,丰富了网站内容[2]。另一方面,博物馆的管理人员也可以获取用户意见和建议,以便更好地发展博物馆。
1系统需求分析与功能设计
本文设计的新闻公告系统采用Spring JDBC连接数据库,使用SQL Server2008作为后台数据库,存放已发布或待审核的新闻公告信息。根据浏览者能否对新闻和公告进行评论,将新闻与公告区分别设计两张数据表。
1.1用户需求分析
系统需求用户有三类[3],分别如下:
(1)普通访客与员工。该类用户能查看博物馆最近消息和公告,能对感兴趣的内容进行评论。
(2)分类管理员。该类用户根据博物馆发展动态,负责编辑各自版块的新闻,并可对各自版块的新闻进行删除、修改操作,但无权对公告进行处理。
(3)超级管理员。该类用户负责审核分类管理员编辑的新闻,确认后进行发布,而且还可以发布公告,并可对已发布公告和新闻进行修改和删除。
1.2系统特点
(1)网络环境下的多用户系统
博物馆网站包含了多个子系统,本文仅阐述新闻公告子系统。该子系统涉及新闻和公告两个实体,所以管理员要管理的信息分为新闻和公告两类。新闻按类别分成科研、教育、休闲等不同的子版块,每个子版块由各自的管理员负责,且子版块的管理员可编写新闻,编写结束后经由超级管理员审核后发布。公告仅由超级管理员负责发布、撤销或修改。
(2)数据的完整性和准确性
录入数据采用相应的html控件(如下拉列表、单选框等)来控制数据的准确性和完整性。同时在数据库中设计时采用触发器和check约束保证数据的完整性与一致性[4]。
(3)数据安全性
由于新闻公告版块用于博物馆近期或即将发生的重要事情的展示,所以必须保证数据库的安全性,否则可能对游客造成误导,影响博物馆的对外形象;另外,系统还需要保证服务器能够长期稳定无故障运行。为此,本文采用二级安全模式保障系统的数据安全性,其中第一级利用网络本身的安全要求对用户的使用权限进行了规定,第二级通过在程序模块中使用身份标识功能对管理员使用权限进行验证[5]。
(4)用户接口
新闻分为不同类别,每个类别通过相应的超链接相关联,通过点击可以跳转到该分类的内容显示区。对于管理员,专门设计了一个新闻编写接口,通过超链接跳转到新闻编辑界面,通过该界面,管理员可以编写需要发布的新闻内容。同时,在管理员登录后的界面中,除普通访客能看见的界面外,管理员还有待办事项显示区(如需重新编写的新闻等)。而在超级管理员的管理界面中,同样设计了一个“待办事项”显示区,如未审核的新闻和待发布新公告。
2系统功能设计
根据用户需求,系统主要有三个功能:
(1)编辑新闻与公告:由各版块管理员编辑,并提交超级管理员审核、发布。
(2)新闻与公告的修改和删除:由管理员对已发布的新闻与公告进行修改。
(3)新闻评论:用户可以对已发布的新闻发表进行相关评论。
为了保证所发布消息的准确性与安全性,系统使用了二级管理员模式管理信息的发布,其中版块管理员负责自己所管辖范围内相关新闻的发布,而超级管理员对普通管理员编辑的新闻进行审核,而用户的评论直接写入到表中,无需审核。具体系统工作流程如图1所示。
图1 系统流程图
根据系统功能需要,除了用户表外,还需设计5张数据表,分别是管理员表、新闻表、公告表、新闻评论表和公告评论表,它们的系统数据流图如图2所示。
图2 系统数据流图
(1)管理员表:用于存储系统所有管理员的信息,以权限级别来区分普通管理员与超级管理员。管理员登陆系统时,通过权限属性值来决定进入不同的管理页面,具体属性如表1所示。
表1 管理员表
(2)新闻表:用于存储所编辑或者发布的新闻内容,以Check项来区分是否审核 ,发布时间以系统时间为准,具体属性如表2所示。
表2 新闻表
(3)公告表:用于存储所发布的公告,具体属性如表3所示。
表3 公告表
(4)新闻评论表:用于存储用户的评论,由所评论的新闻id和用户id指定评论的新闻和用户。如果用户是游客,以游客表示用户身份。为了控制版面,限制用户评论的内容长度为2 000个字符,具体属性如表4所示。
表4 新闻评论表
3编码实现
以编辑新闻为例,这里给出部分关键代码。
(1)添加新闻映射处理:主要从数据库中读取新闻种类信息,部分核心代码如下:
@RequestMapping("/news/add")
Public ModelAndView ToaddNews(HttpServletRequest request) {
ModelAndView mav = new ModelAndView();
mav.clear();
HttpSession session = request.getSession();
System.out.println(((User)session.getAttribute("userSession")).getLogin());
List
mav.addObject("kind", kind);
mav.addObject("menu1", "back-news");
mav.addObject("menu2", "EditNews");
mav.setViewName("/newsBackend/ADMIN/newNews");return mav;}
(2)待审核新闻的读取:当审核员审核新闻时,获取新闻详细内容并显的核心代码如下:
@RequestMapping("/audit/show/{id}")
public ModelAndView show(@PathVariable("id") long id)
throws UnsupportedEncodingException {
ModelAndView mav = newModelAndView();
mav.clear();
NewsAndBulletin nab = ns.findById(id);
mav.addObject("news", nab);
mav.addObject("menu1", "back-news");
mav.setViewName("/newsBackend/AUDITOR/AUDIT");
return mav; }
(3)新闻审核:将审核员审核后的内容写入数据库,同时记录操作日志,核心代码如下:
@RequestMapping(value = "/audit/commit")
public ModelAndView finishAudit(
@RequestParam(value = "checkedBy", required = false) int checkedBy,
@RequestParam(value = "id", required = false) long id,
@RequestParam(value = "passed", required = false) Integer passed,
@RequestParam(value = "reason", required = false) String reason,
HttpServletRequest request) {List
boolean tag = true;// 提交时该新闻是否已经被审核
for (int i = 0; i < notcheckedNews.size(); i++) {
if (notcheckedNews.get(i).getId() == id) {
tag = false;continue;}}
NewsAndBulletin news;
int count = 0;// 记录操作数
news = new NewsAndBulletin();
String view = "";
news.setCheckedBy(checkedBy);
news.setId(id);
news.setPassed(passed);
if (passed == 1) reason = "";
news.setReason(reason);
HttpSession session = request.getSession();
User user = (User) session.getAttribute("userSession");
NewsRecord nrecord = new NewsRecord();
nrecord.setOperation("AUDIT");
nrecord.setOperater_id(user.getUserId());
ModelAndView mav = new ModelAndView();
mav.clear();
System.out.println(news);
if (tag == false)// 提交时还未被审核
{count = ns.AfterAudit(news);
if (count == 1) {
nrecord.setOperatedItem(news.getId());
ns.insertNewsRecord(nrecord);// 记录日志
} }
return mav;}
4结语
为了提升数字博物馆服务公众的水平,一个健全的新闻公告系统必不可少。本论文设计了基于Web2.0的博物馆新闻公告系统,使用Spring框架通过JDBC连接SqlServer2008数据库。系统采用二级管理员模式进行管理,其中普通管理员进行新闻的编辑与修改,而超级管理员负责新闻的审核发布。用户除了能获取新闻信息外,还具有评论功能。随着Web3.0的到来,博物馆新闻公告系统将会以社交系统的形式展现到公众面前,用户将拥有自行开贴、站内交流等社交功能外,还可以由博物馆方提供的在线客服实时解答用户提问。
[参考文献]
[1]Phodal.互联网发展与Web2.0[EB/OL].(2011-06-15)[2016-02-16].http://blog.sina.com.cn/s/blog_5b6db91f0100sgrh.html.
[2]Zac昝辉.Web2.0网站的妙处[EB/OL].(2006-11-22)[2016-02-16].http://www.seozac.com/operation/Web20-advantage.
[3]李蓉,邹坤,徐翔.博物馆多媒体公共服务系统的研究和设计[J].计算机技术与发展,2010, 20(8):234-238.
[4]闪四清.SQL Server2008基础教程[M].北京:清华大学出版社,2010:139-153.
[5]刘绍南.Web2.0环境下数字博物馆服务模式探讨[C]//2009北京数字博物馆研讨会,2009.
(责任编辑:张凯兵)
A News Publishing System of Museum Based On Web2.0
Li Chenyue1, Liu Kejian1*,Jiang Jingwei2,Fan Shujun3
(SchoolofComputerandSoftwareEngineering,XihuaUniversity,Chengdu,Sichuan610039,China; 2.TibetFeiYueIntelligenceScienceandTechnologyCo.,Ltd,Lhasa,Tibet850000,China; 3.ChengduKangSaiInformationTechnologyCo.,Ltd,Chengdu,Sichuan610051,China)
Abstract:The traditional museum public announcement information systems are usually developed in Web1.0 mode and therefore work in a one-side way to publish messages, where the users can only browse but cannot comment the news without interaction capability with the museum system. To address the above issue, the authors implement a novel museum public announcement information system based on Web2.0 mode. With the system, users can not only browse the museum of news and announcements, but also release their comments and interact with the museum site. Meanwhile, in order to ensure the safety and accuracy of information, the system is designed in a two-level administrator mode, i.e., the ordinary administrators are responsible for editing each subsection of news while the super-administrators for checking news before publishing.
Key Words:news;interaction;Web2.0;comment;two-level administrator
收稿日期:2016-02-16
基金项目:国家科技支撑计划项目 (2011BAH26B01);数字空间安全保障四川省高校重点实验室开放基金(szjj2015-055);
作者简介:李晨跃(1991-),男,贵州安顺人,西华大学计算机与软件工程学院硕士研究生。
中图分类号:TP311.52
文献标志码:A
文章编号:2095-4824(2016)03-0042-04
四川省教育厅重点项目(16ZA0165);西华大学校重点项目(Z1222625)
刘克剑(1974-),男,湖北随州人,西华大学计算机与软件工程学院副教授,硕士生导师,本文通信作者。