1、沈阳理工大学学士学位论文摘 要随着通信技术的快速发展和智能设备在人们生活中的的普及,移动互联网在近两年发展迅猛。微信作为新兴的即时通讯产品正成为移动互联网的新时尚,越来越多的企业和机构进驻微信探寻新的商业机会,为用户带来各种各样的内容和体验。随着微信版本的不断更新,微信也从单纯的聊天应用逐渐演变成集媒体信息、游戏娱乐、生活服务、电子商务为一体的多功能综合型平台。微信不仅改变了人们的生活方式,也对移动互联网的发展产生了重大的影响。如何用好移动互联网,特别是利用好微信公众平台,让它们提供更好的各种生活服务,成为摆在人们面前的一个新课题。本系统是在微信公众平台的开发模式下,采用PHP、MySQL 等
2、编程语言,利用微信公众平台提供的消息接收和消息回复接口实现了基于微信平台的校园图书馆系统。读者可以通过图书的类别和图书的名称来分别查询图书的地理位置和图书基本信息,然后可以绑定读者证,进而可以进行图书预订。管理员也可以将图书馆内的热点消息群发到该公众号,使读者在自己网络社交环境里,随时了解图书馆最新动态,更好的利用图书馆的服务和资源。关键词:微信;移动互联网;PHP;MySQLAbstract With the rapid development of communications technology and the popularity of smart devices in people
3、s life, mobile Internet is growing rapidly in recent years. WeChat as a new communicationproducts is becoming the new fashion of the mobile Internet, more and more enterprises and institutions stationed in WeChat to explore new business opportunities, in order to bring a wide variety of content and
4、experiences for people. With the constantly updated of WeChat version,WeChat turn into a Collection ofmedia information, games and entertainment, life services,e-commerce as one of the multi-functional integrated platform from a simple chat application. WeChat not only changed peoples way of life, b
5、ut also has asignificant impact on the development of mobile Internet. How to use the mobile Internet well, especially make good use of WeChat public platform in order to let them to provide a variety of better service for peoples life is becoming a new topic to people.The system is in the developme
6、nt mode of WeChat public platform, using PHP and MySQL programming language, with the use of WeChat public platform to provide message receive and message reply interface of the platform to achieve the campus library system based on WeChat. According to the book categories and the books name, reader
7、s can acquire the location and some basic information of the required book, then make the reader-card bound so that reserve books. The administrator can mass focus message of library to the public number so that readers in their own social networking environment to keep knowing recent news in the li
8、brary,which making use of library services and resources better .Keywords: WeChat ; mobile Internet; PHP; MySQLII 目 录1 绪论11.1 研究背景及现状11.2 主要内容21.3 研究目的与意义32 开发技术42.1 微信介绍42.2 微信公众平台简介42.3 新浪云平台和微信公众号的注册及创建52.3.1 申请新浪云平台账号52.3.2 申请微信公众号72.4 微信公众平台基本功能82.5 数据交互方式92.6 开发技术的介绍102.6.1 新浪云简介112.6.2 PHP开发语
9、言的介绍122.6.3 MySQL简介133 系统设计143.1 系统分析143.2 功能设计143.3 数据库设计153.4 表结构设计174 系统实现194.1 程序主界面194.2 用户操作204.2.1 绑定学生号204.2.2 解除绑定224.3 图书查询234.3.1 图书位置查询234.3.2 图书信息查询244.3.3 已借图书查询264.4 图书借阅274.4.1 图书预订274.4.1 图书续借295 系统测试315.1 绑定读者号测试315.2 图书预订测试31结 论33致 谢34参考文献35附录A 英文原文36附录B 中文翻译45I1 绪论微信作为新兴的即时通讯产品正成
10、为移动互联网时代的新时尚1,越来越多的企业和机构进驻微信公众平台探寻新的商业机会,为用户带来各种各样的内容和体验。当前基于微信公众账号的应用没有固定的模式,但是其他行业已经探索出了一些应用案例,图书馆可以借鉴这些成功案例。例如,各种自媒体公众账号纷纷涌现,传统媒体也逐步开设公众账号发布内容,向用户推送精选内容;用户获取资讯的方式从博客、微博等逐渐迁移至微信;微信公众平台渐渐成为企业营销渠道、客户关系管理和业务办理的新工具,嗅觉灵敏的商业银行、民用航空、酒店、医院、电商等行业已开始尝试使用这个平台2。为方便读者能更好地应用图书馆资源,特别地推出了基于微信公众平台的校园图书馆系统,该系统读者不仅可
11、以在自己手机上进行图书信息查询、图书位置查询、图书预订、图书续借,而且可以每天看到图书馆的最新的新闻动态。1.1 研究背景及现状近年来,随着计算机和网络通信技术的进步,互联网行业取得了飞速发展,其中又以移动互联网的发展最为迅猛。移动互联网的发展对社会产生了巨大的影响,其广泛地影响和改变了人们的生活。移动互联网平台,大量的应用软件如雨后春笋破土而出,充分满足了人们生活中的各种需求,而且移动互联网已经成为一个综合性的网络社交、游戏娱乐、在线购物和媒体资讯的平台,并产生了极大的经济效益。微信是腾讯公司于2011年1月推出的一款以多媒体信息通信为核心功能的免费移动应用3,诞生之后短短两年得到快速发展。
12、微信可以利用移动网络向自己的好友发送文字、语音、图片、视频等信息,并且除了基本的网络通信费用以外,不需要收取任何其他的费用。微信还拥有“朋友圈”、“摇一摇”、“漂流瓶”、 “公众平台”等多种功能插件。微信凭借其自由、免费、多便捷、跨平台等特点。一方面,微信快速积累起庞大的用户群体,截至2013年1月15日用户规模已突破3亿,成为移动互联网时代重要的用户入口;另一方面,微信不断丰富功能,围绕通信这个核心功能,发展为集通信、社交、营销、媒体、工具五大功能于一体的平台化产品。当微信从一个简单的个人通讯工具一路发展成为一个强大的移动服务平台,在推出微信公众平台,提供强大的API接口之后,微信如何改变人
13、民的生活,怎样爆发出更大的价值,这值得每个人去关注。作为企业和商家更应该主动地去了解移动互联网,了解微信平台,主动地去拥抱移动互联网的浪潮。在国内,微信公众平台是腾讯公司于2012年8月推出的,广受欢迎,成为企业、媒体、公共机构、明星名人、个人用户等继微博之后又一重要的运营平台。从微信平台功能来看,目前公众平台的主要功能包括多媒体信息大规模推送、定向推送,一对一互动,多样化开发和智能回复等。这些功能为公众平台的实际运营带来了媒体、营销、客服、公共服务等应用方向。虽然微信公众平台在国内发展很好,但是在国外,微信平台的发展面临着多个强大的竞争对手的压力,微信产品本身的设计体验基于中国国情,导致其在
14、国外的发展速度较为缓慢,影响力也不如在国内那么大。而且国内的微信和国外的微信是分开独自运营的,国内的客户无法直接订阅国外的公众,国外的用户也不能直接订阅国内的公众号,所以微信平台在国外的发展并不像在国内发展那么顺利。尽管微信在国外发展不是很好,但是在国内,自从微信公众平台推出后,企业主们纷纷闻讯而来,抢滩注册;摩拳擦掌,企图在这片新蓝海里开展一场全新的营销大战。许多大学也推出了关于图书馆的微信公众平台,这样学生可以关注该大学的图书馆的微信公众号,就可以了解该图书馆的动态和图书信息,这样能够大大减少图书馆管理人员,还能减少管理人员的工作任务,从而降低管理开销和成本。1.2 主要内容国内图书馆界从
15、 2003 年开始推出移动信息服务,目前有相当数量的图书馆开展移动信息服务4。毫无疑问,移动信息服务是图书馆的重要发展方向和服务增长点5。作为国内首创和自主研发的新兴的移动应用,微信 2011 年推出之时起就备受关注。微信具有信息表现形式多样化、用户高学历化、用户群庞大、运营团队强大、成长潜力巨大和具有社交网络属性等诸多特点和优势。 基于微信的许多优点,本系统是基于微信公众平台的校园图书馆,读者可以通过扫描公众号的二维码或添加该微信公众号来关注该校园图书馆,从而可以在手机上来查看自己想要查看的图书信息。该微信公众号主要是对读者所开发的。主要实现以下功能:(1)查看图书信息(2)查看图书位置(3
16、)已借图书查询(4)绑定读者证(5)解除绑定(6)预定图书(7)续借图书1.3 研究目的与意义微信作为一种新兴的即时通讯技术和产品,已经快速普及到人民的休闲生活中。人们不仅可以在微信中进行聊天,还可以通过关注一些公众号去接收一些对自己有用的消息。例如,人们可以通过关注一些关于招聘的公众号,来获取求职招聘信息;也可以通过关注一些关于化妆的公众号来学习化妆的技巧。本系统也是通过关注校园图书馆的公众号,来应用该公众号所提供的一些基本功能。随着互联网的快速发展,具有计算机功能的智能手机已经成为人们生活中的必需品,新兴的移动社交软件“微信”逐渐走进了手机用户的生活,深受全国数亿用户的欢迎。所以,开发一款
17、让读者随时随地了解图书馆动态以及图书查询及预订功能的校园图书馆系统是非常必要的。2 开发技术2.1 微信介绍微信(WeChat)是腾讯公司于2011年1月21日发布的一款手机即时通讯软件,它可以利用移动互联网络向好友发送文本信息、语音消息、图片和视频。用户在使用微信软件时只会产生少量的由移动通信运营商收取的上网流量费用,使用微信软件本身的基本功能是不需要收费的。用户通过微信可以自由地进行形式多样的沟通交流,这也让微信收到了大众的欢迎。截至2013年11月,微信在全球的注册用户数已经超过6亿,其中国内用户超过4亿,平均每月的活跃用户数高达2.47亿人,微信在2012年8月推出微信公众平台后,注册
18、的微信公众帐号也超过了400万个。微信聊天软件中主要有“聊天”、“发现”和“通讯录”三大模块,其中在“发现”模块中提供了“朋友圈”、“扫一扫”、“摇一摇”、“漂流瓶”等功能,用户在朋友圈中可以和自己的好友分享照片和心情状态,同时在微信上还可以使用“摇一摇”、“搜索号码”、“扫一扫”的方式查找添加好友和关注微信公众帐号。新版本的微信又增加了“微信支付”、“购物”、“游戏”等功能模块,极大增强了微信的生活服务性和娱乐性。微信在推出之后,获得了用户的极大欢迎,经过三年多来的发展,微信已经成为了移动互联网上最热门的社交平台。微信拥有着广泛的用户群体,这也使得其成为了国内移动互联网中的一大重要入口。微信
19、中新增加的微信支付功能,也促使微信往商业服务的方向发展,用户已经可以在微信上进行沟通、交流、娱乐、消费等行为,这些都是人们日常生活需求的重要组成部分,这预示着微信正给人们的生活带来变化。腾讯公司也正在打造以微信为入口的移动电商平台,这将集合信息搜索、在线沟通、在线支付等功能。微信是一个充满想象的平台,未来必将给人们的生活带来颠覆性的变化。2.2 微信公众平台简介微信公众平台是腾讯公司在微信的基本功能之上增加的一个新功能模块6,个人或者企业可以通过这个平台注册一个微信的公众帐号。微信公众平台的口号是“再小的个体,也有自己品牌”,由此可见腾讯公司希望微信公众平台更多地起到品牌推广的作用。任何的个人
20、或者企业都可以利用微信公众平台向众多的微信用户推广传播个人或者企业品牌,这能够有效地降低了宣传成本,提高品牌的知名度,更有利于在移动互联网上打造优秀的品牌形象。2012年8月23日,微信公众平台正式上线并开放注册,目前微信公众平台已经拥有超过400万个公众帐号。2013年8月5日,微信升级了一个新的版本,与此同时微信对公众平台做出来重要的改变,微信将公众账号区分成为“订阅号”以及“服务号”两种形式。微信公众订阅号主要是只用来给用户提供资讯消息的,媒体或者个人可以通过公众订阅号获得一种新的内容传播渠道,在这里可以更好更方便地和用户进行直接的沟通与交流。公众订阅号每天只可以向用户推送1条群发消息(
21、少部分帐号每天最多可以推送3条),群发推送给用户的消息,将会在微信“聊天”界面列表中的“订阅号”文件夹中显示。目前企业媒体机构和个人都可以免费申请公众订阅号。较为知名的微信公众订阅号有:人民日报社的“人民日报”、中国电视台新闻中心的“央视新闻”、网络红人和菜头的“槽边往事”等。微信公众服务号主要提供给企业和组织使用,可以帮助企业和组织利用微信为用户提供个性化的业务服务,以及对用户信息进行有效的管理。在1个自然月内公众服务号仅可以给用户推送4条群发消息,推送给用户的消息,会直接显示在微信聊天界面的列表中,并且用户还将实时收到的消息提醒。公众服务号可直接申请自定义菜单,认证后的服务号还可以使用9个
22、高级接口。目前只有企业机构组织才能申请公众服务号,个人无法申请使用公众服务号。2.3 新浪云平台和微信公众号的注册及创建开发微信公众平台之前必须要申请新浪云平台账号和微信公众号,下面就简单介绍下申请的过程。2.3.1 申请新浪云平台账号SAE的注册地址为用户注册需要填写真实姓名、安全邮箱、安全密码、确认密码、绑定手机、及验证码之后,点击“下一步”按钮,将跳转到手机号验证页面。填写手机收到的短信验证码之后,点击“验证手机”按钮,将提示注册成功。至此,已经成功注册了SAE账号。注册成功SAE账号之后,还需要创建应用以及版本。(1)创建应用注册成功之后,就可以创建应用了,创建应用界面如下图2.1所示
23、。图2.1 创建应用界面点击上图2.1的创建新应用,这时会弹出提示, 禁止放置违法违规内容,点击继续创建,就会弹出填写二级域名AppID、应用名称、验证码,开发语言选择PHP5.3,全部应用和框架下面选择第一个PHP应用。然后点击左下方的创建应用就可以了。本系统创建的AppID为。(2)创建版本应用创建成功之后就需要创建版本,点击刚才创建的应用名称,进入应用主页。点击左侧的应用管理下面的代码管理,跳转到代码管理。在代码管理里创建一个新版本。版本号默认为1,点击创建,有时会弹出安全登录,需要输入安全密码,如果不知道或者忘记了,就点里面的找回密码,重新设置一下。验证通过之后就成功创建了一个新版本。
24、到这里,就成功创建了一个域名URL为的应用了,记住这个URL,后面将会用到。如下图2.2所示。图2.2 创建版本界面2.3.2 申请微信公众号申请微信公众号的具体步骤如下:(1) 首先可以通过百度搜索“公众微信号”,然后打开公共微信号的申请页面.(2) 打开了微信公共平台的注册页面以后,点击右上角的“立即注册”。(3) 接下来请输入注册微信公共平台的“电子邮件,注册密码,验证码”,然后勾选“同意并遵守微信公众平台服务协议”,最后点击下方的“注册”。(4) 接下来系统会向注册者的注册邮箱发送一封“确认邮件”。(5) 然后打开自己的邮箱,找到微信微信团队发送的确认邮件,点击邮件内容中的链接激活帐号
25、(6) 接下来就是登记真实用户信息,根据页面的要求仔细填写。登记信息填写完成之后,点击页面中的“继续”。特别注意“证件照片”必须是“本人手持证件”拍摄的照片,否则会导致审核不通过。(7) 然后输入微信账号的“名称,功能介绍”,选择运营的区域,语言和类型以后,点击“提交”。(8) 接下来系统会提示注册者“已经成功创建一个公众账号”,并且会在7个工作日内进行审核。如果申请成功后,登录微信公众平台后台,在左侧列表中最下方,找到“开发者中心”,点击进入服务器配置填写框。如图 2.3所示。图2.3 服务器配置此处的URL就是在创建版本时所提到的云应用的域名8,本系统中的Token在index.php中定
26、义为weixin。EncodingAESKey则不用填,点击“随机生成”,自动生成一个,消息加解密方式选择“明文模式”,然后点击“提交”按钮。提交成功之后,就成功启用了开发模式。2.4 微信公众平台基本功能微信公众平台的基本功能有:群发功能、消息管理、用户管理、素材管理、统计分析等9。公众帐号群发功能指的是,公众号可以将文字、图片、语音、视频等类别的内容直接推送给订阅用户,也可以编辑内容更加丰富的单条或者多条图文信息。并且在群发推送内容的时候,还可以根据订阅用户的性别、地区、分组等信息来进行选择性地推送指定内容。公众账号又分为服务号和订阅号,其中公众服务号每一个月内仅可以发送四条群发消息,服务
27、号发给粉丝的消息,会显示在粉丝的聊天列表中。公众订阅号则可以每天群发一条消息。订阅号群发的消息,将显示在聊天列表中的订阅号目录中。微信公众平台的消息管理是指订阅用户发送给公众号信息的管理。在这里可以看到用户最近5天内回复给微信公众号的消息,并可直接处理用户的消息;5天后消息会自动删除,如果对消息进行星标标注,则可将该信息永久保存。微信公众平台的用户管理是为了帮助管理员更好的对关注微信公众号的用户进行管理,可以将用户移至自己定义的分组、黑名单、星标组等以方便管理。微信公众平台的素材管理主要是用来管理公众平台的图片、语音、视频和图文消息内容,可在群发消息或与用户沟通时选择媒体文件发送给用户。微信公
28、众平台的数据统计是由腾讯移动分析平台对微信公众帐号的各项数据进行分析统计的一个汇总结果。在用户分析页面中,人们可以看到微信公众帐号用户每日新增的订阅人数、取消关注的人数、累积关注的人数以及曲线趋势图,还有对订阅用户的年龄、地域、性别等属性的统计结果。通过这些数据,人们可以对微信公众号的订阅用户进行分析,从而了解人们用户的特点。在图文分析页面中,人们可以看到群发推送出去的图文内容的阅读次数、阅读人数、分享次数等数据。通过这些数据,人们可以分析订阅用户对不同的内容的反馈,以此可以指导优化未来的图文内容制作。消息分析和接口分析则是对微信公众号每日接收消息数和调用高级接口的数据进行统计,根据这些内容可
29、以分析出平台订阅用户的活跃度。所以通过对以上这些数据的分析,人们可以很好地了解到微信公众号的运营效果。2.5 数据交互方式公众平台消息接口为开发者提供了与用户进行消息交互的能力10,微信公众平台开发模式的数据交互线路可以简单地归纳为“用户微信后台公众账号服务器微信后台用户”,每一次的数据交互的过程都是由用户发送消息而发起的。微信公众平台开发模式提供的消息接口是指导数据进行交互的行为标准。如果微信公众帐号启用了开发模式并接入了消息接口,当用户向公众账号发送消息时,微信公众平台的服务器将消息通过HTTP 请求推送给公众账号服务器,公众账号服务器则根据人们预设的规则进行响应,并回复指定的消息。通俗的
30、来讲,就是人们可以通过自己编写的程序让微信公众帐号自动地和用户进行对话。 使用了开发模式的微信公众账号就会成为一个配备了一些指令规则的账号。在用户关注公众账号,发送对应的指令给公众账号之后可以获得相应的结果。用户在和公众帐号进行互动的时候,可以获取相应的信息反馈。而如何获得相应的信息反馈则需要根据公众平台提供的开发接口通过公众账号服务器实现。用户、微信后台和人们开发的公众账号后台的公众账号服务器三者之间形成了一个信息交互的关系,如图2.4所示。图2.4 用户、微信后台和公众账号服务器间的交互图对于上图2.4中的交互过程具体的描述如下:(1)用户在微信的手机客户端里向公众账号发送一条消息,这条消
31、息会通过网络到达微信的后台。(2)后台收到这条消息之后,把消息转发给公众账号的后台,也就是公众账号的服务器。(3)公众账号服务器收到请求后,解析消息格式,根据用户内容和自己的服务器逻辑,计算出需要返回给用户的消息,然后封装消息,返回给微信后台。(4)微信后台把公众账号服务发来的消息转发给用户的微信手机客户端,这样用户在手机客户端上就可以看到公众账号发来的微信消息了。通过这个过程可以看到公众账号服务器要做的事情有三件:(1)获取微信后台发过来的消息。(2)实现自己的业务逻辑。(3)发送返回消息给微信后台。2.6 开发技术的介绍 微信公众平台开发,本系统主要是在新浪云的平台上进行研发的,主要使用P
32、HP开发语言和MySQL数据库技术。2.6.1 新浪云简介 Sina App Engine (简称SAE) 是新浪研发中心于2009年8月开始内部开发11,并在2009年11月3日正式推出第一个Alpha版本的国内首个公有云计算平台,SAE是新浪云计算战略的核心组成部分。SAE作为国内的公有云计算,从开发伊始借鉴吸纳Google、Amazon等国外公司的公有云计算的成功技术经验,并很快推出不同于他们的具有自身特色的云计算平台。SAE选择在国内流行最广的Web开发语言PHP作为首选的支持语言,Web开发者可以在Linux、Mac、Windows上通过SVN或者Web版在线代码编辑器进行开发、部署
33、、调试,团队开发时还可以进行成员协作,不同的角色将对代码、项目拥有不同的权限;SAE提供了一系列分布式计算、存储服务供开发者使用,包括分布式文件存储、分布式数据库集群、分布式缓存、分布式定时服务等,这些服务将大大降低了开发者的开发成本。同时SAE整体架构的高可靠性和新浪的“所付即所用,所付仅所用”的计费理念,通过日志和统计中心精确地计算每个应用的资源消耗。SAE的基本目标用户有两种,一种是Web开发者,另一种是普遍互联网上网人群。对于Web开发者SAE带来的好处有:(1) 硬件成本低,无需预先购买设备去承担更大的投入风险。(2) 开发成本更低,SAE提供许多服务供开发者使用,开发者无需重复开发
34、,包括队列、数据库、缓存、定时、验证码、计数器,几乎覆盖了Web开发的所有领域。(3) 运维成本更低。在SAE上的应用无需关心硬件维护、服务监控、数据容灾等操作,SAE会通过其高可靠性的架构和方便的监控页面为用户将运维成本降到最低扩展性更强,在SAE上的服务无需关心服务压力猛增时带来的扩容等问题,SAE自动支持扩容。(4) 更加安全可靠,SAE自动提供SQL语句性能分析、前端防攻击、代码检查等功能,在SAE上的所有应用均为多机房容灾部署,比传统的部署模式更加安全可靠,并且SAE提供服务的SLA来实现对用户服务质量的承诺。而对于普通上网人群,使用SAE可以:使用推荐应用意见安装Web应用,普通用
35、户无需会编码,也可以在瞬间拥有自己的团购、博客、微博等。总之,SAE就是简单高效的分布式Web服务开发、运行平台。2.6.2 PHP开发语言的介绍PHP(PHP:Hypertext Preprocessor,超文本预处理器)是一种广泛使用的开源的用于Web程序开发的计算机脚本语言12。PHP是1995年勒多夫开发出来的,目前成为了Web开发领域中最热门的语言。PHP代码逻辑设计简单,运行速度快,能够进行高效的跨平台协作开发。并且PHP的源代码全部是开放且免费的,和其它技术相比,不需要花一分钱就可以得到所有的PHP源代码。在网页程序开发中,PHP能够直接嵌入到HTML中使用,它和其他开发语言相比
36、,上手更快,实用性强,更适合初学者使用。PHP正是凭借诸多优秀的特性,才能够在Web开发领域中广受欢迎。PHP起源于自由软件,即开放源代码软件,使用PHP进行Web应用程序的开发具有以下语言优势。(1)安全性高:PHP是开源软件,每个人都可以看到所有PHP13的源代码,程序代码与Apache编译在一起的范式也可以让它具有灵活的安全设定,PHP具有了公认的安全性能。(2)跨平台:PHP几乎支持所有的操作系统平台并且支持Apache、IIS等多种Web服务器,并以此广为流行。(3) 支持广泛的数据库:可操作多种主流与非主流的数据库,如MySQL、Access、SQL Server、Oracle、D
37、B2等,其中PHP与MySQL是现在最佳的组合,它们的组合可以跨平台运行。(4)简单易学:PHP嵌入在HTML语言中,以脚本语言为主,内置丰富函数,语法简单、书写容易、方便学习掌握。(5)执行速度快:占用系统资源少,代码执行速度快。(6)模板化:实现程序逻辑与用户界面分离。(7)支持面向对象:支持面向对象和过程的两种风格开发,并可向下兼容。PHP是一种运行于服务器端并完全跨平台的嵌入式脚本编程语言14,堪称是动态网页制作的主流语言。一般来说PHP程序大多运行在网页服务器上,向用户提供各种动态的网页信息。PHP具有很好的系统兼容性,在当前绝大多数的服务器操作系统上都能够完美地运行。这也使得大量的
38、网站选择使用PHP语言进行开发,从1994年诞生至今,全球已经有超过5000万个网站选择了PHP开发语言。2.6.3 MySQL简介 MySQL是一个开放源码的小型关联式数据库管理系统15,开发者为瑞典MySQL AB公司。目前MySQL被广泛地应用在Internet上的中小型网站中,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。MySQL这个名字是怎么来的已经不清楚了,基本指南和大量的库和工具带有前缀“my”已经有10年以上,而且不管怎样,MySQL AB创始人之一的的女儿也叫My。这两个到底是哪一个给出
39、了MySQL这个名字至今依然是个迷,包括开发者在内也不知道16。MySQL 所使用的SQL语言是用于访问数据库的最常用标准化语言17。MySQL 软件采用了双授权政策,它分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择 MySQL 作为网站数据库。由于其社区版的性能卓越,搭配PHP和Apache可组成良好的开发环境。与其他的大型数据库例如Oracle、DB2、SQL Server等相比,MySQL 自有它的不足之处,但是这丝毫也没有减少它受欢迎的程度。对于一般的个人使用者和中小型企业来说,MySQL提供的功能已经绰绰有余,而且由于 M
40、ySQL是开放源码软件,因此可以大大降低总体拥有成本。MySQL是一个精巧的SQL数据库管理系统18,虽然它不是开放源代码的产品,但在某些情况下可以自由使用。由于它的强大功能、灵活性、丰富的应用编程接口(API)以及精巧的系统结构,受到了广大自由软件爱好者甚至是商业软件用户的青睐,特别是与Apache和PHP/PERL结合,为建立基于数据库的动态网站提供了强大动力。尽管MySQL仍在开发中,但它已经提供一个丰富和极其有用的功能集。时至今日,MySQL和PHP的结合绝对是完美的,很多大型的网站也用到MySQL数据库,所以MySQL的发展前景是非常光明的。3 系统设计3.1 系统分析采用微信最新推
41、出的微信公众平台,能够有效地优化图书馆管理系统,使其高效的发挥最大作用,能够迅捷的为读者提供最好的服务。本设计开发是在微信公众平台里开发出的能够在手机端实现对图书馆系统的操作,便于用户理解和应用。数据库管理系统采用新浪云平台里提供的MySQL数据库管理系统,它能够处理大量数据,同时保持数据的完整性、安全性。硬件方面,在科技飞速发展的今天,硬件更新速度越来越快,容量越来越大,可靠性越来越高,价格越来越便宜,因此硬件平台也能够满足本系统所需。鉴于计算机技术发展异常迅猛, ,在硬件软件配置以及开发技术均以可行的情况下开发这样一个管理系统成本不会很高,但其可以大大提高图书馆的工作效率,也是图书馆管理发
42、展的必然趋势,其必将有比较宽阔的市场, 加上目标系统并不是十分复杂和开发周期较短,人员经济支出有限。开发完成运行后,为使用者带来便利,为系统的进一步推广创造了条件,经济收益将远超过投资。从经济角度考虑,此系统开发可行。国内图书馆界从2003年开始推出移动信息服务,目前有相当数量的图书馆开展移动信息服务。毫无疑问,移动信息服务是图书馆的重要发展方向和服务增长点。高校图书馆作为主要的信息服务中心,迫切需要建立适应时代需求的信息服务平台,微信是符合时代需求的高新技术产品,其在图书馆信息服务方面有巨大的应用需求。在本系统中,利用微信公众平台提供的基本功能,基本实现了用户预订图书、图书信息查询、位置查询
43、、随时接收图书馆最新动态等基本功能。微信作为一种新兴的及时通讯技术和产品,随时和人们的生活相连,所以开发本系统是很必要的。3.2 功能设计本系统主要分为前台读者和后台管理员模块,前台读者主要能实现查询图书和预订等功能;而后台管理员主要是对图书进行添加、修改和删除以及群发功能。读者操作: (1)查看图书信息 (2)查看图书位置 (3)已借图书查询 (4)绑定读者证 (5)解除绑定 (6)预定图书 (7)续借图书管理员操作: (1)在新浪云平台中的MySQL数据库系统里对图书信息进行添加、修改和删除 (2)能实现群发功能具体系统功能图如图3.1所示。图3.1 系统功能图3.3 数据库设计数据库是整
44、个系统的基石,数据库的设计优劣直接影响到整个系统的设计成败,本节对数据库的设计进行专门阐述。数据库是数据管理的最新技术,十多年来数据库管理系统已从专用的应用程序发展成为通用的系统软件。由于数据库具有数据结构化,最低冗余度,较高的程序与数据独立性,易于扩充,易于编制应用程序等优点,较大的信息系统都是建立在数据库设计之上的。因此不仅大型计算机及中小型计算机,甚至微型机都配有数据库管理系统。数据库系统的出现使信息系统从以加工数据的程序为中心转向围绕共享的数据库为中心的新阶段。这样既便于数据的集中管理,又有利于应用程序的研制和维护,提高了数据的利用率和相容性,提高了决策的可靠性。目前,数据库已经成为现
45、代信息系统不可分割的重要组成部分。数据库技术也是计算机领域中发展最快的技术之一。数据库设计是把现实世界的实体模型与需求转换成数据库的模型的过程,它是建立数据库应用系统的核心问题。数据库及其应用的性能都建立在良好的数据库设计的基础之上,数据库的数据是一切操作的基础,如果数据库设计不好,那么其它一切用于提高数据库性能的方法收效都是有限的。数据库设计的关键是如何使设计的数据库能合理地存储用户的数据,方便用户进行数据处理。设计数据库必须遵循一定的规则,在关系型数据库中,这种规则就是范式,范式是符合某一种级别的关系模式的集合。一般人们设计数据库遵循第三范式。即:数据库表中不包含已在其他表中包含的非主关键
46、字信息。采用范式减少了数据冗余,节约了存储空间,同时加快了增、删、改的速度。整个系统包括读者信息表、图书信息表、借阅信息表和绑定信息表,可将这些信息抽象为下列系统所需要的数据项和数据结构。(1)图书信息:图书信息表主要用于存储图书信息和借阅情况。 图书信息(图书编号,图书名称,图书类型,作者,价格,出版社,馆藏数 量,可借数量)(2)读者信息:读者信息表主要存储学生的基本信息。 读者信息(读者学号,姓名,密码)(3)借阅信息:借阅信息表主要存储借阅用户和所借阅图书的基本信息。 借阅信息(图书编号,读者学号,借出时间,应还时间)(4) 绑定信息:绑定信息表主要对绑定过学生号的读者进行管理。 绑定信息(微信识别码,读者学号,绑定日期)注:带下划线表示主键在这里使用E-R图描述了系统的数据模型。具体结构如下图3.2所示。图3.2 系统E-R 图3.4 表结构设计本系统使用的是MySQL数据库系统,系统设计了读者信息表Student表、图书信息表Book表、借阅信息表Borrow表和绑定信息表Bind表。Student表用于存储读者的一些基本信息。Student表表结构如表3.1所示。表3.1 Student表表结构字段名数据类型备注stu_novarchar(16)读者学号pwdvar