JAVA的主要应用领域是什么?

JAVA的主要应用领域是什么?,第1张

1、大型网站,主要使用JAVA EE,最有名例子就是电子商务交易平台阿里巴巴、淘宝、京东。

2、大型企业级应用,主要使用JAVA EE,比如大型企业管理系统,CRM系统,ERP系统21有关通信及网络的大型企业:移动、联通、电信、网通主要的信息化都是JAVA22有关金融行的大型企业,所有的银行、证券公司,互联网金融; 23大型管理系统,如:供应链,客户管理系统,物流系统。

3、电子政务,主要使用JAVA EE,相关的政府部门绝大多数的信息化系统是JAVA开发的。

4、游戏,很多手机游戏都是用JAVA开发的。包括大型网游的后台数据统计都是java。

5、嵌入式设备及消费类电子产品,主要用 JAVA ME,无线手持设备、通信终端、医疗设备、信息家电(如数字电视、机顶盒、电冰箱)、汽车电子设备等是比较热门的Java应用领域,这方面的应用例子有中国联通CDMA 1X网络中基于Java技术的无线。

6、各大旅游网站基本都是使用java做的开发。

7、出行的交通工具的订票系统绝大部分也是使用java开发的。

8、流行的大数据,最主流的大数据框架Hadoop的应用主要用Java开发。Java最大的优势之一就是它在大数据领域的地位,目前很多的大数据架构都是通过Java来完成的。

JAVA开源与否与JAVA本身无关,开源不是开放编译器的源代码,而是写了一个软件, 然后把这个软件的源代码发布到网上, 让大家都可以学习,改进,就是开源。要符合一定的规范,比如GPL 等。

Java是一种可以撰写跨平台应用软件的面向对象的程序设计语言。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,拥有全球最大的开发者专业社群。

Java是由Sun Microsystems公司推出的Java面向对象程序设计语言(以下简称Java语言)和Java平台的总称。Java由James Gosling和同事们共同研发,并在1995年正式推出。

扩展资料

Java语言特点

1、简单性

Java看起来设计得很像C++,但是为了使语言小和容易熟悉,设计者们把C++语言中许多可用的特征去掉了,这些特征是一般程序员很少使用的。

例如,Java不支持go to语句,代之以提供break和continue语句以及异常处理。Java还剔除了C++的操作符过载(overload)和多继承特征,并且不使用主文件,免去了预处理程序。因为Java没有结构,数组和串都是对象,所以不需要指针。Java能够自动处理对象的引用和间接引用,实现自动的无用单元收集,使用户不必为存储管理问题烦恼,能更多的时间和精力花在研发上。

2、面向对象

Java是一个面向对象的语言。对程序员来说,这意味着要注意应中的数据和操纵数据的方法(method),而不是严格地用过程来思考。在一个面向对象的系统中,类(class)是数据和操作数据的方法的集合。数据和方法一起描述对象(object)的状态和行为。

每一对象是其状态和行为的封装。类是按一定体系和层次安排的,使得子类可以从超类继承行为。在这个类层次体系中有一个根类,它是具有一般行为的类。Java程序是用类来组织的。

Java还包括一个类的扩展集合,分别组成各种程序包(Package),用户可以在自己的程序中使用。

3、分布性

Java设计成支持在网络上应用,它是分布式语言。Java既支持各种层次的网络连接,又以Socket类支持可靠的流(stream)网络连接,所以用户可以产生分布式的客户机和服务器。

网络变成软件应用的分布运载工具。Java程序只要编写一次,就可到处运行。

——Java

-java开源

新买的打印机怎么安装使用

1、查看说明书,把打印机插上电源,揭去墨盒喷头保护膜,把墨盒插入正确的墨盒车;

2、用数据线连接打印机U口和电脑U口;

3、把驱动光盘放入光驱;

4、运行光盘自动安装程序;

5、放入打印纸,打印测试页,校准喷头。

安装打印机驱动方法,可参考以下步骤:

1、点击屏幕左下角的“开始”按钮,从弹出的菜单列表中选择“打印机和传真”

2、在打开的“打印机和传真”窗口中单击左侧的“添加打印机”命令,

3、接着会弹出“添加打印机向导”对话框,单击“下一步”按钮继续:一般我们是选择第一项,使用网络打印机也更多的选择第一项,再单击“下一步”按钮继续,

4、在接下来的步骤中,我们选择“创建新端口”,再选择“StandardTCP/IPPort”项即可,一般情况下可以这样选择,

5、单击“下一步”按钮后弹出新的对话框,直接单击“下一步”按钮继续,

6、接下来就是关键的一步了,填入正确的网络打印机的IP地址,单击“下一步”按钮:最后一步确认对话框中单击“完成”按钮,

7、稍等一会切换到新的对话框,我们单击“从磁盘安装”,在弹出的对话框中单击“浏览”按钮找到安装程序,

8、点击“确定”按钮后“添加打印机向导”对话框中会自动列表当前打印机的驱动,单击“下一步”按钮继续,

9、后面一路单击“下一步”按钮即可,直到最后的“完成”对话框,

10、单击“完成”按钮后开始安装驱动程序了:稍等一会对话框自动消失,可以看到“打印机和传真”窗口中有了刚才添加的打印机。

怎么安装新的打印机

1、首先,在电脑桌面的开始菜单中点击“设备和打印机”这个选项。

2、然后,进入到“选择打印机端口”的界面,选择“创建新端口”并设置端口类型为“StandardTCP/IPPort”,就可以回车确定了。

3、等跳转进入“键入打印机主机名或IP地址”的界面,再填写“主机名或IP地址”(在这里输入的地址是不能被占用的),在自动生成“端口名称”后,回车确定即可。

4、在“安装打印机驱动程序”的跳转界面上,根据换办公室后新的打印机型号来做出相应的选择(如图就是在“厂商”选择“RICOH”以及在“打印机”选择“RICOHAficioMP5001PCL6”),完成需要回车确定。

5、最后,会提示添加打印机的驱动已经成功,只要勾选“设置为默认打印机”并点击“打印测试页”,就能够证明已经在办公室安装新的打印机了。

安装新的打印机需要:连接打印机。把打印机的电源线和数据线接连好,数据线是接电脑的(分USB接口和并口两种)。

然后再把打印机电源关闭,安装驱动光盘。驱动可在随机带的驱动盘中安装,也可以在相应的网站上下载。安装完驱动后或者在安程过程中提示打开打印机电源时,打开打印机。

依次点击"开始"菜单-“控制面板”-打印机和传真机-在里面找到新安装的打印机图标,将它设置成默认打印机。完成以上步骤,就可以在文档中使用打印机了。

局域网内的打印机只要知道IP然后添加就可以使用。

打印机如何安装

问题一:如何在电脑上安装打印机第一步:将打印机连接至主机,打开打印机电源,通过主机的“控制面板”进入到“打印机和传真”文件夹,在空白处单击鼠标右键,选择“添加打印机”命令,打开添加打印机向导窗口。选择“连接到此计算机的本地打印机”,并勾选“自动检测并安装即插即用的打印机”复选框。第二步:此时主机将会进行新打印机的检测,很快便会发现已经连接好的打印机,根据提示将打印机附带的驱动程序光盘放入光驱中,安装好打印机的驱动程序后,在“打印机和传真”文件夹内便会出现该打印机的图标了。第三步:在新安装的打印机图标上单击鼠标右键,选择“共享”命令,打开打印机的属性对话框,切换至“共享”选项卡,选择“共享这台打印机”,并在“共享名”输入框中填入需要共享的名称,例如paqIJ,单击“确定”按钮即可完成共享的设定。提示:如果希望局域网内其他版本的操作系统在共享主机打印机时不再需要费力地查找驱动程序,我们可以在主机上预先将这些不同版本选择操作系统对应的驱动程序安装好,只要单击“其他驱动程序”按钮,选择相应的操作系统版本,单击“确定”后即可进行安装了。2配置网络协议为了让打印机的共享能够顺畅,我们必须在主机和客户机上都安装“文件和打印机的共享协议”。右击桌面上的“网上邻居”,选择“属性”命令,进入到“网络连接”文件夹,在“本地连接”图标上点击鼠标右键,选择“属性”命令,如果在“常规”选项卡的“此连接使用下列项目”列表中没有找到“Microsoft网络的文件和打印机共享”,则需要单击“安装”按钮,在弹出的对话框中选择“服务”,然后点击“添加”,在“选择网络服务”窗口中选择“文件和打印机共享”,最后单击“确定”按钮即可完成。3客户机的安装与配置现在,主机上的工作我们已经全部完成,下面就要对需要共享打印机的客户机进行配置了。我们假设客户机也是WindowsXP操作系统。在网络中每台想使用共享打印机的电脑都必须安装打印驱动程序。第一步:单击“开始→设置→打印机和传真”,启动“添加打印机向导”,选择“网络打印机”选项。第二步:在“指定打印机”页面中提供了几种添加网络打印机的方式。如果你不知道网络打印机的具体路径,则可以选择“浏览打印机”选择来查找局域网同一工作组内共享的打印机,已经安装了打印机的电脑,再选择打印机后点击“确定”按钮;如果已经知道了打印机的网络路径,则可以使用访问网络资源的“通用命名规范”(UNC)格式输入共享打印机的网络路径,例如“jamespaqIJ”(james是主机的用户名),最后点击“下一步”。第三步:这时系统将要你再次输入打印机名,输完后,单击“下一步”按钮,接着按“完成”按钮,如果主机设置了共享密码,这里就要求输入密码。最后我们可以看到在客户机的“打印机和传真”文件夹内已经出现了共享打印机的图标,到这儿我们的网络打印机就已经安装完成了。4让打印机更安全如果仅仅到此为止的话,局域网内的非法用户也有可能趁机使用共享打印机,从而造成打印成本的“节节攀升”。为了阻止非法用户对打印机随意进行共享,我们有必要通过设置账号使用权限来对打印机的使用对象进行限制。通过对安装在主机上的打印机进行安全属性设置,指定只有合法账号才能使用共享打印机。第一步:在主机的“打印机和传真”文件夹中,用鼠标右键单击其中的共享打印机图标,从右键菜单中选择“属性”选项,在接着打开的共享打印机属性设置框中,切换“安全”选项卡。第二步:在其后打开的选项设置页面中,将“名称”列表处的“everyone”选中,并将对应“权限”列表处的“打印”选择为“拒绝”,这样

问题二:打印机驱动怎么装(安装步骤)1开始--控制面板--添加打印机

2下一步,(如果打印机在你本机,你选择此偿算机连本地打印机,之后点下一步

3、选择打印机插孔,一般的u和ltp1,插口,正常你的这个是ltp插口的

,选择完毕你点下一步

4、点下一步,在出现一个对话框,在厂商那里找epson,在型号那里找LQ-670K+。这个是windows自带的

5、下一步,下一步,完成

6、插上打印机,通电,自动检测,好用了

7给分吧,谢谢!

问题三:怎么安装新的打印机先把以前的打印恭卸载掉,然后把新打印机线连好,双击控制面板里德添加打印机,自动查找,找到后把驱动盘放进去安装

问题四:如何安装即插即用打打印机下面是安装指导,如果要对照图看的话建议进:

921安装本地打印机

在安装本地打印机之前首先要进行打印机的连接,用户可在关机的情况下,把打印机的信号线与计算机的LPT1端口相连,并且接通电源,连接好之后,就可以开机启动系统,准备安装其驱动程序了。

由于中文版WindowsXP自带了一些硬件的驱动程序,在启动计算机的过程中,系统会自动搜索新硬件并加载其驱动程序,在任务栏上会提示其安装的过程,如“查找新硬件”、“发现新硬件”、“已经安装好并可以使用了”等文本框。如果用户所连接的打印机的驱动程序没有在系统的硬件列表中显示,就需要用户使用打印机厂商所附带的光盘进行手动的安装,用户可以参照以下步骤进行安装:

(1)单击“开始”按钮,在“开始”菜单中选择“控制面板”命令,在打开的“控制面板”窗口中双击“打印机和传真”图标,这时打开“打印机和传真”窗口。

(2)在窗口链接区域的“打印机任务”选项下单击“添加打印机”图标,即可启动“添加打印机向导”。在这个对话框中提示用户应注意的事项,如果用户是通过USB端口或者其他热插拔端口来连接打印机,就没有必要使用这个向导,只要将打印机的电缆插入计算机或将打印机面向计算机的红外线端口,然后打开打印机,中文版WindowsXP系统会自动安装打印机,如图98所示。

(3)单击“下一步”按钮,打开“本地或网络打印机”对话框,用户可以选择安装本地或者是网络打印机,在这里选择“连接到这台计算机的本地打印机”单选项,如图99所示。

当选择“自动检测并安装我的即插即用打印机”复选框时,在随后会出现“新打印机检测”对话框,添加打印机向导自动检测并安装新的即插即用的打印机,当搜索结束后,会提示用户检测的结果,如果用户要手动安装,单击“下一步”按钮继续,如图910所示。

(4)这时向导打开“选择打印机端口”对话框,要求用户选择所安装的打印机使用的端口,在“使用以下端口”下拉列表框中提供了多种端口,系统推荐的打印机端口是LPT1,大多数的计算机也是使用LPT1端口与本地计算机通讯,如果用户使用的端口不在列表中,可以选择“创建新端口”单选项来创建新的通讯端口,如图911所示。

(5)当用户选定端口后,单击憨下一步”按钮,打开“安装打印机软件”对话框,在左侧的“厂商”列表中显示了世界各国打印机的知名生产厂商,当选择某制造商时,在右侧的“打印机”列表中会显示该生产厂相应的产品型号,如图912所示。

如果用户的所安装的打印机制造商和型号未在列表中显示,可以使用打印机所附带的安装光盘进行安装,单击“从磁盘安装”按钮,打开如图913所示的对话框,用户要插入厂商的安装盘,然后在“厂商文件复制来源”文本框中输入驱动程序文件的正确路径,或者单击“浏览”按钮,在打开的窗口中选择所需的文件,然后单击“确定”按钮,可返回到“安装打印机”对话框。

(6)当用户确定驱动程序的文件的位置后,单击“下一步”打开“命名您的打印机”对话框,用户可以在“打印机名”文本框中为自己安装的打印机命一个名称,并提醒用户有些程序不支持超过31个英文字符或15个中文字符的服务器和打印机名称组合,最好取个短一点的打印机名称,如图914所示。用户可以在此将这台打印机设置为默认的打印机,当设置为默认打印机之后,如果用户是处于网络中,而且网络中有多台共享打印机,在进行打印作业时,如果未指定打印机,将在这台默认的打印机上输出。

问题五:针式打印机如何安装第一步:将打印机连接至主机,打开打印机电源,通过主机的“控制面板”进入到“打印机和传真”文件夹,在空白处单击鼠标右键,选择“添加打印机”命令,打开添加打印机向导窗口。选择“连接到此计算机的本地打印机”,并勾选“自动检测并安装即插即用的打印机”复选框。

第二步:此时主机将会进行新打印机的检测,很快便会发现已经连接好的打印机,根据提示将打印机附带的驱动程序光盘放入光驱中,安装好打印机的驱动程序后,在“打印机和传真”文件夹内便会出现该打印机的图标了。

第三步:在新安装的打印机图标上单击鼠标右键,选择“共享”命令,打开打印机的属性对话框,切换至“共享”选项卡,选择“共享这台打印机”,并在“共享名”输入框中填入需要共享的名称,例如paqIJ,单击“确定”按钮即可完成共享的设定。

问题六:打印机驱动怎么安装不同品牌的打印机,安装驱动程序也不太一致,但大同小异,互为借鉴,以EPSONLQ—1600K4为例,看打印机驱动程序安装步骤。

一、使用系统自带的驱动程序

1、“开始”—“打印机和传真”,点击左边窗格中“添加打印机”,打开“欢迎添加打印机向导”对话框,点击“下一步”,打开“本地或网络打印机”选择连接对话框;

2、选择第一项“连接到此计算机的本地打印机”,勾选“自动检测并安装即插即用打印机”,点“下一步”,打开“新打印机检测”对话框;

3、检测后,打“下埂步”,打开“选择打印机端口”对话框;4、点选“使用以下端口”,在右边的下拉列表中

选择推荐的打印机端口“LPT1:”,点击“下一步”,打开“安装打印机软件”对话框;

5、在“厂商”列表中,点击厂商名,在“打印机”列表中,点击打印机名,点击“下一步”,打开“命名打印机”对话框;

6、在“打印机名”文本框中输入打印机名,点击“下一步”,打开“打印机共享”对话框;

7、点选“不共享这台打印机”,打“下一步”,打开“打印测试页”对话框;

8、选否“否”,打“下一步”,统即日自动搜索电脑自带打印机软件进行安装;

9、点击‘完成’。

二、使用打印机带的驱动程序

如果系统没有适合该打印机驱动程序,可用打印机附带的软盘、光盘软件安装驱动程序方法是:

将打印机驱动光盘放入光驱,打开光盘,点击安装,按向导要求一步一步进行,其步骤大大致是:选出择安装语言、本地打印机、安装方式、打印机型号、端口、驱动程序位置、配置信息、正在进行安装、安装结束。

三、下载的驱动文件进行安装

系统内没有打印机驱动程序,又没有驱动光盘,可到“驱动之家”下载,下载后备用(有的需要解压)。安装方法可参照上边一、进行:在“安装打印机软件”对话框中(参照上边一、4、),选择“从磁盘安装”,打开“从磁盘安装”对话框,在“厂商文件复制来源”下拉列表中指定文件路径(如,A:\,D:\\)击“确定”对话框,系统即自动搜索装。

问题七:POS机如何安装厨房打印机?30分厨房打印机必须跟收银机在同一网络下,然后将打印机的ip地址绑定在后台终端管理,选择该台一体机需要打印的分类。

(一)、查看打印机ip地址

1、在打印机连接好电源以后,开机、按住进纸(FEED),小于5秒钟松后开进纸(FEED)按键。打印机将进行自检测并打印出自检测试页清单样。

2、打印出的小票前端可以看到打印机本身的ip地址,如果该网络地址不跟电脑在同一号段,则需要改打印机的ip地址。

(二)、修改打印机ip

1、先将电脑的ip厂址改成跟打印机ip地址在同一号段。例如打印机的ip是192168123100,则可以将电脑的ip地址改成192168123120。

提示:什么叫做同一号段?就是看ip地址的前3个点之间的数字是不是一样的。

2、修改成功后,点击这个软件:GPETHERNETnewexe,设置打印机的ip地址。

请在“ipadress”中输入刚才小纸条中打印的ip地址;在“printernewipaddress”的红色框中输入正确的ip地址,例如电脑在修改ip地址之前的ip是1921680111,那么可以在红色框中填1921680100;设置好了之后点击“setnewipaddress”

3、重新打印打印机的ip地址,确认ip地址是否修改成功。修改成功后,可以将电脑的ip地址改回原来的。

4、ip设置好了请绑定后台。系统配置收银终端添加终端。设置每台打印机打印哪些分类下的菜品

(三)、打印机测试

设置好了后,请在双屏机/单屏机/一体机上开单点菜,检查厨房打印机是否打印小票。

如果没有打印,请确认是否按照以上方法操作。重新检测下打印机的ip,判断打印机的ip是否跟收银机或者一体机的ip在同一号段。

问题八:怎样连接安装打印机局域网安装打印机需要以下步骤:

1、在安装了打印机机器上,点击控制面板-》打印机,找到想链接的打印机,右键点击-》共享-》共享这台打印机;

2、查看这台计算机的ip地址(开始-》运行-》输入:cmd-》回车-》输入:ipconfig-》回车,假设ip为19216801);

3、到本机上,开始-》运行-》输入:\\19216801-》回车,等待几秒后(视网络环境的恶略程度,酌情延长等待时间-_-|||)-》弹出窗口中选择共享的打印机,双击进行驱动安装,一律允许下一步,知道安装成功。

问题九:打印机驱动下载后没有安装程序,怎么安装?WINDOWS下,开始菜单——打印机和传真骇—添加打印机——驱动文件路径,将打印机配置文件添加进去就可以了——完成

问题十:佳能打印机怎么安装?50分你这里选择从磁盘安装驱动

再找到你下载的安装文件位置,打开可安装的文件,一路下一步就可以安装上了

未至科技魔方是一款大数据模型平台,是一款基于服务总线与分布式云计算两大技术架构的一款数据分析、挖掘的工具平台,其采用分布式文件系统对数据进行存储,支持海量数据的处理。采用多种的数据采集技术,支持结构化数据及非结构化数据的采集。通过图形化的模型搭建工具,支持流程化的模型配置。通过第三方插件技术,很容易将其他工具及服务集成到平台中去。数据分析研判平台就是海量信息的采集,数据模型的搭建,数据的挖掘、分析最后形成知识服务于实战、服务于决策的过程,平台主要包括数据采集部分,模型配置部分,模型执行部分及成果展示部分等。

未至科技小蜜蜂网络信息雷达是一款网络信息定向采集产品,它能够对用户设置的网站进行数据采集和更新,实现灵活的网络数据采集目标,为互联网数据分析提供基础。

未至科技泵站是一款大数据平台数据抽取工具,实现db到hdfs数据导入功能,借助Hadoop提供高效的集群分布式并行处理能力,可以采用数据库分区、按字段分区、分页方式并行批处理抽取db数据到hdfs文件系统中,能有效解决大数据传统抽取导致的作业负载过大抽取时间过长的问题,为大数据仓库提供传输管道。

未至科技云计算数据中心以先进的中文数据处理和海量数据支撑为技术基础,并在各个环节辅以人工服务,使得数据中心能够安全、高效运行。根据云计算数据中心的不同环节,我们专门配备了系统管理和维护人员、数据加工和编撰人员、数据采集维护人员、平台系统管理员、机构管理员、舆情监测和分析人员等,满足各个环节的需要。面向用户我们提供面向政府和面向企业的解决方案。

未至科技显微镜是一款大数据文本挖掘工具,是指从文本数据中抽取有价值的信息和知识的计算机处理技术,

包括文本分类、文本聚类、信息抽取、实体识别、关键词标引、摘要等。基于Hadoop

MapReduce的文本挖掘软件能够实现海量文本的挖掘分析。CKM的一个重要应用领域为智能比对,

在专利新颖性评价、科技查新、文档查重、版权保护、稿件溯源等领域都有着广泛的应用。

未至科技数据立方是一款大数据可视化关系挖掘工具,展现方式包括关系图、时间轴、分析图表、列表等多种表达方式,为使用者提供全方位的信息展现方式。

浅析深究什么是中间件                作者: 奉继承

  1 由来

  因为工作的原因,我从金蝶集团调入金蝶中间件公司工作以来,经常遇到一个问题就是中间件公司是个什么公司,中间件是什么?,金蝶不是做ERP的吗?怎么也做中间件?。这是我以前在金蝶集团时无法想象的问题。因为金蝶,金蝶ERP的品牌以及大众对ERP的了解,是无需我解析什么是ERP,什么是财务软件一类的问题的。

  毕竟,中间件在实际的应用过程中,是对应用软件起到支撑作用,最终用户并不直接使用中间件,中间件不是大众消费类软件产品。因此,除非是一个行业专业人士,一般不大可能与中间件打交道,不太了解什么是中间件。

  因此,在系统软件之中,操作系统、数据库、中间件的三驾马车,中间件是最神秘的。因为,好歹大家通过Windows基本上会了解操作系统是个什么东西,尽管不会很全面,很专业,毕竟是有感觉的。数据库,虽然没有直接见过,但基本上明白数据是要一个仓库来储存的,因此,也大致知道数据库管理系统是干什么的。

  长期以来,中间件是一个专业化非常强的细分产业。因为中间件的技术门槛比较高,玩家也不多,无论是国外还是国内都是如此。因此,行业内对什么是中间件并不特别在意。而公司名称直接叫中间件的就更少了,金蝶中间件应该是国内外直接在公司名称中冠以中间件字眼最早,也是很少的公司之一。另一方面,因为中间件软件还处于发展阶段,还没有完全成熟,因此对中间件的定义也就没有深究,或者权威的说法。

  但现在情况有点变化,其中一个原因在于2008年底,国家启动了核高基重大科技专项,在基础软件领域明确提出重点支持操作系统、数据库、中间件、文字处理等基础软件产业的自主创新,几乎一夜之间大大小小的软件公司都宣称是做中间件的了,只要不是做最终应用软件的,他们的产品都叫中间件了,一时间,中间件变得蓬勃发展起来了。

  作为中间件行业内的专业化和领先企业来说,大家都重视起中间件来了,这是好事,说明社会上重视了。对行业的发展和繁荣固然重要,但这也隐含了重大的风险。中间件名字被滥用,无论是对用户,对这个产业,对政府和投资人来说,都会有负面的影响。鱼目混珠,泥沙俱下的局面,对中间件产业的正常发展未必就是好事情了,也可能对真正的中间件自主创新带来许多困扰,模糊了中间件的本质,可能会弱化中间件核心技术的创新和发展。

  因此,在这种情况下,无论是对行业内,还是行业外,突然什么是中间件的问题变成了一个大问题了。

  本文试图就中间件的来龙去脉,外延内涵和前世今生,来一个全面的阐释。一家之言,权作业界参考,希望带动大家做一些深入的思考。

  2 中间件的起源

  21 中间件发展的历史

  事情从1946年说起,世界上第一台电子计算机埃尼阿克诞生,人类进入信息时代。1955年,约翰巴克斯发明了最早的程序语言Fortran,现代意义上的软件就诞生了。

  1964年,IBM发布OS/360操作系统,软件与硬件分离,同时,软件成为一个独立的产业正式登上产业界的舞台。中间件就是软件产业不断发展过程中自然产生的。

  90年代,文顿·瑟夫这位互联网之父的发明成为改变IT业的重大革命性创新。互联网促使分布式系统和网络应用的诞生,中间件就是伴随网络技术的产生、发展而兴起的,可以说没有网络就没有现代意义上的中间件。因为,网络环境需要解决异构分布网络环境下软件系统的通信、互操作、协同、事务、安全等共性问题,提高异构分布网络环境下软件系统的互操作性、可移植性、适应性、可靠性等问题。

  1968年IBM发布CICS交易事务控制系统,使得应用软件与系统服务分离,这是中间件技术萌芽的标志,因为CICS还不是分布式环境的产物,因此我们往往还不将CICS作为正式的中间件系统。

  一般来说,我们将1990年诞生于ATT公司的BELL实验室的Tuxedo系统(后来被NOVELL从ATT公司随着UNIX系统一起买走,后来又卖给了BEA公司,现在归于ORACLE公司旗下了)作为中间件的诞生标志。Tuxedo解决了分布式交易事务控制问题,中间件开始成为网络应用的基础设施,中间件正式成型,这是最早的交易中间件。

  1994年IBM发布消息队列服务MQ系列产品,解决分布式系统异步、可靠、传输的通讯服务问题,消息中间件诞生。

  1995年,JAVA之父James Gosling发明JAVA语言,JAVA提供了跨平台的通用的网络应用服务,成为今天中间件的核心技术。JAVA是第一个天生的网络应用平台,特别是J2EE发布以来,JAVA从一个编程语言,演变为网络应用架构,成为应用服务平台的事实标准。应用服务器中间件,成为中间件技术的集大成者,也成为事实上的中间件的核心。

  2001年,微软发布NET,中间件演变为NET和JAVA两大技术阵营。但由于NET还不是一个完全开放的技术体系,只有一个玩家,因此,虽然NET也是一种中间件,但由于IBM/ORACLE/SUN/SAP等巨头都无一例外成了JAVA阵营的支持者,因此,我们习惯上提到中间件时,往往不包括NET中间件体系。

  以上谈的是历史,但透过历史事实背后,为什么会出现中间件,这其中的本质因素是什么?

  22 中间件发展的驱动力

  中间件出现的驱动力主要来自软件研发过程碰到的种种问题。从软件出现最早是用于科学计算,然后是计算机辅助设计、辅助制造等等工业应用。在企业管理领域大规模应用后,业务需求不断的变化、系统不断增加、流程更复杂、系统越来越不堪重负,出现了需求交付方面的重大挑战,以至于人们用软件危机来描述软件工业所面临的困境。

  总结起来,软件工业面临的主要问题是四个方面:质量问题、效率问题、互操作问题、灵活应变问题。这些问题今天依然困扰着这个行业。

  造成这个局面的原因是异构性和标准规范的滞后。

屏蔽异构性

  异构性表现在计算机的软硬件之间的异构性,包括硬件(CPU和指令集、硬件结构、驱动程序等),操作系统(不同操作系统的API和开发环境)、数据库(不同的存储和访问格式)等等。长期以来,高级语言依赖于特定的编译器和操作系统API来编程,而他们是不兼容的,因此软件必须依赖于开发和运行的环境。

  造成异构的原因源自市场竞争、技术升级以及保护投资等因素。希望屏蔽异构平台的差异性问题是促成中间件发展的驱动力之一。

实现互操作

  因为异构性,产生的结果是软件依赖于计算环境,使得各种不同软件之间在不同平台之间不能移植,或者移植非常困难。而且,因为网络协议和通信机制的不同,这些系统之间还不能有效地相互集成。

  造成互操作性不好的原因,主要是标准的滞后。解决软件之间的互操作性问题也是促成中间件发展的驱动力之一。

共性凝练和复用

  软件应用领域越来越多,相同领域的应用系统之间许多基础功能和结构是有相似性的,每次开发系统都从零开始绝对不是一种好的方法,也是对质量和效率的很大的伤害。

  尽可能多地凝练共性并复用以提高软件开发效率和质量,通过中间件通过提供简单、一致、集成的开发和运行环境,简化分布式系统的设计、编程和管理,这也是中间件发展的重要驱动力。

  在长期的探索过程中,解决软件的四个问题的办法总结起来两个方面:工程方法、平台与技术。

  工程方法就是用工业工程、系统工程的理论、方法和体系来解决软件研发过程中的管理问题,包括团队管理、项目管理、质量控制等等,这就是软件工程。除了软件工程方法之外,我们发明了更多的架构规划、设计和实施的方法,不断累积领域的知识与经验等等。

  更好的技术手段,包括更好的程序设计语言、更好的平台和软件开发技术,如面向对象、组件开发、面向服务等等。而这方面,在技术上逐渐发展的成果大部分都凝聚在今天的中间件平台之中。

  而这些更好的技术手段,从本质上是通过复用、松耦合、互操作(标准)等机制来提高软件质量、加快软件研发效率、使研发出来的产品能够相互集成并灵活适应变化。

这些因素逐渐促成了中间件软件的形成和发展。

  3 中间件的概念

  讲了这么多,究竟什么是中间件,也就是中间件的定义是什么?

  针对这个问题,应该说还没有一个标准的定义,或者说还没有完全取得学术界和产业界的共识。

  顾名思义,中间件就是处于中间的软件。但这种不是从功能,或者特性来定义的概念,而是用位置来定义的名字,就容易被不同的人从不同角度赋予其不同的含义。

  IDC曾经给中间件下的定义是中间件是一种独立的系统软件或服务程序,分布式应用软件借助这种软件在不同的技术之间共享资源,中间件位于客户机服务器的操作系统之上,管理计算资源和网络通信。

  我国学术界一般认可的定义是中间件是指网络环境下处于操作系统、数据库等系统软件和应用软件之间的一种起连接作用的分布式软件,主要解决异构网络环境下分布式应用软件的互连与互操作问题,提供标准接口、协议,屏蔽实现细节,提高应用系统易移植性(北京大学梅宏)。

  中科院软件所研究员仲萃豪形象地把中间件定义为平台+通信。这个定义限定了只有用于分布式系统中的此类软件才能被称为中间件,同时此定义还可以把中间件与支撑软件和实用软件区分开来。

  中间件处于操作系统软件与用户的应用软件的中间。中间件在操作系统、网络和数据库之上,应用软件的下层,总的作用是为处于自己上层的应用软件提供运行与开发的环境,帮助用户灵活、高效地开发和集成复杂的应用软件。形象地说就是上下之间的中间。

  此外,中间件主要为网络分布式计算环境提供通信服务、交换服务、语义互操作服务等系统之间的协同集成服务,解决系统之间的互连互通问题。形象地说就是所谓左右之间的中间。

  要深入理解什么是中间件,形式化的定义固然重要,我们还得从概念本身去深入理解其核心特征才是最重要的。要理解一个概念,从内涵和外延两个方面去描述是哲学上非常重要的一套方法体系。

  31 中间件的特征(内涵)

  总结分析,中间件有几个非常重要的特征是必须具备的:

平台化

  所谓平台就是能够独立运行并自主存在,为其所支撑的上层系统和应用提供运行所依赖的环境。显然,不是所有的系统或者应用都可以称之为平台的。中间件是一个平台,因此中间件是必须独立存在,是运行时刻的系统软件,它为上层的网络应用系统提供一个运行环境,并通过标准的接口和API来隔离其支撑的系统,实现其独立性,也就是平台性。

  因此,目前许多的开发语言、组件库和各种报表设计之类的软件,很难满足平台性,将这类软件叫中间件,是很不合适的。例如,JAVA是一种语言,这种语言的开发工具和开发框架,如Eclipse、JBuilder、Struts,Hibernate等等就不能称为中间件,充其量叫中间件开发工具,而不能叫中间件本身,就如同各种建筑工程设备和机械,如吊臂、搅拌机等不能叫建筑,而只能成为建筑工具一样。而J2EE应用服务器提供JAVA应用的运行环境,就是经典的中间件。

应用支撑

  中间件的最终目的是解决上层应用系统的问题,而且也是软件技术发展到今天对应用软件提供最完善彻底的解决方案。

  高级程序设计语言的发明,使得软件开发变成一个独立的科学和技术体系,而操作系统平台的出现,使得应用软件通过标准的API接口,实现了软件与硬件的分离。

  现代面向服务的中间件在软件的模型、结构、互操作以及开发方法等四个方面提供了更强的应用支撑能力:

  模型:构件模型弹性粒度化,即通过抽象层度更高的构件模型,实现具备更高结构独立性、内容自包含性和业务完整性的可复用构件,即服务。并且在细粒度服务基础上,提供了更粗粒度的服务封装方式,即业务层面的封装,形成业务组件,就可以实现从组件模型到业务模型的全生命周期企业建模的能力。

  结构:结构松散化,即,将完整分离服务描述和服务功能实现以及服务的使用者和提供者,从而避免分布式应用系统构建和集成时常见的技术、组织、时间等不良约束。

  互操作:交互过程标准化,即,将与互操作相关的内容进行标准化定义,如服务封装、描述、发布、发现、调用等契约,通信协议以及数据交换格式等等。最终实现访问互操作、连接互操作和语义互操作。

  开发集成方法:应用系统的构建方式由代码编写转为主要通过服务间的快捷组合及编排,完成更为复杂的业务逻辑的按需提供和改善,从而大大简化和加速应用系统的搭建及重构过程。

  为解决分布式网络计算之间的组件复用,人们发明了企业对象组件,如(COM+, NET, EJB等),或者叫分布式组件。通过远程对象代理,来实现企业网络内复用,不同系统之间复用。

  传统中间件的核心是组件对象的管理。但分布式组件也是严重依赖其受控环境,由于构件实现和运行支撑技术之间存在着较大的异构性,不同技术设计和实现的构件之间无法直接组装式复用。

  而现代中间件的发展重要趋势就是以服务为核心,如WebService, SCA/SDO等。通过服务,或者服务组件来实现更高层次的复用、解耦和互操作,即SOA架构中间件。

  因为服务是通过标准封装,服务组件之间的组装、编排和重组,来实现服务的复用。而且这种复用,可以在不同企业之间,全球复用,达到复用的最高级别,并且是动态可配置的复用。

耦合关系

  基于SOA架构的中间件,在松耦合解耦过程也发展到了最后的境界。传统软件将软件之中核心三部分——网络连接、数据转换、业务逻辑全部耦合在一个整体之中,形成铁板一块的软件,牵一发而动全身,软件就难以适应变化。分布式对象技术将“连接逻辑”进行分离,消息中间件将“连接逻辑”进行异步处理,增加了更大的灵活性。消息代理和一些分布式对象中间件将数据转换也进行了分离。而SOA架构,通过服务的封装,实现了业务逻辑与网络连接、数据转换等进行完全的解耦。

软件技术的不断解耦的过程

互操作性

  传统软件互操作技术也存在问题。互联网前所未有的开放性意味着各节点可采用不同的中间件技术,对技术细节进行了私有化的约束,构件模型和架构没有统一标准,从而导致中间件平台自身在构件描述、发布、发现、调用、互操作协议及数据传输等方面呈现出巨大的异构性。各种不良技术约束的结果是软件系统跨互联网进行交互变得困难重重,最终导致了跨企业/部门的业务集成和重组难以灵活快速的进行。

  在软件的互操作方面,传统中间件只是实现了访问互操作,即通过标准化的API实现了同类系统之间的调用互操作,而连接互操作还是依赖于特定的访问协议,如JAVA使用RMI,CORBA使用IIOP等。而SOA通过标准的、支持Internet、与操作系统无关的SOAP协议实现了连接互操作。而且,服务的封装是采用XML协议,具有自解析和自定义的特性,这样,基于SOA的中间件还可以实现语义互操作。

基于服务的中间件

  总之,服务化体现的是中间件在完整业务复用、灵活业务组织方面的发展趋势,其核心目标是提升IT基础设施的业务敏捷性。因此,中间件将成为SOA的主要实现平台。

  32 中间件的分类(外延)

  中间件所包括的范围十分广泛,针对不同的应用需求涌现出多种各具特色的中间件产品。从功能性外延来看,中间件包括交易中间件、消息中间件、集成中间件等各种功能性的中间件技术和产品。

  现在,中间件已经成为网络应用系统开发、集成、部署、运行和管理必不可少的工具。由于中间件技术涉及网络应用的各个层面,涵盖从基础通讯、数据访问到应用集成等众多的环节,因此,中间件技术呈现出多样化的发展特点。

  根据中间件在软件支撑和架构的定位来看,基本上可以分为三大类产品:应用服务类中间件、应用集成类中间件、业务架构类中间件。

应用服务类中间件

  为应用系统提供一个综合的计算环境和支撑平台,包括对象请求代理(ORB)中间件、事务监控交易中间件、JAVA应用服务器中间件等。

  随着对象技术与分布式计算技术的发展,两者相互结合形成了分布对象计算,并发展为当今软件技术的主流方向。1990年底,对象管理组织OMG首次推出对象管理结构OMA(Object Management Architecture),对象请求代理(Object Request Broker)是这个模型的核心组件。它的作用在于提供一个通信框架,透明地在异构的分布计算环境中传递对象请求。CORBA规范包括了ORB的所有标准接口,是对象请求代理的典型代表。

  随着分布计算技术的发展,分布应用系统对大规模的事务处理提出了需求,比如商业活动中大量的关键事务处理。事务处理监控界于Client和Server之间,进行事务管理与协调、负载平衡、失败恢复等,以提高系统的整体性能。它可以被看作是事务处理应用程序的操作系统。这类被称为交易中间件,适用于联机交易处理系统,主要功能是管理分布于不同计算机上的数据的一致性,保障系统处理能力的效率与均衡负载。交易中间件所遵循的主要标准是X/open DTP模型,典型的产品是Tuxedo。

业务架构类中间件

  作为共性的凝练,中间件不仅要从底层的技术入手,将共性技术的特征抽象进中间层,还要更多地把目光投向到业务层面上来,根据业务的需要,驱动自身能力的不断演进,即,不断出现的新的业务需要驱动了应用模式和信息系统能力的不断演进,进而要求中间件不断地凝练更多的业务共性,提供针对性支撑机制。近年来,这一需求趋势愈发明显,越来越多的业务和应用模式被不断地抽象进入中间件的层次,如业务流程流、业务模型、业务规则、交互应用等等,其结果是中间件凝练的共性功能越来越多,中间件的业务化和领域化的趋势非常明显。

  业务架构类中间件包括业务流程、业务管理和业务交互等几个业务领域的中间件。

  业务流程是处理业务模型的非常重要方法。管理流程与各职能部门和业务单元有密切关系,须藉各部门间的紧密协调,以达到企业运营和管理功能的目标。在业务流程支持方面,从早期的WfMC定义的工作流,到基于服务的业务流程规范BPEL,由业务流程的支撑,逐渐形成了完整的业务流程架构模型,包括流程建模、流程引擎、流程执行、流程监控和流程分析等。有名的业务流程中间件包括基于工作流的IBM Lotus Workflow,基于BPEL的IBM Webshpere Process Server以及同时支持工作流和BPEL的金蝶Apusic BPM等。

  业务管理就是对业务对象的建模和业务规则的定义、运行和监控的中间件平台。策略管理员和开发人员将业务逻辑捕获为业务规则。使用规则管理器可以将规则轻松地嵌入 Web、现有应用程序和后台办公应用程序。常见的业务管理中间件包括IBM Websphere ILOG 业务规则管理系统,金蝶BOS等。

  业务交互的中间件平台提供组织的合作伙伴、员工和客户通过WEB和移动设备等交互工具,实现基于角色、上下文、操作、位置、偏好和团队协作需求的个性化的用户体验。这种门户服务器软件基于标准Portlet组合的应用程序访问框架,实现用户集成和交互集成,构建灵活、基于 SOA 的应用架构。典型的门户中间件有IBM Websphere Portal Server和金蝶Apusic Portal Server等。

  4 中间件的未来

  中间件是互联网时代的IT基础设施,提供业务的灵活性,消除信息孤岛,提高IT的研发和运营效率。作为网络计算的核心基础设施,中间件正在呈现出服务化、自治化、业务化、一体化等诸多新的发展趋势,中间件进入20时代,将极大提升互联网统一计算平台的敏、睿、融、和能力。

中间件将变宽变厚

  以互联网为核心的多网融合产生了丰富多样的新型网络应用模式,作为主流的应用运行支撑环境,中间件无处不在,越来越多的应用模式被抽象到中间件层,中间件将变宽变厚。

中间件将面向服务、易于集成

  随着SOA技术逐渐成为主流,以及异构系统的集成问题日益严峻,中间件将向面向服务、易于集成的方向发展。

中间件将向一体化的方向发展

  中间件产品的种类日趋多样(如交易中间件、消息中间件、应用服务器、集成中间件、业务中间件等),但其技术架构将向一体化的方向发展,主要包括:

  统一内核,易于演化:各大厂商的中间件产品将构建在统一内核之上,使其易于平台演化。

  统一编程模型,易于开发:不同中间件产品提供了不同的编程模型,这些编程模型将趋向统一,从而达到易于开发的目的。

  统一管理模型,易于系统维护:不同中间件产品提供了不同的管理工具与管理手段,这些管理工具与手段将趋向统一,使其易于管理,降低运维成本。

中间件产品将支持云计算,易于交付

  中间件产品将成为云计算的支撑平台,使应用易于交付。

后端平台深度融合

  一个大胆的设想是:未来五年,浏览器将统一前端,而后端平台(中间件、操作系统、 数据库)走向深度融合。(对中间件的未来发展趋势的详细介绍参加另文《中间件技术的发展趋势分析》,在此不做详细论述。)

  综上所述,我们可以认为中间件是一种独立的系统软件平台,为网络应用软件提供综合的服务和完整的计算环境,借助这种软件使得网络应用能够实现集成,达到业务的协同,实现业务的灵活性。

  (本文由金蝶中间件有限公司总经理 奉继承 博士 撰写)

数据是平台运营商的重要资产,可能提供API接口允许第三方有限度地使用,但是显然是为了增强自身的业务,与此目的抵触的行为都会受到约束。

收集数据主要是通过计算机和网络。凡是经过计算机处理的数据都很容易收集,比如浏览器里的搜索、点击、网上购物、……其他数据(比如气温、海水盐度、地震波)可以通过传感器转化成数字信号输入计算机。

收集到的数据一般要先经过整理,常用的软件:Tableau和Impure是功能比较全面的,Refine和Wrangler是比较纯粹的数据整理工具,Weka用于数据挖掘。

Hadoop是一个能够对大量数据进行分布式处理的软件框架。用于统计分析的R语言有个扩展R + Hadoop,可以在Hadoop集群上运行R代码。更具体的自己搜索吧。

可视化输出的工具很多。建议参考wikipedia的“数据可视化”条目。

Tableau、Impure都有可视化功能。R语言也可以绘图。

还有很多可以用来在网页上实现可视化输出的框架或者控件。

大致基于四种技术:Flash(Flex)或者JS(HTML5)或者Java或者ASPNET(Silverlight)

Flash的有Degrafa、BirdEye、Axiis、Open Flash Chart

JS的有Ajaxorg、Sencha Ext JS、Filament、jQchart、Flot、Sparklines、gRaphael、TufteGraph、Exhibit、PlotKit、ExplorerCanvas、MilkChart、Google Chart API、Protovis

Java的有Choosel、google-visualization-java、GWT Chronoscope、JFreeChart

ASPNET的有Telerik Charts、Visifire、Dundas Chart

目前我比较喜欢d3(Data-Driven Documents),图形种类丰富,有交互能力,你可以去d3jsorg看看,有很多种图形的demo。

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » JAVA的主要应用领域是什么?

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情