针对X府的微博网络舆情测控管系统的设计与实现.doc_第1页
针对X府的微博网络舆情测控管系统的设计与实现.doc_第2页
针对X府的微博网络舆情测控管系统的设计与实现.doc_第3页
针对X府的微博网络舆情测控管系统的设计与实现.doc_第4页
针对X府的微博网络舆情测控管系统的设计与实现.doc_第5页
已阅读5页,还剩41页未读 继续免费阅读

下载本文档

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

文档简介

此文档收集于网络,如有侵权,请联系网站删除 实训(论文)题目名称:针对政府的微博网络舆情测控管平台的设计与实现后台院系名称:班 级:学 号:学生姓名:指导教师: 15年 7 月 此文档仅供学习与交流论文编号:(201100824309) 针对政府的微博网络舆情测控制平台的设计与实现后台的设计与实现Design and Implementation of the Platform for Measurement and Control System for the public opinion of the governments microblog Network background院系名称:班 级:学 号:学生姓名:指导教师: 15 年7月摘要近年来,随着互联网的迅猛发展,网络媒体作为一种新的信息传播形式,已深入现代人们的日常生活。网友言论活跃度已达到前所未有的水平,不论是国内还是国际重大事件,都能马上形成网上舆论。公众通过互联网自由表达观点、传播自己的看法和思想并进而形成社会舆论已成为当今舆情产生、传播的主要途径,这些意见形成一种强大的舆论压力,其影响已经大大超过了传统媒体。研究针对政府的网络舆情测控管系统成为当今的主要研究热点之一。政府部门通过网络舆情测控管平台可以有效的对针对政府的负面舆论进行引导,使其不会让人民对政府的印象变坏,甚至是仇视政府。网络舆情测控管平台的运行过程主要是先通过监测系统监测舆情,发现有对政府负面的舆情报告给舆情控制系统,然后由舆情控制系统来进行引导舆情,最后交由舆情管理系统来实行。这样就能引导好针对政府的舆情走向,使得人民不会因为负面舆情而仇视政府。关键词:网络监测;舆情管理;舆情控制AbstractIn recent years, with the rapid development of Internet, network media, as a new form of information dissemination, has deep into the modern peoples daily life. Netizens speech activity has reached an unprecedented level, both domestic and international events, can form the online public opinion right away. The public via the Internet free expression viewpoint and spread their views and thoughts in turn the formation of public opinion has become the main way to produce and spread of todays public opinion. Research on the governments negative network public opinion monitoring,control and management system become one of the main research focus of today.Government departments through the network public opinion tt&c platform units can be effective against the governments negative public opinion to guide, will not let the people to the governments bad impression, and even hostile to the government. Network public opinion of tt&c platform operation process is mainly through the first public opinion monitoring system for monitoring, found that public opinion report to the public opinion about the governments negative control system, and then by the control system to guide public opinion, public opinion at last to the public opinion management system to implement. Against the government to guide public opinion, makes people will not hostile to the government because of the negative public opinion.Key words: Public opinion monitingor;Public opinion management;Public opinion control目 录摘要Abstract第1章 引 言11.1 课题来源11.2 研究背景11.3 研究意义31.4 研究目的41.5 本人贡献51.6 论文的组织机构5第2章 相关知识概述62.1 XML技术6 2.1.1 XML技术的组成6 2.1.2 XML的优点82.2 SAX技术92.3 JDBC技术102.4 数据库102.5 Java swing12第3章 系统的测试143.1数据的获取143.2数据的存储153.3数据的处理153.3.1数据的查询16 3.3.2数据的修改173.3.3数据的删除183.4本章小结19第4章 系统的测试20 4.1 测试与实现环境204.2 测试目的204.3 系统测试内容204.4 系统模块测试204.4.1数据库的存储模块测试20 4.4.2数据查询模块测试214.4.3数据修改模块测试234.4.4数据库的删除模块测试254.5本章小结27第5章 总结285.1 论文总结285.2 设计中的不足28参考文献29附 录30第1章 引 言1.1 课题来源课题来自河南省重点科技攻关计划项目“针对政府的微博网络舆情测控管系统的设计与实现”()1.2 研究背景互联网是人们交流和信息传播的主要媒体之一。而在众多的互联网交流平台中,尤以使用微博的人数为巨。由于微博自身的网络虚拟性、身份隐蔽性、信息即时性等特点,从而使越来越多的人愿意用微博来阐述自己的真实观点,并且对热点时事进行关注和评论,对政务微博进行关注和监督。根据CNNIC统计,2014年新浪微博用户数量已达2.49亿,而政务微博数量已经超过25万个。于是网络舆情在微博平台的急速发展中应运而生。并且微博网络舆情已经成为当今社会最主要的社会舆论表述之一。广大热心网友通过对新闻对热点的关注,通过对政务微博的评论提议,对政府部分的管理决策产生了有力的影响,同时它在一定程度上影响着社会舆情的发展趋势。如今,微博已经成为广大网民发布、获取和传递信息的一个重要载体,所以通过利用微博这个便捷的渠道,发掘出实时热点、舆论导向以及潜在的未爆发的危险因素,从而建立一个完善的针对政府的微博舆情管理系统势在必行。针对政府的微博舆情管理平台及时获取相关信息,准确分析微博热点,按需呈现分类管理的能力,对于政府部门倾听舆论,分析掌握当前局势,并对突发事件进行管理决策,从而对保障国家和社会的安全、稳定具有重要的意义。网络舆情是指公众借助网络传播工具表达自身意见、观点和诉求所形成的新媒介舆论场,它既不同于传统媒体的新闻舆论场,也不同于现实社会交往中的口头舆论场,有着其自身的鲜明特点,而微博很显然是网络舆情的来源代表之一。我们可以将网络舆情的特点归纳为以下几方面:一、网络舆情的自由性微博是完全开放的,它使得人们的公共空间得以拓宽,它使得人们可以自由的,方便的对各类社会事件发表意见,甚至是讨论国家政事,所以在微博平台中每个人既是舆情信息的发布者和倾听者,同时又是舆情信息的传播者。每个人都有自由的微博使用权和发表权,通过朋友圈的互相关注和传播,以及对政务微博的评论关注,民意表达更加畅通。由于互联网的匿名特点,大多网民都愿意发表自己的真实意见,表述自己的舆论立场。因此,网络舆情比较客观地反映了现实舆论热点情况,比较真实地体现了不同群体的价值。二、网络舆情的交互性因为微博的便利,所以大多人都愿意参与其中。在微博上,往往社会上发生了什么大事都能够在其中得以讨论,而大部分博友对某一事件发表了意见之后,关注他的博友就会对该事件相关的微博进行转发和评论。这就形成了博友之间的互动,而在其中当然会有不同意见的时候,这时候就会相互争议和交汇,从而形成舆情交互。这种博友之间的实时互动性交流,不仅使得各种意见和观点得以实时表达,同时也使得讨论更加深入,舆情更加多样,所以,网络舆情是群众意见观念和情绪心态的集中反映。三、网络舆情的多元性微博上舆情的主题极为宽广,话题的确定往往是自发、随意的。由于博友们是来自各个领域不同层次的,所以在对事件的理解与评论就会相差很大,而且由于微博平台的言论是自由的,可以被随意的转发与评论。且由于使用微博的是来自不同领域不同层次的,所以对事件的理解就会产生多元性。继而使得舆情产生多元性。四、网络舆情的偏差性。人们对发生的事件的评论往往会带有主观因素,而若该事件若有损评论者的利益,那么这时候受主观因素的影响,博友的评论就会带有情绪化,很难客观的评论。更有甚者会发布一些消极情绪或者错误信息,而这些信息在当事人的情绪化下,很有可能会得到一部分人的响应,最后发展成有害舆论。五、网络舆情的突发性。由于微博的使用已经深入到了人们的生活中,基本上若发生一件大事,过不了一会微博上就会出现该事件的讨论。所以可以说网络舆论的形成往往非常迅速的,而若该事件被有心人错误的引导且又有多人跟风,那么该事件就会聚集起相当大的声势,甚至影响到政府部门的决策。鉴于此,应研究出一个可对针对政府的微博负面舆情进行有效监测控制和管理的系统,以使舆情走向向着有利于社会和谐、人们生活稳定的方向发展。1.3 研究意义在当今社会中基本上每发生意见重大事件,在微博上都会引起相应的谈论。无论是民生政事或者是娱乐八卦中的重大事件,都会引发热议。而在各种微博平台上,博友们评论这些热门话题都会带着主观性甚至是情绪化,所有有时候某些有心人发布的一些消极或者错误信息就会产生很坏的影响,甚至对有关部门的决策和施政产生了影响。所有说建立网络舆情监控和管理体系势在必行。而任何事物都是都两面性的,网络就是一把双刃剑。一方面,网络的高速传播极大地提高了信息传播的效益,推动了人类社会的向前发展。另一方面,网络产生的舆情作为当今民情民意的集中表现,其巨大的影响力不仅是对社会重大事态发展的影响,也日益渗透到政治层面,逐渐成为政府倾听民生,了解民意的一个重要渠道,这也就加大了对社会管理的难度。如何对这些网络舆情加以有效的管理已迫在眉睫,因此,建立一个网络舆情监控和管理体系势在必行。而且由于互联网的发展异常迅猛,互联网上的信息传播快且频繁所以使用互联网的人数越来越多。而且各种网络商业也给人们带来了许多便利,但是互联网的高速发展也给人们的生活带来了不少冲击和影响。其中微博平台上信息的传播变得越来越活跃,不少新鲜的热点以及言论都在影响着人们的生活与工作,所以及时获取微博上的热门信息可以更快的了解到当前的网络舆论走向并及时预警来进行控制和管理。当前,网络发展日新月异,网民人数成几何级增长。随着各种网络新技术的出现和应用,网络的内容更加丰富,网络的社会影响力更加强大。而且由于网络的传播速度快且操作方便,所以在与各种传统媒体之间的竞争就相对的能够胜出很多。把握网络舆情全面考验政府官员。网络监督以其不受时空限制、举报者隐蔽性的特点,弥补了现行体制内监督体系的体制性弱点。更为重要的是,监督本来就是公民的基本权利和权力,网络监督不过是人民用自己的眼睛盯住原本属于人们的权力而已。某些地方出现对领导者个人廉洁方面的质疑,往往被当作 “诽谤罪”,暴露出某些领导者现代人权意识、法制意识的缺失。正因为这样,才更要建立网络舆情监控和管理体系,政府是人民的公仆,应该受到广大的群众的监督。相比较网络上已面世的同类型系统,本课题与其最大的区别在于对网络上敏感信息的浏览量及传播趋势达到一定程度时,系统将会对此信息进行预警分析,并将其中针对政府的负面舆情筛选出来,然后通过舆情管理系统对这些负面舆情进行正确的引导,使其不至于去误导人们的观念甚至于仇视政府。最后通过舆情管理系统对其进行处理。网络舆情测控管平台的出现将会使网络信息监管部门或各类企事业单位及个人对网络上的敏感信息或与企事业本身相关的信息及网民的思想多了一些了解,以便对某些信息的处理方案进行更改或对某些信息的恶性传播和泄露进行预防与处理。1.4 研究目的网络舆情测控管平台是专门为政府部门开发的社会舆论监控系统,通过对各类微博平台的实时监测,帮助各级政府部门及时把握当地的社会舆论、市民热点讨论的话题及突发事件的意见等,为各级政府领导的决策提供辅助服务。而舆情危机的产生和频发,不仅会造成不良社会舆论影响,而且还会干扰政府单位的正常工作,影响事件波及者的正常生活。而当下政府部门应对突发舆情事件基本上都非常不合理。对于突发的舆情事件,政府部门首先想到的都是“躲”,即对突发事件采取不理睬,不回应的方式。然后若是“躲不过”则会想到强行封堵打压,而这么做的后果往往会激起公众的逆反心理,从而加速负面舆情事件的爆发。因此就需要各级政府部门成立相应的舆情监控和管理部门,使得政府部门在应对这些突发的敏感事件,能够独立的进行处理。而要做好处理,就要从事前、事中、事后三个环节来入手,并建立起相应的有效的网络舆论监控和管理机制。一是事前要建立好对舆情的监测能够对针对政府的负面舆情实时监测出来,并且对该类舆情正面引导。对于突发事件要进行实时监测,切实做到一有误导性的突发事件发生就能够及时捕捉到该信息二是事中要建立好对舆情的控制,要“机智”的应对媒体采访的。在突发的具有误导性质的事件处置工作中,要指定一名对相关政策、原则、形势比较了解、有较强应对媒体采访的发言人。三是事后要建立新闻及时发布机制。要明确一名负责人来协调网络舆论引导工作,对于突发的误导性事件要召开新闻发布会,并且对这些误导性事件的预处理能够统一口径,然后借助主流媒体,在第一时间发布相关信息,说明事实真相,牢牢把握工作的主动权。最后若是以上工作都无效,那么对于那些针对政府并误导的人民的负面舆情就需要动用政府的力量对其进行管理,必要时还可以限时给类错误信息的发布。部分被网络人员恶意炒作的突发事件,地方政府部门既要召开新闻发布会及时澄清虚假信息,也需要专门针对网络舆情或是报纸评论在内的整个舆论做出及时反应,所以在这我们就需要有针对网络舆情的应急机制,不然对舆论尤其是网络舆论的引导就会变得很困难。所以,迫切需要建立一种能够提前评估舆情态势,及时跟跟踪舆情发展,合理管理舆情导向的应急机制。1.5 本人贡献在此次设计中,本人的主要贡献是:了解课题及课题相关技术的发展现状,学习数据库设计理论和程序设计。1) 参与完成系统总体设计方案和数据库逻辑结构设计。2) 参与数据库的设计和实现。3) 编写数据库中数据的获取和存储相关文档。4) 编写数据库中数据的增删改除的相关文档5) 撰写毕业设计的相关文档。1.6 论文的组织机构本论文包括中英文摘要、目录、引言、正文、结论、参考文献、致谢,共七个部分。其中,论文的引言、正文和两部分的组织安排如下:第1章 引言。介绍了研究背景,课题来源,研究意义。第2章 相关知识概括。本章介绍了整个系统和本系统功能实现所用到的相关技术知识。第3章 系统设计和实现,本章介绍了针对政府的微博网络舆情测控管系统的后台系统中的数据的获取与处理的介绍和详细设计。第4章 系统的测试。 本章介绍了后台的数据的获取和存储,还有对数据库中的数据的增删改的处理操作的测试。第5章 总结。对论文的基本写作和设计的总结,以及论文及设计的不足。第2章 相关知识概述在实现整个后台系统的过程中遇到了许多问题,下面罗列出了系统中所用到的关键技术。2.1 XML技术首先XML是一种可扩展标记语言同时它又是一种标记语言,很类似HTML。它的设计宗旨是传输数据,而非显示数据,它的标签没有被预定义,但是使用约束的XML文档设计具有自我描述性。最后它是WC的推荐标准所以在该系统中我选择了它。XML与Access,Oracle和Mysql等数据库不同,数据库提供了更强有力的数据存储和分析能力,例如:数据索引、排序、查找、相关一致性等,XML仅仅是存储数据。事实上XML与其他数据表现形式最大的不同是:他极其简单,表面上看这是一个缺点但实际上这是一个看上去有点琐细的优点,但正是这点使XML与众不同。WeiboCrawler软件授权解决了程序访问API的用户身份认证问题。新浪API可根据请求内容的不同,返回特定的XML。XML作为一种跨平台的强结构性扩展标记语言,因为所有的用信息都被对应的标签所标记,例如:id49648/idnameBaobao/name,所以用户可以便捷地找出相应信息并理解其中内容。本文的程序由JAVA语言开发实现,利用SAX解析技术可以轻松实现XML文件的读取。2.1.1 XML技术的组成1)XML树形结构XML 文档必须包含根元素,该元素是所有其他元素的父元素。XML 文档中的元素形成了一棵文档树。这棵树从根部开始,并扩展到树的最底端。如下图2-1所示。图2.1 XML树形结构2)XML的具体组成部分(1)文档声明。在编写XML文档时,需要先使用文档声明,声明XML文档的类型。(2)元素。元素是XML以及HTML文档的主要构建模块。XML元素指XML文件中出现的标签,一个标签分为开始标签和结束标签,一个标签有包含标签体与不包含标签体的两种书写形式。一个标签中也可以嵌套若干子标签。但所有标签必须合理的嵌套,绝对不允许交叉嵌套。格式良好的XML文档必须有且仅有一个根标签,其它标签都是这个根标签的子孙标签。对于XML标签中出现的所有空格和换行,XML解析程序都会当作标签内容进行处理。由于在XML中,空格和换行都作为原始内容被处理,所以,在编写XML文件时,使用换行和缩进等方式来让原文件中的内容清晰可读的“良好”书写习惯可能要被迫改变XML 元素必须遵循以下命名规则:区分大小写名称可以含字母、数字以及其他的字符;名称不能以数字或者标点符号开始;名称不能以字符 “xml”(或者 XML、Xml)开始;名称不能包含空格避免 : 字符。冒号会被转换为命名空间来使用。(3)属性。属性可提供有关元素的额外信息而一个标签可以有多个属性,每个属性都有它自己的名称和取值属性值一定要用双引号()或单引号()引起来定义属性必须遵循与标签相同的命名规范。在XML技术中,标签属性所代表的信息,也可以被改成用子元素的形式来描述。同时避免 XML 属性?因使用属性而引起的一些问题,如:属性无法包含多个值,属性无法描述树结构,属性不易扩展,属性难以阅读和维护请尽量使用元素来描述数据。而仅仅使用属性来提供与数据无关的信息。(4)注释。Xml文件中的注释采用:“” 格式。XML声明之前不能有注释,注释不能嵌套。(5)CDATA区 、特殊字符。在编写XML文件时,有些内容可能不想让解析引擎解析执行,而是当作原始内容处理。遇到此种情况,可以把这些内容放在CDATA区里,对于CDATA区域内的内容,XML解析程序不会处理,而是直接原封不动的输出。(6)处理指令。处理指令,简称PI。处理指令用来指挥解析引擎如何解析XML文档内容。例如,在XML文档中可以使用xml-stylesheet指令,通知XML解析引擎,应用css文件显示xml文档内容。处理指令必须以“”作为结尾,XML声明语句就是最常见的一种处理指令。2.1.2 XML的优点1) 更有意义的搜索数据可通过XML进行唯一的标识。没有XML,搜索软件必须了解每个数据库是如何构建的。这实际上是不可能的,因为每个数据库描述数据的方法都是不同的。有了XML,情况就完全不同了。例如,学生信息可以按照学号、姓名或其他的标准分类。这样搜索就变得十分方便。 2) 开发灵活的Web应用软件 数据一旦建立,XML能被发送到其他应用软件、对象或者中间层服务器做进一步地处理。它也可以被发送到桌面用浏览器浏览。XML和HTML、脚本、公共对象模式一起为灵活的三层Web应用软件的开发提供了所需的技术。 3) 不同来源数据的集成 现在搜索多样的不兼容的数据库实际上是不可能的。XML能够使不同来源的、结构化的数据很容易地结合在一起。软件代理商可以在中间层服务器上对从后端数据库和其他应用处发来的数据进行集成。然后,数据就能被发送到客户或其他服务器上做进一步的集成、处理和分发。4) 多种应用得到的数据 XML的扩展性和灵活性允许它描述不同种类应用软件中的数据,从搜索到的Web页到数据记录。同时,由于基于XML的数据是自我描述的,数据不需要有内部描述就能被交换和处理。 5) 本地计算和处理 XML格式的数据发送给客户后,客户可以用应用软件解析数据并对数据进行编辑和处理。使用者可以用不同的方法处理数据,而不仅仅是显示它。XML文档对象模式(DOM)允许用脚本或其他编程语言处理数据。数据计算不需要回到服务器就能进行。分离使用者查看数据的界面,使用简单、灵活、开放的格式,可以给Web创建功能强大的应用软件,这些软件原来只能建立在高端数据库上。 6) 数据的多样显示 数据发到桌面后,能够用多种方式显示。通过以简单、开放、扩展的方式描述结果化的数据,XML补充了HTML,被广泛地用来描述使用者界面。HTML描述数据的外观,而XML描述数据本身。由于数据显示与内容分开,XML定义的数据允许指定不同的显示方式,使数据更合理地表现出来。本地的数据能够以客户配置、使用者选择或标准规定的其他方式动态地表现出来。CSS和XSL为数据的显示提供了统一且标准的机制。 2.2 SAX技术SAX是一个解析速度快并且占用内存少的XML解析器,它是由一组接口和类构成的。在运行中的各方面表现都优于DOM API,但SAX用起来不像DOM那样直观。SAX它并不是由W3C官方所提出的标准,可以说是民间的事实标准。实际上,它是一种社区性质的讨论产物。虽然如此,在XML中对SAX的应用丝毫不比DOM少,几乎所有的XML解析器都会支持它。SAX是基于事件驱动的而DOM是文档驱动,它很类似于标签库的处理机制,在标签开始,标签结束以及错误发生等等地方调用相应的接口实现方法。与DOM比较而言,SAX是一种轻量型的方法。SAX一遍就能处理好XML文档,它所需的处理时间大大减少。可以适合比较大的XML文件的处理工作。SAX由4部分组成,即startElement(),characters(),endElement() ,DefaultHandler类。其中startElement() 回调在每次 SAX 解析器遇到元素的起始标记时被调用,characters() 回调为字符数据所调用,endElement() 为元素的结束标记所调用,DefaultHandler类来实现所有这些回调,并提供所有回调方法默认的空实现。SAX解析的步骤一般分为5个步骤,首先使用SAXParserFactory创建SAX解析工厂然后通过SAX解析工厂得到解析器对象接着通过解析器对象得到一个XML的读取器再然后设置读取器的事件处理器最后解析xml文件。2.3 JDBC技术 简单来说,JDBC是一种可用于执行SQL语句的Java API。它是SUN制定的一个Java连接数据库的标准。那么JDBC和数据库的驱动是什么关系呢?简单来说,JDBC是规范,抽象层而数据库驱动则是具体的表现。同时JDBC规范是由一些抽象类和接口组成。它的功能可分为三部分,分别为:和一个数据库建立连接;向数据库发送SQL语句;处理数据库返回的结果。JDBC编码的步骤一般可分为6步:1、加载驱动程序并注册驱动2、获取与数据库的连接3、得到代表SQL语句的对象,并发送SQL给数据库4、如果有查询结果,得到封装了查询结果的对象5、遍历结果6、释放占用的资源2.4 数据库 首先什么是数据库呢?其实数据库就是一个文件系统,它通过标准SQL语言操作文件系统中的数据。它的主要功能其实说白了就是用来存放软件系统的数据。而在该系统中我主要使用的是Mysql数据库。首先Mysql是一款小型的并且免费的一个数据库,所以它比较适合个人的程序开发或者小公司内使用。而且它将数据保存在不同的表中,而不是将所有的数据全都保存在一个大的仓库中,所以这样就增加了速度并提高了灵活性。MySQL的SQL为“结构化查询语言”。它是访问数据库最常见的标准操作语言。那么又为什么现在基本上都使用数据库来存放系统中的数据呢?首先数据的形式有很多种,如文字、符号、图形、声音等。在以前程序员要处理数据,是将其处理过程编成程序文件,再将其组成数据文件然后在需要所需的数据的时候用程序来调用。在计算机应用迅速发展的情况下,这种文件式管理方法便显出它的不足。首先它使得数据通用性差、不便于移植、在不同文件中存储大量重复信息、浪费存储空间、更新不便等。而数据库系统便能解决上述问题。首先数据库系统它是直接对数据进行管理,它将系统中的所有数据都存储到数据库当中然后数据库系统与各种应用系统接口相连接,使得应用系统可以方便快捷的使用数据库当中的数据。一般一个数据库系统可以分为数据库与数据管理系统两个部分。2.4.1 安装与配置Mysql数据库安装Mysql数据库与我们平常安装普通的应用程序是基本相同的,首先当然是下载一个Mysql数据库的安装包。然后选择系统默认的选项即可。但是它的配置与一般的应用软件就不同了,所以接着再来说下Mysql的配置。首先配置mysql 默认字符集默认latin 等价于 ISO-8859- 改为 utf8然后Include Bin Directory in Window Path 将mysql/bin 目录配置环境变量path勾选接着输入超级管理root 密码最后测试mysql是否安装成功即启动cmd窗口输入mysql -u root -p回车输入密码root,出现 mysql即 安装成功。在最后我们当然还需要重置一下root密码。首先停止mysql服务器 运行输入services.msc 停止mysql服务接着在cmd下输入mysqld -skip-grant-tables启动服务器光标不动,然后新打开cmd 输入mysql -u root -p 不需要密码,输入use mysql;回车update user set password=password(abc) WHERE User=root接着关闭两个cmd窗口在任务管理器结束mysqld 进程最后在服务管理页面重启mysql 服务密码修改完成 2.4.2 结构化查询语言SQL 对数据库服务器中数据的管理,必须使用客户机程序成功连接以后,再通过必要的操作指令对其进操作,这种数据操作指令被称为SQL语言,即结构化查询语言。MySQL支持SQL作为自己的数据库语言,SQL是一种专门用于查询和修改数据库里的数据,以及对数据库进行管理和维护的标准化语言。SQL语言具有三个特点,语言一体化特点,非过程化特点以及两种使用方式,统一的语法结构特点。简单点的来说就是SQL语言集数据查询、数据操纵、数据定义和数据控制功能于一体并且它是面向集合的非过程语言但是它又类似自然语言,简洁易用最后他既是自含式语言,又是嵌入式语言。可独立使用,也可嵌入到宿主语言中。又因为它的大部分操作都不需要用户来操作所以不同的数据库系统可以使用相同的SQL语言作为数据输入与管理的接口。而且SQL语句具有极大的灵活性,一个SQL语句往往可以起到操作量小却价值极高的作用。而且现在的大部分数据库都支持SQL语言作为查询语言。SQL语言包含四个部分:1) 数据定义语言:用来定义数据库的对象,如数据表、视图、索引等。2) 数据操作语言:在数据库表中更新,增加和删除记录。3) 数据查询语言主动:数据查询语言。4) 数据控制语言方面:只用于设置用户权限和控制事务语句。2.5 Java swingSwing是一个用于开发Java应用程序用户界面的开发工具包。它以抽象窗口工具包(AWT)为基础使跨平台应用程序可以使用任何可插拔的外观风格。Swing开发人员只用很少的代码就可以利用Swing丰富、灵活的功能和模块化组件来创建优雅的用户界面。2.5.1 JComponentSwing 的整个可视组件库的基础构造块是 JComponent。它是所有组件的父类。它是一个抽象类,所以不能创建 JComponent,但是作为类层次结构的结果,从字面意义来说它包含了数百个函数,Swing 中的每个组件都可以使用这些函数。显然,有些概念要比其他概念重要,所以对于本教程,需要学习的重要的东西是:JComponent 不仅是 Swing 组件的基类,还是定制组件的基类(有关的更多信息在“中级 Swing”教程中)。它为所有组件提供了绘制的基础架构 一些方便进行组件定制的东西(同样,在“中级 Swing”中,有关于这个主题的更多信息)。 它知道如何处理所有的键盘按键。所以类只需要侦听特定的键。包含 add() 方法,可以添加其他 JComponent。换种方式来看,可以把任意 Swing 组件添加到其他任何 Swing 组件,从而构造嵌套组件。2.5.2 JButtonSwing 中的基本动作组件 JButton,是与每个窗口中都能看到的 OK 和 Cancel 一样的按钮;这些按钮所做的正是希望它们做的工作在单击它们之后,将发生一些事情。如果想让它们做出你希望的一些动作,必须定义发生的内容。用来改变 JButton 属性的方法与 JLabel 的方法类似。它们控制文本、图片和方向:get/setText(): 获取/设置标签的文本。 get/seticon(): 获取/设置标签的图片。 get/setHorizontalAlignment(): 获取/设置文本的水平位置。 get/setVerticalAlignment(): 获取/设置文本的垂直位置。 get/setDisplayedMnemonic(): 获取/设置访问键(下划线字符),Alt按钮组合时,造成按钮单击。 除了这些方法,JButton还包含另外一组方法。这些方法利用了按钮的所有不同状态。状态是对组件进行描述的一个属性,通常采用真/假设置。在JButton中,可以包含以下可能状态:活动/不活动、选中/没选中、鼠标经过/鼠标离开、按下/没按下,等等。另外,可以组合这些状态,例如按钮可以在鼠标经过的同时被选中。JButton 上的状态方法是:get/setDisabledIcon() get/setDisableSelectedIcon() get/setIcon() get/setPressedIcon() get/setRolloverIcon() get/setRolloverSelectedIcon() get/setSelectedIcon()第3章 系统设计与实现本系统采用了Mysql数据库与Java进行整体系统的开发和实现,通过WeiboCrawler 新浪微博数据获取软件对于相关微博信息的获取,并对获取的数据进行解析和存储,利用JAVA编程和Sql语言对数据库中的数据进行增删改查。3.1数据的获取首先数据库简单来说,它是一个组织、管理和存储数据的仓库。所以设计一个数据库首先要想到的必定是数据的来源。由于本项目是由多人一起完成,而数据的抓取已由舆情管理平台抓取。所以我们这边就有现成的数据,但是由于管理平台从网页上所抓取的微博信息是一个XML文档,所以要将该XML文档中的数据存入数据库中,我们就不得不先对它进行解析。而在本系统中使用的解析技术是SAX。SAX是一个解析速度快并且占用内存少的XML解析器,它由4部分组成,即startElement(),characters(),endElement() ,DefaultHandler类。其中startElement() 回调在每次SAX解析器遇到元素的起始标记时被调用,characters() 回调为字符数据所调用,endElement() 为元素的结束标记所调用,DefaultHandler类来实现所有这些回调,并提供所有回调方法默认的空实现。SAX解析的步骤一般分为5个步骤,首先使用SAXParserFactory创建SAX解析工厂然后通过SAX解析工厂得到解析器对象接着通过解析器对象得到一个XML的读取器再然后设置读取器的事件处理器最后解析xml文件。而通过SAX我们可以将采集到的网页信息提取出来。其中包括发布人,发布人的ID,发布时间,正文内容,微博的昵称等。具体的SAX解析部分代码如下所示:public void startElement(String uri, String localName,String qName, Attributes atts) throws SAXException if (weibo.equals(qName) book = new Shuj();currentTagName = qName;public void characters(char ch, int start, int length)throws SAXException if (weibo.equals(currentTagName) book.setWeibo(new String(ch, start, length);String s1 = new String(ch);String str = s1.split( );String s2 = String.valueOf(ch);public void endElement(String uri, String localName, String qName)throws SAXException if (weibo.equals(qName) books.add(book);book = null;currentTagName = null;3.2数据的存储首先要将数据存入数据库当中免不了的我们必须连接数据库,而连接数据库的方法有不少,在本系统中主要利用JDBC技术来对数据库进行连接,并将所获得的数据存储到数据库当中。JDBC是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。它的功能简单来说,就是与数据库建立连接,发送操作数据库的语句并处理结果。而在该模块当中,我们主要通过JDBC来连接数据库并且将解析出来的数据存入数据库当中的数据表中。具体的JDBC技术的主要代码如下:Connection con = null;Statement stmt = null;con = MyConnection.connectionMysql();stmt = con.createStatement();String sql = ;int i = 0;for (Shuj b : books) i+;sql = insert into lizi(polarity,weiboid,dates,username,userid) values( + b.getWeibo() + ,+b.getWeiboid()+,+new Timestamp(b.getDate().getTime()+,+b.getUserName()+,+b.getUserid()+);System.out.println(sql);stmt.addBatch(sql);if (i = 10) stmt.executeBatch();i = 0;MyConnection.closeConnectionMysql(stmt, con);3.3数据的处理到了这一步,我们已经实现了将数据存储到数据表当中。但是由于数据表当中的数据量相当大,那么后台的管理人员就不好处理这些数据,而且对于前台获取后台的数据也相当不方便。所以在这,我们非常有必要建立一个窗口,然后在窗口界面设置一些按钮,当然这些个按钮是有处理数据表当中的数据的功能,这样可以让我们方便快捷的来处理数据表当中的数据,使得我们不用每次要处理数据表当中的数据,就要马上写一些SQL语句来处理。所以在本系统中,我们还用到了Java Swing技术。Swing是一个用于开发Java应用程序用户界面的开发工具包。它以抽象窗口工具包(AWT)为基础使跨平台应用程序可以使用任何可插拔的外观风格。Swing开发人员只用很少的代码就可以利用Swing丰富、灵活的功能和模块化组件来创建优雅的用户界面。而在本后台系统界面中,我们总共设置了个按钮,分别为查询,修改和删除。Swing界面具体的设计代码如下:public Frame(int row,int col)j.setSize(500, 700);j.setTitle(窗口);JPanel jp10 = new JPanel();jp10.setLayout(new GridLayout(4, 1);JPanel jp1 = new JPanel();JLabel jl = new JLabel();jl.setText(序号:); jt1= new JTextField(20);jb1 = new JButton(删除);jb1.addActionListener(this);jb2 = new JButton(修改);jb2.addActionListener(this);jp1.add(jl);jp1.add(jt1);jp1.add(jb1);jp1.add(jb2);JPanel jp3 = new JPanel();JLabel jl1 = new JLabel();jl1.setText(请输入关键字:); jt2= new JTextField(20);jb3 = new JButton(查询);jb3.addActionListener(this);jp3.add(jl1);jp3.add(jt2);jp3.add(jb3);jp10.add(jp1);jp10.add(jp3);j.add(jp10,BorderLayout.NORTH);JPanel jp2 = new JPanel();table = new JTable(row,col);3.3.1 数据的查询由于本后台系统中,数据表当中的数据量相当大。后台系统的管理员不好处理,而我们又没办法记住每一条数据,所以我们就有必要在Swing界面当中增加一个查询的按钮,让我们来方便查看数据表当中的数据。而要查询数据表当中的数据,首先我们就需要设置关键字,这边才能让系统明白我们所需要的数据是什么,从而加快数据查询的效率。查询功能的按钮的具体代码如下:public List select()List weiboList = new ArrayList();Weibo weibo = null;try con = MyConnection.connectionMysql();st = con.createStatement();String sql = select * from lizi limit 0,100;rs = st.executeQuery(sql);while(rs.next()weibo = new Weibo();weibo.setUserid(rs.getString(userid);weibo.setUserName(rs.getString(userName);weibo = null; catch (Exception e) System.out.println(cuowu1);System.out.println(e);return null; finally try MyConnection.closeConnectionMysql(rs,st,con); catch (Exception e) System.out.println(关闭yichang);e.printStackTrace();return weiboList;

温馨提示

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

最新文档

评论

0/150

提交评论