|
|||||||||||||||||||
|
|||||||||||||||||||
|
|||||||||||||||||||
基于HYSQL的互联网应用解决方案◎柯长安
|
|
互联网技术的飞速发展带动了网络交互式应用需求的迅速增长。在交互式应用日新月异的发展中,原有的面向微机的关系数据库系统已经不再适应这一系列的发展需要;而未改进的面向ODBC接口且支持SQL标准的关系数据库系统为了实现互联网交互式应用往往也很烦琐:首先要生成一个交互式对话网页,然后服务器端应用程序接收来自客户端的数据,并将其转换成数据库系统能执行的语句格式提交给数据库系统,等待数据库系统返回执行结果,应用程序获得结果后,又要把数据库格式的数据转换成网页并返回给客户端。如此烦琐的过程给用户应用,特别是一些中小型用户的应用带来了不便。HYSQL正是在解决这个不方便的迫切需要下问世的。 HYSQL(华易网络数据库)是九江华易软件有限公司独家自主开发的一个关系型网络数据库,它是一个基于SQL关系型数据库国际标准、直接面向网络交互式应用的数据库。 HYSQL直接面向互联网交互式应用,可以直接在客户端的浏览器中(而不仅仅是在客户端的用户应用程序中)获得HYSQL编程接口,这极大地降低了编程难度,减少了编程工作量。 HYSQL完全用Java开发,因此它具有跨平台、代码精少、运行安全、适合网络应用等特点。Java是基于组件技术的语言,因此,与其说HYSQL是一个数据库系统,不如说它是数据库组件。HYSQL提供Java编程接口,所有在HYSQL基础上的Java应用系统与HYSQL形成一个无缝的统一体,从而为有效地确保系统的运行安全、节约开发量、节省成本等打下了基础。 下面分别对基于数据库的典型客户机/服务器、互联网方案、带Java功能的互联网三种解决方案进行比较说明,然后着重介绍HYSQL的应用解决方案。 1. 典型的客户机/服务器方案
在这种方案中,客户端程序与服务器端用户应用程序之间是一种利用自定义端口进行直接对话的关系。服务器端用户应用程序在需要时调用一直在运行的数据库。 这种方案的优点是可以提供灵活丰富的具有个性化的、界面友好的客户端程序,典型的缺点是安装和维护不方便、费用高。 2. 典型的互联网方案
在这种方案中,Web服务器程序利用专门的端口直接与客户机端的浏览器程序进行对话,在需要时Web程序调用用户应用程序,而用户应用程序再调用一直运行的数据库程序,客户端用户进行的交互式对话通过HTML提供的功能有限的Send或Post功能来实现,这样客户端就失去了典型的客户机/服务器方案中所具有的优点。这种方案的明显优点是数据与程序都放在服务器端,方便了用户的安装、使用与维护,费用低,缺点是交互功能有限、界面单一、服务器用户应用程序运行效率低。 3. 典型的带Java功能的互联网方案
在这种方案中,服务器中的Web程序还是用专门的端口与客户端浏览器进行对话,而服务器中的用户应用程序则利用自定义的端口与从服务器端中获取的、在客户机浏览器中执行的客户端应用程序(Applet小程序)进行着直接的对话。它们在端口上互不干涉。在浏览器中,HTML与Applet则可以互相取长补短:在这种方案中,服务器端除了Web服务器程序、数据库程序一直在运行之外,服务器端用户程序也必须一直运行,以便时刻等待处理来自客户端的请求。 这种方案充分利用了客户机/服务器模式以及互联网的各自优点,是目前典型的的应用解决方案。但这仍是以用户应用程序为主动的应用方式,不符合“一直运行/一直可用”的互联网规则,不能在互联网上方便快捷地建立客户自己提供的具有个性化的网络交互式应用,并且不能方便有效地进行维护。 在上述基于数据库的互联网应用解决方案中,客户机/服务器是网络技术基础,互联网推动了网络技术的普及与应用,Java则是互联网高层应用的需要;在服务器与客户机之间是一种从传递数据到传递格式化数据(HTML)到传递运行代码(Applet)的发展过程,而客户机端则发展成统一的运行环境(即浏览器)。 4. 基于HYSQL的互联网方案
在这种方案中,服务器中的用户应用程序由带可控功能的HYSQL数据库调用,也就是说,是HYSQL(而不是用户应用程序)利用自定义的端口与浏览器中的HYSQL接口及用户客户端应用程序(Applet)进行直接对话。用户应用程序在需要时由HYSQL中的控制功能装载调用,以便实现用户定义的功能,而在不需要时则可下载它,当然也可让它的全部或部分功能模块一起保留着运行,以便提高处理速度。这种以用户应用程序为被动调用的模式,符合互联网“一直运行/一直可用”的规则,在“一直运行”的应用中可以不断修改运行模块或不断地增加功能模块。它不仅充分利用了客户机/服务器模式中客户端交互式应用丰富的优点,也充分利用了互联网中程序代码与数据都在服务器端等优点,这样不但能在互联网上方便快捷地建立客户自己提供的具有个性化的网络交互式应用,而且能方便有效地进行维护。 客户端浏览器中的Applet小程序既可以实现不需要外来数据的一些功能,如Applet动画等,也可以直接与HYSQL建立联系,以获取交互式数据。不管是服务器的class程序,还是浏览器中的Applet,都与HYSQL建立联系,因此,用户应用程序不需要进行直接针对端口的编程。 一般情况下,当要用Java编写基于数据库的互联网交互式应用时,哪怕是仅仅向数据库插入一条记录这样常见而又简单的操作,也要分别编写服务器、客户浏览器两端用户应用程序。不仅如此,有时为了提供灵活的交互式程序,还得面向端口进行编程——在浏览器端要把数据及命令写入端口,并获得返回结果;而在服务器端接收数据及命令、处理数据,并把处理结果写入端口,这使编程变得十分复杂。 HYSQL的这种允许在浏览器中直接建立数据库接口并进行直接SQL操作的功能,可以避免应用程序针对端口编程。同时,除一些复杂的数据处理需要在服务器端编写专门的服务器处理程序之外,许多情况下不需要在服务器端开发专门的服务器应用程序,从而极大地简化了开发的复杂程度,节约了开发成本。 下面列出一个示例,说明上述优点。这个示例演示了浏览器客户填写意见递交给网站的过程。为了突出重点,省去了编写意见表格等程序内容。 ① 假设在服务器端已用下列语句建立了一个意见数据库:suggest.dbf,字段有‘姓名’,‘email’及‘意见’;其数据库创建语句为:“CREATE TABLE suggest.dbf (姓名 CHAR(20),email CHAR(30),意见 CHAR(300))”; ② 下列url为‘主机名及端口号’;unitID,name,pass分别为‘单位ID号’,‘登录用户名’及其‘口令’;adapter为HYSQL编程接口; String url = “jdbc:HYDrive:www.huayisoft.com: 2000”; int unitID = 999; String name =“admin”; String pass =“111”; HYAdapter adapter=new HYAdapter(url,“”,unitID,name,pass); adapter为HYSQL的编程接口,在此接口上可执行SQL语句,如: String suggest = “柯长安,hy@huayisoft.com,华易网络数据库(HYSQL)易学易用!”; String sql = “INSERT INTO suggest.dbf VALUES (“+suggest+”)”; adapter.executeUpdate (sql); 应当注意的是在这里只有直接获得数据库应用接口,并在接口上直接执行SQL语句这样简单的操作,而不需要分别进行加载数据库驱动程序、建立联接、创建语句并执行语句等步骤。 从上例可以看出,HYSQL是一个用Java开发的、实现了SQL标准且专为互联网交互式应用提供简单易行的应用解决方案的网络数据库。 (计算机世界报 第35期 D26) |
周报全文频道联系方式:010-68130909 |
||||||
| 【关于我们】 【广告服务】 【周报发行】 【投稿指南】 【投稿声明】 【联系方式】 【法律声明】 【媒体手册】 【编读往来】 |
||||||
| Copyright© ccw.com.cn,All rights reserved | ||||||
| 中国计算机世界出版服务公司版权所有 | ||||||