摘要
随着时代的发展,人们对物质生活和精神生活的追求越来越高。但是,智能家庭系统是一个非常复杂的系统,它包含了大量的软件和软件,所以,它的设计非常的重要。目前,我国很多智能家庭的生产厂家都有很多的限制,只有通过互联网和移动互联网,才能实现对家庭的远程控制。本文着重介绍了智能家庭的基本理念,并结合当前最热门的网络技术,在 Java平台上,利用Struts2、 Hibernate、 Spring等技术,以及HTML5、CSS3、 Jquery等前端技术,在此基础上,针对系统控制中的无线数据传输安全问题,给出一-套建议性、可行性的解决方案。通过将该技术移植到手机通信网络中,可以有效地增强网络的安全性。
与传统的智能家居系统相比,将网络系统安装到远程服务器上,这是本论文的一个创新之处。通过这个面向服务的家庭系统,用户可以根据自己的喜好进行个性化的设计,可以很好的解决硬件的兼容问题。该系统的目标是建立一个可以支持第三方开发的系统平台,为用户提供长期的服务。
关键词:web前端技术、java、MySQL数据库、智能家居、SSH框架
abstract
With the development of the times, people's pursuit of material life and spiritual life
is higher and higher. However, intelligent home system is a very complex system, which contains a large number of software and software, so its design is very important. At present, many smart home manufacturers in China have many restrictions. Only through the Internet and mobile Internet can we realize the remote control of the home. This paper focuses on the basic concept of smart home, and combined with the current most popular network technology, on the Java platform, using struts 2, hibernate, spring and other technologies, as well as HTML5, CSS3, jQuery and other front-end technologies. On this basis, this paper gives a set of suggestive and feasible solutions to the security of wireless data transmission in system control. By transplanting this technology to the mobile communication network, the security of the network can be effectively enhanced.
Compared with the traditional smart home system, installing the network system on
the remote server is an innovation of this paper. Through this service-oriented home system, users can carry out personalized design according to their preferences, which can well solve the problem of hardware compatibility. The goal of the system is to establish a system platform that can support third-party development and provide long-term services for users.
Key words: Web front-end technology, Java, MySQL database, smart home, SSH
Framework
目 录 I
第一章 绪 论 1
1.1 课题背景 2
1.2 研究意义 3
1.3智能家居 3
1.3.1 定义 4
1.3.2 发展背景 4
1.4 发展历程 5
1.4.1 萌芽期 5
1.4.2 开创期 6
1.4.3徘徊期 6
1.4.4融合期 7
1.5本文的主要研究内容 9
第二章 相关技术介绍 10
2.1 java的产生 10
2.2 java的发展历史 11
2.3 java的现状 12
第三章 智能家居系统的分析与设计 13
3.1系统分析 13
3.1.1 环境可行性分析 14
3.1.2 技术可行性分析 14
3.1.3 经济可行性分析 15
3.1.4需求分析 15
3.2 系统模块分析 16
3.3 总体设计 16
3.4 数据库设计 17
3.4.1 数据库E-R图 17
3.4.2 数据库中相关的表 18
第四章智能家居系统详细设计 19
4.1用户前台功能模块 19
4.2管理员功能模块 20
第五章 系统的调试和测试 27
第六章 总结 29
心得体会 30
参考文献 30
致谢 31
第一章 绪 论
在科学技术迅速发展和人类生存品质不断提升的时代,百姓更加关注的是家庭安全状况和环保健康,并致力于提升对便捷、智慧、高效的家居生活感受。在2005年十一月,国际电信联合会举办了《ITU internet reports 005-the internet of things》的国际研讨会,并想出了“物联网”,受发达国家喜爱[1]。在八年前,美国IBM集团就明确提出了"智能地球"的概念,之后美国就开始把这一想法设定为国家策略;随着人类社会对智能家居技术的要求日益增长以及物联网技术的日益发达,智能家居网络连续而不断地将新概念、新形式、新技能等整合在一起,以实现人类社会追求舒适、便捷、安全的家居感受。我国智能家居的概念比较早开始被提出,不过是在一九八四年,由全美联合技术集团将中国建筑与装饰材料智能化、融合的设计思想,运用于美籍康乃迪克州哈特佛市的City Place Building中后,才产生了真正程度上的我国智能家居建筑[2]。
1.2 研究意义
基于Java语言的智能家居管理系统通过对家庭信息实现智能监测,可以对家居的环境数据进行显示,从而对家庭安全异常进行有效报警提醒。该系统不但能够为人们的日常生活带来便利,同时能够增加家居环境的稳定性与舒适感。
中国是一个人口基数较大和住宅建设比较多的大国。在住宅产业持续增长的情形下,家居生活环境舒适卫生和家庭安全状况良好,对于实现住宅产业的可持续化发展将变得十分关键,而智能家居技术正是能解决这的需要。
1.3.1 定义
新时代网络的快速发展情况下,智能家居系统的出现打破了常规。智能家居是一种新型的电子科技产品。智慧家居(smart home, home automation)即以居住系统为网络平台,运用综合布线技术、通信、防护科技、自动控制、音录像科技等与家居日常生活相关的技术设备整合,形成有效的居住基础设施和家居日程事项的管理,以提高家居日常生活安全可靠、便捷、舒适度、艺术化,进而达到环境节约的日常生活环境[9]。
1.3.2 发展背景
智能家居系统是新时期网络之下物联网化的一个产物,利用物联网技术把居家环境中不同的设备联系在一起,并提取最新数据,再让系统来管理设备,并进行管理。光照控制系统,数字控制系统,音频系统,监控系统,家电系统等等。十八世纪末期就产生了智能家居系统的概念,不过从来未有一个特定的例子发生。一九八四年,由美国联邦企业委员会(united technologies building system)所提出的将机械设备信息化,服务整合化概念应用到与国家康涅狄州合作的一家市场,就这样当今世界上第一幢"智能型建筑"就诞生了,也打开了全球智能家居新时代的校门[10]。
1.4 发展历程
作为一种新生的行业,智能家居系统还处在低发展期,而行业的消费也还不能完善。近几年来,由于中国智能家居市场发展的推动,以及项目的逐步落地,消费者逐渐有了新的观念,去尝试新的产品,智能化,科技化。为了产业进步,推动智能家居的发展,培训消费者的使用习惯无疑是最为关键的,有着很大的潜力市场,缺乏新兴人才。智能家居在国内的发展期主要分为四个时期,分别是萌芽期、开创期、徘徊期和融合期。
1.4.1 萌芽期
在国内首次出现智能家居这个概念是在一九九四年,而一九九四-一九九九年也是同一个发展阶段。行业处于未成熟、待被人们认知的阶段。首先缺乏专门的智能家居厂商,其次缺乏专门的管理人员,因此发展速度滞后于国外,但改革开放后,在深圳出现了一二家企业专门进行美国X-10的智能家居代理业务,从国外进口智能家居,再销往国内市场,消费者大多为富豪和欧美用户[11]。
21世纪初的时候,国内开始涌现出一大批智能家居研发企业,大多分布在南方沿海城市,深圳、厦门、杭州等地。智能研发技术逐渐成熟,得到了大幅度的完善。国内的智能培训系统也得到小幅度提升,依然缺少国内客户使用[12]。
进入二零零五年后,国内市场得到改善,大批国外优秀人才进入中国市场,带动智能家居系统的研发。高薪引进高精端技术人才,带动国内员工的积极性,形成良性竞争,促进智能系统的发展。二十一世纪初,国内只有少部分企业存在,导致存在了一小部分恶性竞争,很大程度上影响了国内市场,市场动荡,发展技术停滞,员工薪资普遍下降。由于缺乏技术和资金的支持,很多微小型企业,都在2005年前后宣布破产。只有小部分公司坚持了下来,纵观国内市场,企业规模大大减少。在国内市场动荡的同时,国外市场很少有影响。国外多数企业宣布转型进军中国市场,有罗朗格,海尔等品牌。国内民营企业也找到了自己的发展方向,在政府的支持下,智能系统市场得到缓解,在慢慢进步,和国外企业竞争[13]。
二零零八年后,国内市场突飞猛进。房地产行业飞速发展,为智能家居的销售量提供了一个巨大的平台。近年来,随着越来越多的人在城市定居,智能家居的1量达到历史高峰。这将是一个新的转折点,智能家居进入了一个新的时期,也将会迎来爆发期,与新时代相结合,成为社会的主流[14]。
本课题的研究内容主要是基于java实现智能家居系统的研究,其包含的技术有
- 智能家居的出现和发展史
- Java技术与智能家居的关系
- MySQL数据库的基本处理方法和怎样建立一个数据库。
- 系统的总体设计
- 家居网的代码分析及模块实现
- 系统功能的实现
2.1 java的产生
Java源自于美国Sun集团的一项叫做GrEEn的工程项目,它当初的目的是为家居消费电子产品开发一种分布式代码管理系统,这样一来人们就可能直接将e-mail发送给电冰柜、电视机等家居,对它们实施管理,并与它们实现信息互动[3]。起初,企业准备使用C++,但由于C++过于复杂,且稳定性欠佳,企业最后选择基于C++开发了一种全新的编程语言Oak(Java的前辈),Oak是一种可以使用互联网的小巧而且安全可靠的编程语言,Sun企业也曾依此投标了一项交互式的电视工程项目,但最终还是被SGI企业战败。可怜的Oak们似乎无家可归,正好在这时由MarkArdreesen所研发的Mosaic和Netscape激发了Oak的项目成员,他们使用Java语言创建了HotJava网页,并获得了Sun集团执行官ScottMcNealy的支持,从而激发了Java进入Internet。Java的取名方式也有一?copy;趣闻,有一天,几个Java成员小组的会员们正商议为这种新兴的编程语言取一个名称,当时他们还在咖啡厅饮着Java(爪哇)的咖啡时,有个人灵机一动说就叫Java怎样,并受到了他们的称赞,于是乎,Java这个名称就这么传开了。
Sun公司继Green项目之后又进行了多年的研发,并最终于一九九五年五月三日在SunWorld'95上,公开推出了Java和HotJava浏览器。在同年,还有不少企业也相继取得了Java许可,如Netscape公司在一九九五年八月,以及Oracle公司在一九九五年十月也先后取得了Java许可。而Sun公司于一九九五年推出了首个Java版本之后,又在一九九六年一月宣布将组建全新的业务部门─部,这个部门主要负责研发、营销和支持采用Java技术开发的软件产品,由AlanBaratz先生担任董事长[4]。在一九九五年Sun就已经发表了Java,不过因为这是一门语言,而要想提供更复杂的应用,就一定要有一套的更强力的设计库支撑才还行。于是,Sun就在一九九六年1月3日提出了JDK1.0。而这一版则就包含了二个组成部分:执行环境(即JRE)和设计环境(即JDK)。在执行环境中包含了内核API、集合API,用户API,开发技术,以及Java虚拟机(JVM)五大组成部分。而设计环境还包含了编辑Java程式的编辑器(即javac)。在JDK一点零时期,JDK只有AWT(一款适合设计图形用户界面的API)之外,其它的类库都并不完善[5]。Sun公司在发布JDK一点零之后,也紧跟着,Sun公司于一九九七年月18日公布了JDK1.1。JDK1.1相比于JDK1.0,主要的提升便是专门为JVM添加了JIT(即时翻译)的翻译器。JIT与常规的编译器不同,常规的编译器都是编辑一个,在执行完后再将它丢弃,但JIT却会把经常使用的指令保留到内容中,当下一次调用时就不需再编辑了。这样,JDK在效能上就有了相当大的提高[6]。Sun公司在发布JDK一点一之后,紧接着又发布了多个JDK一.x版本。自Sun公司引入Java之后,JDK的下载次数就越来越彪升了,到一九九七年,JDK的总下载次数已经突破了零,000次,而到一九九八年,JDK的总下载次数就已达到了,000,000。尽管在一九九八年以前,Java已经被许多的软件公司所采用,但是因为当时硬件技术环境或者JVM的科技因素,它的实际使用范围却非常受限。因为当时Java大多只广泛应用于最前端的Applet系统和某些移动装置中。但是,这并不等于Java的应用限于这个范畴。在一九九八年是Java开始发展的第一年。在这第一年中,Sun公司推出了JSP/Servel、EJB标准,并且把Java分为了J EE、J SE和J ME。标志着,Java开始吹响了向企业、桌面和移动设备三个主要应用领域前进的号角。
Java是由Sun公司发布的最新的一代面向对象编程语言,尤其适用于Internet应用开发领域,它的平台无关特性也直接地危及着Wintel的市场独占战略地位。一时间,"连Internet,用Java程序设计",已经变成技术人员的一个潮流。尽管当时新闻界的报导还有些言过其实,但Java视为现代软件的一个革命性的科技,其战略地位已经基本被奠定了,这主要体现在如下几方面:1.计算机行业的很多大企业都买下了Java的许可,包含IBM,Apple,DEC,Adobe,SiliconGraphics,HP,Oracel,Toshiba,甚至还有最不情愿的Microsoft。这一点表明,Java已经获得了国际工业界的广泛承认[7]。许多的应用软件开发商也开始支援Java的应用软件生产。如:美国Borland有限公司正在研制的基于Java的快速应用开发环境Latte,预计产品将会于一九九六年中期推出。而Borland有限公司的这一举动,也促进了Java公司产品进军PC机的软件市场。Sun企业自身的Java研发环境JavaWorkshop,现已推出。数据库供应商如:Illustra,Sysbase,Versant,以及Oracle等都在发展CGI界面,同时支援HTML和Java。但今天也已是从计算机网络为中枢的数据运算时代发展,不支援HTML和Java,因此软件的使用范围也仅仅限于同质的工作环境(同样的硬件平台)。3.Intranet正在变成中小企业电子商务信息系统最好的方案,而在当中Java语言将起到无法取代的功能。Intranet的主要目的是将Internet作为公司内部的网络系统,它的主要好处体现在:方便,容易应用和管理[8]。因为用户不管使用了什么形式的主机或者操作系统,用户界面都是在统一的Intrnet网站上,而数据库系统、Web主页、以及软件(用Java编的Applet)则出现于WWW服务器上,因此不管开发者,还是管理者,或者是使用者都能够获益于该解决措施。Java语言目前正持续成长与发展,以Sun企业为重要的发展推动力,较常见的语言编译器学习环境有JDK(JavaDevelopKit)与JWS(JavaWorkshop)。另外许多一些企业也开始研究Java语句的编译器和集成环境,估计不久后Java程序设计语句的准确性和效率都将会大大提高,因为用户以前用Java程序设计语句就与现在用C++程序设计语句同样简单。
第三章 智能家居系统的分析与设计
本系统是智能家居系统来进行研究开发的,借助了Eclipse和JSP、SSM等工具,这些都是为开发者免费提供的,所以开发者可以放心进行开发。其次,本次开发的系统可以在模拟器和电脑上运行,所以在开发时,开发者要运行和调试好环境以便在开发过程中对系统程序进行测试。
3.1.2 技术可行性分析
随着互联网的发展,互联网与电脑已经成为现在人的必需品,所以此智能家居系统所需要的网络环境和载体都已经具备。此智能家居系统界面清晰,操作方便,一般在对操作人员进行培训的时候也不会太消耗时间,很容易操作。电脑的兼容性问题,本系统完全可以进行安装和操作,所以不需要额外寻找适配的电脑。本系统借助互联网来进行可操作,所以需要借助WIFI或者数据流量进行数据的传输。最后,系统会有一个数据库来进行数据的存储、删除、查找等基本操作,所以完全具备技术可行性。
3.1.3 经济可行性分析
首先就开发技术来说,开发系统所借助的开发环境都是全部免费的,所以在开发的过程中并不需要额外的成本去使用其他的一些开发技术。其次,此系统需要的电脑都是很普遍的,参观的用户和管理人员都具有电脑,所以不需要额外佩备;网络可以使用无线网络或者手机的数据流量,所以成本较低,是可以接受的。智能家居系统的开发不仅可以节约商家资源,还可以更好的管理人员。
3.1.4需求分析
系统模块分析是对系统的各个模块做出相应的说明以及解释。此系统的模块分别有前台和后台这二大基本模块,其中前台包括;关于我们、智能产品、智能家居等这些子模块,并且可以购买智能产品,而后台则包括;用户、关于我们、智能产品这些子模块。对系统模块做出详细的分析会使系统的结构更加清晰,从而系统开发进行的也会更加顺利。
3.2系统模块分析
3.2.1 用户模块
用户登录之后,进入前台,可以查看到首页、关于我们、智能产品、智能家居、个人中心、购物车、在线咨询等。用户用例图如图3-2所示: